一、jumpserver
1.跳板机和堡垒机
1.1 跳板机
跳板机是一种用于单点登陆的主机应用系统。跳板机通常是由一台服务器通过特定的软件实现,维护人员在维护过程中,首先要统一登录到这台服务器上,然后从这台服务器再登录到目标设备进行维护。但跳板机没有实现对运维人员操作行为的控制和审计,此外,跳板机存在严重的安全风险,一旦跳板机系统被攻入,则将后端资源风险完全暴露无遗。对于一些服务(如:telnet)可以通过跳板机来完成一定的控制访问,但是对于更多的服务(SSH、RDP等)来讲,无法满足需求。
相关服务:美国高防服务器
1.2 堡垒机
由于跳板机的不足,更多的组织需要更先进、更好的安全技术,来实现运维操作管理和安全。堡垒机开始以独立的产品形态被广泛部署,有效降低了运维操作风险,使得运维操作管理变得更简单、更安全。堡垒机能满足角色管理与授权审批、信息资源访问控制、操作记录和审计、系统变更和维护控制要求,并生成一些统计报表配合管理规范,从而不断提升IT内控的合规性。
-
jumpServer 简介
2.1 基本介绍
JumpServer 是全球首款完全开源的堡垒机, 使用 GNU GPL v2.0 开源协议, 是符合 4A 的专业运维审计系统。为互联网企业提供了认证,授权,审计,自动化运维等功能。
JumpServer 使用 Python / Django 进行开发, 遵循 Web 2.0 规范, 配备了业界领先的 Web Terminal 解决方案, 交互界面美观、用户体验好。
JumpServer 采纳分布式架构, 支持多机房跨区域部署, 中心节点提供 API, 各机房部署登录节点, 可横向扩展、无并发访问限制。
JumpServer 现已支持管理 SSH、 Telnet、 RDP、 VNC 协议资产。
官方地址: JumpServer - 开源堡垒机 - 官网
2.2 特色优势
开源: 零门槛,线上快速获取和安装
分布式: 轻松支持大规模并发访问;
无插件: 仅需浏览器,极致的 Web Terminal 使用体验
多云支持: 一套系统,同时管理不同云上面的资产
云端存储: 审计录像云端存储,永不丢失
多租户: 一套系统,多个子公司和部门同时使用
2.3 功能列表
堡垒机四个核心能力: 运维安全审计的4A规范
①身份鉴别:防止身份冒用和复用
②授权控制:防止内部误操作和权限滥用
③账号管理:人员和资产的管理
④安全审计:追溯的保障和事故分析的依据

2.4 JumpServer 组成(微观)(宏观jumpserver mysql redis三合一)
Lina
前端 UI 项目,实现web页面展示,主要使用 Vue,Element UI 完成
Core
现指 Jumpserver 管理后台,是核心组件(Core), 使用 Django Class Based View 风格开发,支持 Restful API。
Coco/Koko
实现了 SSH Server 和 Web Terminal Server 的组件,提供 SSH 和 WebSocket 接口, 使用Paramiko 和 Flask 开发。Koko 是 Go 版本的 coco,重构了 coco 的 SSH/SFTP 服务和 Web Terminal 服务。
Luna
现在是 Web Terminal 前端,计划前端页面都由该项目提供,Jumpserver 只提供 API,不再负责后台渲染html等。主要使用Angular CLI 完成
Lion
Lion 使用了 Apache 软件基金会的开源项目 Guacamole,JumpServer 使用 Golang 和 Vue 重构了 Guacamole 实现 RDP/VNC 协议跳板机功能。
二、使用 JumpServer
1.安装
官网下载脚本直接安装(推荐,但时间会长一些)
也可以使用离线安装,本次采用离线安装

将打包好解压的文件可以放进/opt中

安装并启动
./jmsctl.sh install

全部默认


启动 ./jmsctl.sh start

2.jumpserver的连接
1:命令连接 ssh -p2222 [email protected]
2:登录jumpserver GUI
输入虚拟机ip自动登录

重置密码
登陆成功

3.jumpserver的邮件设置
['smtp_password'] = 'xbhrnjkceztobicd'

可以输入来测试

4.jumpserver的用户和用户组设置

然后使用刚创建的用户进行登录
5.jumpserver创建审计员

系统审计员

创建用户

创建用户组,将shuke,beita放在测试中,yangnan放在开发中

6.jumpserver管理资产

umpServer中的三种用户
登录用户:
分配给用户用于登录JumpServer时使用
管理用户:
对后端服务器具有管理权限的系统帐号 root或administrator 及sudo ALL权限的用户,用于管理后端服务器
新版中已取消此名称,改名为系统用户中特权用户
系统用户:
给登录用户使用ssh连接后端服务器时对应的系统用户 ,一般是后端服务器的普通的系统用户帐号,新版中改名为系统用户中普通用户
7.创建资产:
添加资产中的账号列表(注意:最新版已经改版为系统账号中的特权账号或普通账号,并且已经植入资产中创建)
创建可以被jumpServer用户访问的后端服务器和其它资产,比如:路由器,交换机等
8.资产平台:
默认情况下Jump server管理的资产基于后台的操作系统,基于不同的网络连接协议,可以在资产平台进行同一化设置和管理(注意:默认平台有些协议和功能无法更改,可以自定义资产平台进行更改)
三、其他功能
1.资产的批量导出和导入
当需要管理的后端服务器很多时,每台主机手动导入效率很低,可以利用资产的导出导入功能实现批量导入,提高效率
2.资产连接
Linux资产连接、文件传输
windows资产RDP连接
数据库资产连接
3.权限控制
资产授权
用户登录
4.jumpserver审计功能
5.创建网域
实际生产环境中混合云使用很常见,但是jumpserver无法直接管理公有云服务器
可以通过JumpServer的网域功能实现混合云服务器的统一管理
网域的管理流程:
购买几台云主机,且有一台云主机必须具备公网IP, 此主机充当网关服务器
让网关服务器与所有的云主机(包括网关服务器)免密(可选)
jumpserver要与网关服务器免密(可选)
创建网域名称
创建网关,指定网关服务器的公网IP,认证指定root和jumpserver的root的私钥文件(或者网关服务器的root密码)
添加一个特权用户(阿里云root),root,网关服务器root用户私钥(或者root密码)
添加资产(所有云主机,包括网关服务器),输入云主机的IP,并选择从上面创建网域进行跳转,认证选上面创建的特权用户
授权给用户组管理上面创建的资产
测试完成,不要忘记释放云主机和公网IP资源






