JumpServer 堡垒机
一、简介
1.总体介绍
JumpServer 是全球首款开源的堡垒机,使用 GNU GPL v2.0 开源协议,是符合 4A 规范的运维安全审计系统。
JumpServer 使用 Python / Django 为主进行开发,遵循 Web 2.0 规范,配备了业界领先的 Web
Terminal 方案,交互界面美观、用户体验好。
JumpServer 采纳分布式架构,支持多机房跨区域部署,支持横向扩展,无资产数量及并发限制。
改变世界,从一点点开始。
2.特色优势
开源: 零门槛,线上快速获取和安装;
分布式: 轻松支持大规模并发访问;
无插件: 仅需浏览器,极致的 Web Terminal 使用体验;
多云支持: 一套系统,同时管理不同云上面的资产;
云端存储: 审计录像云端存储,永不丢失;
多租户: 一套系统,多个子公司和部门同时使用;
多应用支持: 数据库,Windows远程应用,Kubernetes。
3.功能列表
身份认证 | 登录认证 | 资源统一登录与认证 |
---|---|---|
Authentication | LDAP/AD认证 | |
RADIUS 认证 | ||
OpenID 认证(实现单点登录) | ||
CAS 认证 (实现单点登录) | ||
钉钉认证(扫码登录) | ||
企业微信认证 (扫码登录) | ||
MFA认证 | MFA 二次认证(Google Authenticator) | |
RADIUS 二次认证 | ||
登录复核 | 用户登录行为受管理员的监管与控制 | |
登录限制 | 用户登录来源 IP 受管理员控制(支持黑/白名单) | |
账号管理Account | 集中账号 | 管理用户管理 |
系统用户管理 | ||
统一密码 | 资产密码托管 | |
自动生成密码 | ||
自动推送密码 | ||
密码过期设置 | ||
批量改密 | 定期批量改密 | |
多种密码策略 | ||
多云纳管 | 对私有云、公有云资产自动统一纳管 | |
收集用户 | 自定义任务定期收集主机用户 | |
密码匣子 | 统一对资产主机的用户密码进行查看、更新、测试操作 | |
授权控制Authorization | 多维授权 | 对用户、用户组、资产、资产节点、应用以及系统用户进行授权 |
资产授权 | 资产以树状结构进行展示 | |
资产和节点均可灵活授权 | ||
节点内资产自动继承授权 | ||
子节点自动继承父节点授权 | ||
应用授权 | 实现更细粒度的应用级授权 | |
MySQL 数据库应用、RemoteApp 远程应用 | ||
动作授权 | 实现对授权资产的文件上传、下载以及连接动作的控制 | |
时间授权 | 实现对授权资源使用时间段的限制 | |
特权指令 | 实现对特权指令的使用(支持黑白名单) | |
命令过滤 | 实现对授权系统用户所执行的命令进行控制 | |
文件传输 | SFTP 文件上传/下载 | |
文件管理 | 实现 Web SFTP 文件管理 | |
工单管理 | 支持对用户登录请求行为进行控制 | |
访问控制 | 登录资产复核(通过 SSH/Telnet 协议登录资产) | |
命令执行复核 | ||
组织管理 | 实现多租户管理与权限隔离 | |
安全审计Audit | 操作审计 | 用户操作行为审计 |
会话审计 | ||
在线会话内容监控 | ||
在线会话内容审计 | ||
历史会话内容审计 | ||
录像审计 | 支持对 Linux、Windows 等资产操作的录像进行回放审计 | |
支持对 RemoteApp、MySQL 等应用操作的录像进行回放审计 | ||
指令审计 | 支持对资产和应用等操作的命令进行审计 | |
文件传输 | 可对文件的上传、下载记录进行审计 | |
数据库审计Database | 连接方式 | 命令方式 |
Web UI方式 | ||
支持的数据库 | MySQL | |
Oracle | ||
Mariadb | ||
PostgreSQL | ||
功能亮点 | 语法亮点 | |
SQL格式化 | ||
支持快捷键 | ||
支持选中执行 | ||
SQL历史查询 | ||
支持页面创建 DB, TABLE | ||
会话审计 | 命令记录 | |
录像回放 |
二、安装配置
说明:全新安装的Linux,需要连接互联网,使用root用户执行
外置环境要求
JumpServer 所在机器的 CPU 需要至少 2核
JumpServer 所在机器的 内存 需要至少 4G
推荐使用外置 数据库 和 Redis, 方便日后扩展升级
关闭防火墙和SELinux
推荐使用外置数据库和Redis.
DB | Version | Cache | Version |
---|---|---|---|
MySQL | >=5.7 | Redis | >=6.0 |
MariaDB | >=10.2 |
systemctl stop frewalld 关闭防火墙
setenforce 0 关闭selinux
容器镜像服务
区域 | 镜像仓库地址 | 配置文件 /opt/jumpserver/config/config.txt |
---|---|---|
华北-北京一 | swr.cn-north-1.myhuaweicloud.com | DOCKER_IMAGE_PREFIX=swr.cn-north-1.myhuaweicloud.com |
华北-北京四 | swr.cn-north-4.myhuaweicloud.com | DOCKER_IMAGE_PREFIX=swr.cn-north-4.myhuaweicloud.com |
华南-广州 | swr.cn-south-1.myhuaweicloud.com | DOCKER_IMAGE_PREFIX=swr.cn-south-1.myhuaweicloud.com |
华东-上海 | swr.cn-east-3.myhuaweicloud.com | DOCKER_IMAGE_PREFIX=swr.cn-east-3.myhuaweicloud.com |
1.自动部署
1.1官方命令执行一键部署安装
这个命令是由官方文档提供,对于网络等各方面要求比较高,还有对GitHub的访问限制等,可能无法成功,笔者多次尝试后无法成功,因此不推荐使用此命令。
curl -sSL https://github.com/jumpserver/jumpserver/releases/download/v2.10.2/quick_start.sh | bash
配置文件/opt/jumpserver/config/config.txt
安装
cd /opt/ju