
JumpServer 是广受欢迎的开源堡垒机,是符合 4A 规范的专业运维安全审计系统。JumpServer 帮助企业以更安全的方式管控和登录所有类型的资产,包括:
项目地址:https://github.com/jumpserver/jumpserver
功能列表:https://www.jumpserver.org/features.html
产品介绍 PPT:https://www.jumpserver.org/documents/introduce-jumpserver_202304.pdf

系统版本:Rocky Linux 8 (关闭 SE Linux 和防火墙)
容器环境:Docker 24.0.6 Docker-Compose v2.21.0
软件版本:JumpServer 3.8.0

4Core/8GB RAM/300G HDD
主机系统建议 Debian 系列或 RHEL 系列
建议不对公网直接开放,通过 SSL VPN 连接到内网访问。
生产建议选择最后一位版本较多的最新版本,如选择 3.7.2 ,而不是 3.8.0 。
yum install -y yum-utils device-mapper-persistent-data lvm2 # 安装依赖包 yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo # 添加源 sed -i 's+https://download.docker.com+https://mirrors.tuna.tsinghua.edu.cn/docker-ce+' /etc/yum.repos.d/docker-ce.repo # 替换 Docker 安装源为清华大学镜像站。 yum makecache fast yum install docker-ce docker-compose-plugin # 安装 Docker 和 Compose systemctl enable --now docker # 配置开机启动并启动 Docker yum install -y curl wget tar gettext tree # 安装所需依赖包 curl -sL https://api.github.com/repos/jumpserver/jumpserver/releases/latest | grep '"tag_name":' | cut -d'"' -f4 | tr -d 'v' # 获取最新版本号。 cd /opt # 切换到 opt 目录 VERSION=v3.8.0 # 指定下载版本 DOWNLOAD_URL=https://resource.fit2cloud.com #DOWNLOAD_URL=https://github.com # 指定下载地址,中国大陆地区可以使用 fit2cloud.com ,海外使用 github.com 。 #(github 才能下载 v2 版本) wget -qO jumpserver-installer-${VERSION}.tar.gz ${DOWNLOAD_URL}/jumpserver/installer/releases/download/${VERSION}/jumpserver-installer-${VERSION}.tar.gz # 下载指定版本的安装包 tar -vxf /opt/jumpserver-installer-${VERSION}.tar.gz -C /opt # 解压 tree -L 2 /opt # 查看当前文件目录结构 /opt ├── jumpserver-installer-v3.8.0 │ ├── cn-quick_start.sh │ ├── compose │ ├── config-example.txt │ ├── config_init │ ├── jmsctl.sh │ ├── LICENSE │ ├── locale │ ├── quick_start.sh │ ├── README.md │ ├── scripts │ ├── static.env │ └── utils └── jumpserver-installer-v3.8.0.tar.gz vim /opt/jumpserver-installer-v3.8.0/config-example.txt # 打开安装配置文件,一般默认即可。 # JumpServer configuration file example. # # 如果不了解用途可以跳过修改此配置文件, 系统会自动填入 # 完整参数文档 https://docs.jumpserver.org/zh/v3/guide/env/ ################################## 镜像配置 ################################### # # 国内连接 docker.io 会超时或下载速度较慢, 开启此选项使用华为云镜像加速 # 取代旧版本 DOCKER_IMAGE_PREFIX # # DOCKER_IMAGE_MIRROR=1 # 镜像拉取规则 Always, IfNotPresent # Always 表示每次都会拉取最新镜像, IfNotPresent 表示本地不存在镜像时才会拉取 # # IMAGE_PULL_POLICY=Always ################################## 安装配置 ################################### # # JumpServer 数据库持久化目录, 默认情况下录像、任务日志都在此目录 # 请根据实际情况修改, 升级时备份的数据库文件(.sql)和配置文件也会保存到该目录 # VOLUME_DIR=/data/jumpserver # 加密密钥, 迁移请保证 SECRET_KEY 与旧环境一致, 请勿使用特殊字符串 # (*) Warning: Keep this value secret. # (*) 勿向任何人泄露 SECRET_KEY # SECRET_KEY= # 组件向 core 注册使用的 token, 迁移请保持 BOOTSTRAP_TOKEN 与旧环境一致, # 请勿使用特殊字符串 # (*) Warning: Keep this value secret. # (*) 勿向任何人泄露 BOOTSTRAP_TOKEN # BOOTSTRAP_TOKEN= # 日志等级 INFO, WARN, ERROR # LOG_LEVEL=ERROR # JumpServer 容器使用的网段, 请勿与现有的网络冲突, 根据实际情况自行修改 # DOCKER_SUBNET=192.168.250.0/24 # ipv6 nat, 正常情况下无需开启 # 如果宿主不支持 ipv6 开启此选项将会导致无法获取真实的客户端 ip 地址 # USE_IPV6=0 DOCKER_SUBNET_IPV6=fc00:1010:1111:200::/64 ################################# MySQL 配置 ################################## # 外置 MySQL 需要输入正确的 MySQL 信息, 内置 MySQL 系统会自动处理 # DB_HOST=mysql DB_PORT=3306 DB_USER=root DB_PASSWORD= DB_NAM=jumpserver # 如果外置 MySQL 需要开启 TLS/SSL 连接, 参考 https://docs.jumpserver.org/zh/v3/installation/security_setup/mysql_ssl/ # # DB_USE_SSL=true ################################# Redis 配置 ################################## # 外置 Redis 需要请输入正确的 Redis 信息, 内置 Redis 系统会自动处理 # REDIS_HOST=redis REDIS_PORT=6379 REDIS_PASSWORD= # 如果使用外置 Redis Sentinel, 请手动填写下面内容 # # REDIS_SENTINEL_HOSTS=mymaster/192.168.100.1:26379,192.168.100.1:26380,192.168.100.1:26381 # REDIS_SENTINEL_PASSWORD=your_sentinel_password # REDIS_PASSWORD=your_redis_password # REDIS_SENTINEL_SOCKET_TIMEOUT=5 # 如果外置 Redis 需要开启 TLS/SSL 连接, 参考 https://docs.jumpserver.org/zh/v3/installation/security_setup/redis_ssl/ # # REDIS_USE_SSL=true ################################## 访问配置 ################################### # 对外提供服务端口, 如果与现有服务冲突请自行修改 # HTTP_PORT=80 SSH_PORT=2222 MAGNUS_MYSQL_PORT=33061 MAGNUS_MARIADB_PORT=33062 MAGNUS_REDIS_PORT=63790 MAGNUS_POSTGRESQL_PORT=54320 MAGNUS_ORACLE_PORTS=30000-30030 ################################# HTTPS 配置 ################################# # 参考 https://docs.jumpserver.org/zh/v3/installation/proxy/ 配置 # # HTTPS_PORT=443 # SERVER_NAME=your_domain_name # SSL_CERTIFICATE=your_cert # SSL_CERTIFICATE_KEY=your_cert_key # # Nginx 文件上传下载大小限制 # CLIENT_MAX_BODY_SIZE=4096m ################################## 组件配置 ################################### # 组件注册使用, 默认情况下向 core 容器注册, 集群环境需要修改为集群 vip 地址 # CORE_HOST=http://core:8080 PERIOD_TASK_ENABLED=true # Core Session 定义, # SESSION_COOKIE_AGE 表示闲置多少秒后 session 过期, # SESSION_EXPIRE_AT_BROWSER_CLOSE=true 表示关闭浏览器即 session 过期 # # SESSION_COOKIE_AGE=86400 SESSION_EXPIRE_AT_BROWSER_CLOSE=true # 可信任 DOMAINS 定义, # 定义可信任的访问 IP, 请根据实际情况修改, 如果是公网 IP 请改成对应的公网 IP, # DOMAINS="demo.jumpserver.org:443" # DOMAINS="172.17.200.191:80" # DOMAINS="demo.jumpserver.org:443,172.17.200.191:80" DOMAINS= # 配置不需要启动的组件, 默认所有组件都会开启, 如果不需要某个组件可以通过设置 {组件名称}_ENABLED 为 0 关闭 # CORE_ENABLED=0 # CELERY_ENABLED=0 # KOKO_ENABLED=0 # LION_ENABLED=0 # MAGNUS_ENABLED=0 # CHEN_ENABLED=0 # KAEL_ENABLED=0 # Lion 开启字体平滑, 优化体验 # JUMPSERVER_ENABLE_FONT_SMOOTHING=true ################################# XPack 配置 ################################# # XPack 包, 开源版本设置无效 # RDP_PORT=3389 XRDP_PORT=3390 ################################## 其他配置 ################################## # 终端使用宿主 HOSTNAME 标识, 首次安装自动生成 # SERVER_HOSTNAME=${HOSTNAME} # 使用内置 SLB, 如果 Web 页面获取到的客户端 IP 地址不正确, 请将 USE_LB 设置为 0 # USE_LB 设置为 1 时, 使用配置 proxy_set_header X-Forwarded-For $remote_addr # USE_LB 设置为 0 时, 使用配置 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for USE_LB=1 # 当前运行的 JumpServer 版本号, 安装和升级完成后自动生成 # CURRENT_VERSION= cd /opt/jumpserver-installer-v3.8.0/ # 进入安装目录 ./jmsctl.sh install # 执行安装,一直默认选项即可。(安装期间会加载 Docker 镜像,会比较慢) # 默认安装会使用 Docker 部署的内置 Mariadb 数据库和 Redis 数据库. # 默认安装情况下会把数据和配置文件目录存放在 /data/jumpserver ./jmsctl.sh start # 安装后执行启动,默认为开机启动,但安装或升级后,需要手动启动。 # 启动 ./jmsctl.sh start # 停止 ./jmsctl.sh down # 卸载 ./jmsctl.sh uninstall # 重启 ./jmsctl.sh restart # 帮助 ./jmsctl.sh -h | 端口 | 作用 | 说明 |
|---|---|---|
| 22 | SSH | 安装、升级及管理使用 |
| 80 | Web HTTP 服务 | 通过 HTTP 协议访问 JumpServer 前端页面 |
| 443 | Web HTTPS 服务 | 通过 HTTPS 协议访问 JumpServer 前端页面 |
| 3306 | 数据库服务 | MySQL 服务使用 |
| 6379 | 数据库服务 | Redis 服务使用 |
| 3389 | Razor 服务端口 | RDP Client 方式连接 Windows 资产 |
| 2222 | SSH Client | SSH Client 方式使用终端工具连接 JumpServer ,比如 Xshell 、PuTTY 、MobaXterm 等终端工具 |
| 33061 | Magnus MySQL 服务端口 | DB Client 方式连接 MySQL 数据库资产 |
| 33062 | Magnus MariaDB 服务端口 | DB Client 方式连接 MariaDB 数据库资产 |
| 54320 | Magnus PostgreSQL 服务端口 | DB Client 方式连接 PostgreSQL 数据库资产 |
| 63790 | Magnus Redis 服务端口 | DB Client 方式连接 Redis 数据库资产 |
| 30000-30100 | Magnus Oracle 服务端口 | DB Client 方式连接 Oracle 数据库资产,该端口范围可自定义 |
安装后可访问 http://ip:80 访问,也可以通过 SSH:2222 默认安装端口通过 SSH 访问资产。
用户名: admin 密码: admin
官方视频教程:https://jumpserver.org/video.html
1 julyclyde 2023 年 10 月 24 日 为什么又做了一次重复的广告? 这东西,本站的朋友们都已经听说过无数次了吧 |
4 token10086 2023 年 10 月 25 日 对堡垒机概念有点迷糊,想咨询下程序内配置的账号能用堡垒机代理出来的吗,类似于堡垒机实现了协议当成中间件来用。 |
5 bigmomo OP @token10086 支持其远程协议就行 |
6 cheng6563 2023 年 10 月 27 日 友情提醒各位,JumpServer 并非完全开源 |
7 KInG2 2023 年 10 月 27 日 @cheng6563 #6 但是公司就是相信这种有背书的部分开源,CN 很矛盾的,软件不相信开源,服务器相信开源 Linux ,服务器系统开源=自主研发,软件开源=不安全。 |
8 flyqie 2023 年 10 月 28 日 via Android |