Loading... ## 1. JumpServer介绍 ### 1.1 简介 **官网网址** [https://www.jumpserver.org/](https://www.jumpserver.org/) **官方文档** [https://docs.jumpserver.org/zh/master/](https://docs.jumpserver.org/zh/master/) **GitHub** [https://github.com/jumpserver/jumpserver](https://github.com/jumpserver/jumpserver) > JumpServer 是全球首款开源的堡垒机,使用 GNU GPL v2.0 开源协议,是符合 4A 规范的运维安全审计系统。 > JumpServer 使用 Python / Django 为主进行开发,遵循 Web 2.0 规范,配备了业界领先的 Web Terminal 方案,交互界面美观、用户体验好。 > JumpServer 采纳分布式架构,支持多机房跨区域部署,支持横向扩展,无资产数量及并发限制** ### 1.2 特色优势 ``` 开源 : 零门槛,线上快速获取和安装; 分布式 : 轻松支持大规模并发访问; 无插件 : 仅需浏览器,极致的 Web Terminal 使用体验; 多云支持 : 一套系统,同时管理不同云上面的资产; 云端存储 : 审计录像云端存储,永不丢失; 多租户 : 一套系统,多个子公司和部门同时使用; 多应用支持 : 数据库,Windows远程应用,Kubernetes。 ``` ### 1.3 功能 **参考官网介绍** [https://www.jumpserver.org/features.html](https://www.jumpserver.org/features.html) ### 1.4 架构图 ![](https://cdn.jsdelivr.net/gh/klausyao/imageshosting@master/devops/jumpserver/01.gif) > 首先前端是nginx提供的动态页面,可以通过浏览器来进行访问; > 接着jumpserver为管理后台,管理员可以通过web页面进行资产管理、用户管理、资产授权等操作,用户可以通过web页面进行资产登录、文件管理等操作; > coco 为ssh server和 web terminal server,用户可以使用自己的账户通过ssh或者web terminal访问ssh协议和telnet协议资产; > Luna 为web terminal server前端页面,用户使用web terminal方式登录所需要的组件; > Guacamole 为RDP协议和vnc协议资产组件,用户可以通过web terminal来连接RDP协议和vnc协议资产(暂时只能通过web terminal来访问); ### 1.5 端口说明 > 端口涉及如下端口: > > ```bash > #1 Jumpserver > 默认端口为 8080/tcp ,浏览器访问的端口 > #2 Coco > 默认 SSH 端口为 2222/tcp,Web Terminal默认 端口为 5000/tcp ,通过ssh连接的时候使用的端口 > #3 Guacamole > 默认端口为 8081/tcp > #4 Nginx > 默认端口为 80/tcp > #5 Redis > 默认端口为 6379/tcp > #6 Mysql/Mariadb > 默认端口为 3306/tcp > ``` ### 1.6 产品组件 > #1 <span style='color:green'>Jumpserver</span> > 管理后台,是核心组件(Core), 使用 Django Class Based View 风格开发,支持 Restful API。 > #2 <span style='color:green'>Coco</span> > Coco为 SSH Server 和 Web Terminal Server。用户可以通过使用自己的账户登录 SSH 或者 Web Terminal直接访问被授权的资产。不需要知道服务器的账户和密码,现在 Coco 已经被 koko 取代。 > #3 <span style='color:green'>Luna</span> > luna 为 Web Terminal Server 前端页面,用户使用 Web Terminal 方式登录时所需要的插件。 > #4 <span style='color:green'>Guacamole</span> > Guacamole是一个开源项目,为远程桌面提供解决方案。Jumpserver 使用其组件实现 RDP和VNC 功能,Jumpserver 并没有修改其代码而是添加了额外的插件,支持 Jumpserver 调用。 ## 2. JumpSever安装 ### 2.1 准备 > **完整文档:**[https://docs.jumpserver.org](https://docs.jumpserver.org) > **演示视频**: [https://www.bilibili.com/video/BV1ZV41127GB](https://www.bilibili.com/video/BV1ZV41127GB) > 环境准备,可以在云服务器或VM等虚拟机中搭建; > 这里以已经联网的Centos 7.8的VM为例,参考安装文档步骤,当前版本是v2.17.0。 ```bash # 根据官网的建议,安装前的准备 系统更新到最新 yum clean all && yum update -y 连接互联网 配置华为云的镜像仓库 root执行 ``` ### 2.2 一键部署 ```bash ------------------------------------------------------------------------------ # 如下是官方的一键安装原文,但是安装过程中下载镜像的原站点速度非常慢; ------------------------------------------------------------------------------ # 默认会安装到 /opt/jumpserver-installer-v2.17.0 目录 curl -sSL https://github.com/jumpserver/jumpserver/releases/download/v2.17.0/quick_start.sh | bash cd /opt/jumpserver-installer-v2.17.0 # 安装完成后配置文件 /opt/jumpserver/config/config.txt ------------------------------------------------------------------------------ ``` ```bash # 一键部署过程,下载失败的报错,连接服务器失败 download install script to /opt/jumpserver-installer-v2.17.0 (开始下载安装脚本到 /opt/jumpserver-installer-v2.17.0) [ ERROR ] Failed to download jumpserver-installer-v2.17.0 (下载 jumpserver-installer-v2.17.0 失败, 请检查网络是否正常或尝试重新执行脚本) # 解决,在hosts和resolve.conf中添加如下解析 # 这是脚本默认使用的镜像地址,设置后依旧很慢,建议手动部署,修改为官方建议的华为云镜像仓库 echo " 199.232.4.133 raw.githubusercontent.com " >> /etc/hosts ``` ### 2.3 手动部署 > **可以参考官网** ```bash # 下载解压 cd /opt wget https://github.com/jumpserver/installer/releases/download/v2.17.0/jumpserver-installer-v2.17.0.tar.gz tar -xf jumpserver-installer-v2.17.0.tar.gz cd jumpserver-installer-v2.17.0 # 使用华为云镜像 vi config-example.txt ## 安装配置, 可以使用华为云加速下载, arm64 用户需要注释掉 DOCKER_IMAGE_PREFIX DOCKER_IMAGE_PREFIX=swr.cn-south-1.myhuaweicloud.com # 安装 ./jmsctl.sh install # 安装过程会询问是否修改镜像的根目录、使用IPV6等问题,一路回车默认即可; ``` ### 2.4 安装完成信息 ```bash >>> The Installation is Complete 1. You can use the following command to start, and then visit cd /opt/jumpserver-installer-v2.17.0 ./jmsctl.sh start 2. Other management commands ./jmsctl.sh stop ./jmsctl.sh restart ./jmsctl.sh backup ./jmsctl.sh upgrade For more commands, you can enter ./jmsctl.sh --help to understand 3. Web access http://192.168.2.200:80 Default username: admin Default password: admin 4. SSH/SFTP access ssh -p2222 admin@192.168.2.200 sftp -P2222 admin@192.168.2.200 5. More information Official Website: https://www.jumpserver.org/ Documentation: https://docs.jumpserver.org/ ``` ### 2.5 启动查看状态 ```bash # 启动 cd /opt/jumpserver-installer-v2.17.0 ./jmsctl.sh start # 查看容器 docker ps # 启动后的容器和状态 ./jmsctl.sh status ``` ![](https://cdn.jsdelivr.net/gh/klausyao/imageshosting@master/devops/jumpserver/02.gif) ### 2.6 Web访问更改密码 [http://192.168.2.200:80](http://192.168.2.200:80) ## 3. 系统设置 ### 3.1 邮箱设置 **邮件授权码说明** [https://blog.csdn.net/qq_32057095/article/details/109547584](https://blog.csdn.net/qq_32057095/article/details/109547584) ![](https://cdn.jsdelivr.net/gh/klausyao/imageshosting@master/devops/jumpserver/03.gif) ![](https://cdn.jsdelivr.net/gh/klausyao/imageshosting@master/devops/jumpserver/04.gif) ![](https://cdn.jsdelivr.net/gh/klausyao/imageshosting@master/devops/jumpserver/05.gif) ### 3.2 用户 > **JumpServer涉及到的三个用户:** > >> 登录用户,用于创建给开发人员进行登录JumpServer的用户; >> 管理用户,指定用户名和密码,就是添加的资源机器的登录账号; >> 系统用户,jumpserver跳转登录资产时使用的用户; >> > 在用户管理--->用户列表--->创建;填写好用户相关信息后,点击最下面的提交; > 当前已经有默认的Admin管理用户 ![](https://cdn.jsdelivr.net/gh/klausyao/imageshosting@master/devops/jumpserver/06.gif) > 提示:新建用户成功以后,对应的用户邮箱就会收到一份有jumpserver发送到用户创建成功的邮件,用户可以点击此邮件中的链接进行密码设定; ![](https://cdn.jsdelivr.net/gh/klausyao/imageshosting@master/devops/jumpserver/07.gif) ## 4. 资产管理 ### 4.1 Windows Server OS配置 ![](https://cdn.jsdelivr.net/gh/klausyao/imageshosting@master/devops/jumpserver/08.gif) ![](https://cdn.jsdelivr.net/gh/klausyao/imageshosting@master/devops/jumpserver/09.gif) ![](https://cdn.jsdelivr.net/gh/klausyao/imageshosting@master/devops/jumpserver/10.gif) ![](https://cdn.jsdelivr.net/gh/klausyao/imageshosting@master/devops/jumpserver/11.gif) ![](https://cdn.jsdelivr.net/gh/klausyao/imageshosting@master/devops/jumpserver/12.gif) ### 4.2 资产的OS用户 ![](https://cdn.jsdelivr.net/gh/klausyao/imageshosting@master/devops/jumpserver/13.gif) ## 5. 授权规则 ![](https://cdn.jsdelivr.net/gh/klausyao/imageshosting@master/devops/jumpserver/14.gif) ## 6. 用户登录 ![](https://cdn.jsdelivr.net/gh/klausyao/imageshosting@master/devops/jumpserver/15.gif) ## 7. 会话管理 ![](https://cdn.jsdelivr.net/gh/klausyao/imageshosting@master/devops/jumpserver/16.gif) ## 8. 操作回放 > 可以在线查看操作记录。 > 也可以下载到本地,到官网提供的软件播放。 [https://docs.jumpserver.org/zh/master/about/download/](https://docs.jumpserver.org/zh/master/about/download/) ![](https://cdn.jsdelivr.net/gh/klausyao/imageshosting@master/devops/jumpserver/17.gif) 最后修改:2022 年 04 月 18 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 0 如果觉得我的文章对你有用,请随意赞赏