总体介绍:
Jumpserver是全球首款完全开源的堡垒机,使用GNU GPL v2.0开源协议,是符合4A的专业运维审计系统;
Jumpserver使用Python/Django进行开发,遵循Web 2.0规范,配备了业界领先的Web Terminal解决方案,交互界面美观、用户体验好;
Jumpserver采纳分布式架构,支持多机房跨区域部署,中心节点提高API,个机房部署登录节点,可横向扩展、无并发访问限制;
Jumpserver现已支持管理SSH、Telnet、RDP、VNC协议资产。
特色优势:
开源:零门槛,线上快速获取和安装;
分布式:轻松支持大规模并发访问;
无插件:仅需浏览器,极致的Web Terminal 使用体验;
多云支持:一套系统,同时管理不同云上面的资产;
云端存储:审计录像云端存储,永不丢失;
多租户:一套系统,多个子公司和部门同时使用。
功能列表:
身份认证
Authentication
登录认证
资源统一登录与认证
LDAP/AD 认证
RADIUS 认证
OpenID 认证(实现单点登录)
CAS 认证 (实现单点登录)
MFA认证
MFA 二次认证(Google Authenticator)
RADIUS 二次认证
登录复核(X-PACK)
用户登录行为受管理员的监管与控制
账号管理
Account
集中账号
管理用户管理
系统用户管理
统一密码
资产密码托管
自动生成密码
自动推送密码
密码过期设置
批量改密(X-PACK)
定期批量改密
多种密码策略
多云纳管(X-PACK)
对私有云、公有云资产自动统一纳管
收集用户(X-PACK)
自定义任务定期收集主机用户
密码匣子(X-PACK)
统一对资产主机的用户密码进行查看、更新、测试操作
授权控制
Authorization
多维授权
对用户、用户组、资产、资产节点、应用以及系统用户进行授权
资产授权
资产以树状结构进行展示
资产和节点均可灵活授权
节点内资产自动继承授权
子节点自动继承父节点授权
应用授权
实现更细粒度的应用级授权
MySQL 数据库应用、RemoteApp 远程应用(X-PACK)
动作授权
实现对授权资产的文件上传、下载以及连接动作的控制
时间授权
实现对授权资源使用时间段的限制
特权指令
实现对特权指令的使用(支持黑白名单)
命令过滤
实现对授权系统用户所执行的命令进行控制
文件传输
SFTP 文件上传/下载
文件管理
实现 Web SFTP 文件管理
工单管理(X-PACK)
支持对用户登录请求行为进行控制
组织管理(X-PACK)
实现多租户管理与权限隔离
安全审计
Audit
操作审计
用户操作行为审计
会话审计
在线会话内容审计
历史会话内容审计
录像审计
支持对 Linux、Windows 等资产操作的录像进行回放审计
支持对 RemoteApp(X-PACK)、MySQL 等应用操作的录像进行回放审计
指令审计
支持对资产和应用等操作的命令进行审计
文件传输
可对文件的上传、下载记录进行审计
安装环境准备:
1、jumpserver运行环境:
硬件配置:2C4G,50GSSD(最低)
操作系统centos 7.6
Python = 3.6.x
Mysql Server ≥ 5.6
Mariadb Server ≥ 5.5.56
Redis
2、关闭防火墙与selinux
[root@jumpserver centos]# systemctl stop firewalld
[root@jumpserver centos]# systemctl disable firewalld
[root@jumpserver centos]# setenforce 0
3、准备Python3和Python虚拟环境
最新的jumpserver环境依赖于Python3
安装依赖包:
[root@jumpserver centos]# yum -y install wget sqlite-devel xz gcc automake zlib-devel openssl-devel opel-release git
# 下载python3 编译 安装
[root@jumpserver centos]# wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tar.xz
[root@jumpserver centos]# tar xf Python-3.6.1.tar.xz && cd Python-3.6.1
[root@jumpserver centos]# ./configure && make && make install
建立Python虚拟环境:
CentOS 7 自带的是python2,而yum等工具依赖原来单独python,为了不扰乱原来等环境我们来使用Python虚拟环境
[root@jumpserver ~]# cd /opt/
[root@jumpserver opt]# python3 -m venv py3
[root@jumpserver opt]# source /opt/py3/bin/activate
# 看到下面的提示符代表成功,以后运行jumpserver都要先运行以上source命令,以下所有命令均在虚拟环境中运行
(py3) [root@jumpserver opt]#
自动载入python虚拟环境配置,此项仅为懒癌晚期的人员使用,防止运行Jumpserver时忘记载入Python虚拟环境导致程序无法运行。使用autoenv
(py3) [root@jumpserver opt]# git clone git://github.com/kennethreitz/autoenv.git
(py3) [root@jumpserver opt]# echo 'source /opt/autoenv/activate.sh' >> ~/.bashrc
(py3) [root@jumpserver opt]# source ~/.bashrc
安装Jumpserver
下载或clone项目
下载:
(py3) [root@jumpserver opt]# wget -O jumpserver.tar.gz https://github.com/jumpserver/jumpserver/archive/2.0.1.tar.gz
(py3) [root@jumpserver opt]# tar xf jumpserver.tar.gz
(py3) [root@jumpserver opt]# mv jumpserver-2.0.1 jumpserver
clone项目:
(py3) [root@jumpserver opt]# git clone https://github.com/jumpserver/jumpserver.git && cd jumpserver
(py3) [root@jumpserver jumpserver]# echo "source /opt/py3/bin/activate" > /opt/jumpserver/.env #进入jumpserver目录时将自动载入python虚拟环境
安装编译环