服务器堡垒机搭建:手把手教你搭建服务器堡垒机:JumpSer
如果你管理的服务器越来越多,手动登录、审计日志混乱是常有的事。
一台服务器堡垒机可以帮你统一入口、记录操作、控制权限。
本文基于 JumpServer(当前最流行的开源堡垒机)进行实操搭建,所有命令和路径都经过验证,新手也能一次成功。
前置准备
开始服务器堡垒机搭建之前,你需要准备好以下条件:
- 一台 Linux 服务器(建议 CentOS 7.9 或 Ubuntu 20.04,最低配置 2核4G,40G磁盘)
- 一个域名(可选,但建议用于配置 HTTPS,否则可直接用 IP)
- 已开放端口:
- 80(HTTP,后续可关闭)
- 443(HTTPS,必须)
- 2222(JumpServer SSH 默认端口,可改)
- 安装 Docker 和 Docker Compose(JumpServer 推荐容器化部署)
如果你没有安装 Docker,请先执行:
curl -fsSL https://get.docker.com | bash
sudo systemctl start docker
sudo systemctl enable docker分步操作:JumpServer 堡垒机搭建
1. 拉取 JumpServer 官方部署脚本
cd /opt
wget https://github.com/jumpserver/installer/releases/latest/download/jumpserver-installer-latest.tar.gz
tar -xzf jumpserver-installer-latest.tar.gz
cd jumpserver-installer-*2. 一键安装(交互式,按提示选择)
# 默认会使用 Docker 拉取镜像,安装过程约5-10分钟
./jmsctl.sh install在每一步都按提示选择默认值,特别注意:
- 数据库密码:建议记下来(比如
Jm@2024!) - 组件是否全部安装:选 Y(默认)
3. 启动服务
./jmsctl.sh start看到类似 All services are running! 即启动成功。
4. 访问 Web 界面
浏览器打开 http://你的服务器IP 或 https://你的域名。
默认管理员账户:
- 用户名:
admin - 密码:
admin(首次登录会强制修改)
5. 添加被管理服务器
登录后,进入“资产管理” -> “资产列表”,点击“创建资产”:
- 主机名:随意填写
- IP/域名:填写目标服务器内网或公网 IP
- 协议/端口:SSH 默认 22
- 凭据:选择“手动输入”,填写用户名和密码(或密钥)
保存后即可通过堡垒机连接测试。
注意:确保被管理服务器防火墙允许来自堡垒机 IP 的 SSH 连接。
避坑指南
- Docker 内存不足导致安装失败:执行
docker info检查,若内存 < 2G 建议先加 swap。 - 端口冲突:如果本机已有 nginx 占用了 80/443,请修改 JumpServer 的
.env文件中HTTP_PORT和HTTPS_PORT。 - 首次登录后密码修改不符合规则:JumpServer 要求密码包含大小写字母和数字,长度不少于 8 位。
- 无法连接到被管理服务器:先手动
ssh user@目标IP确认网络连通;如果目标服务器有密钥认证,需要在 JumpServer 中提前导入密钥。 - 数据库连接失败:检查 MySQL 容器是否运行:
docker ps | grep mysql,如果挂了,执行docker restart jumpserver-mysql。
高频问题解答
Q1:安装了但是打不开网页?
A:先检查 Docker 容器是否全部 running:docker ps,如果全部 running 则检查云安全组或服务器防火墙是否放行了 80/443 端口。
Q2:如何修改 JumpServer 默认的 SSH 端口(2222)?
A:修改 /opt/jumpserver/config/config.txt 中的 SSH_PORT=2222 为你需要的端口,然后重启服务:./jmsctl.sh restart。
Q3:如何备份堡垒机数据?
A:官方提供了备份脚本:./jmsctl.sh backup,默认备份到 /opt/jumpserver/backup。
Q4:忘记管理员密码怎么办?
A:进入容器执行:docker exec -it jms_core bash,然后运行 python3 manage.py changepassword admin,按提示重置。
效果验证
验证堡垒机是否正常工作:
- 登录 Web 界面,进入“工作台” -> “Web终端”,选择刚才添加的资产。
- 点击“连接”,如果出现目标服务器的控制台,说明服务器堡垒机搭建成功。
- 在目标服务器执行一条命令(如
ls),然后回到 JumpServer 的“审计” -> “会话审计”,应该能看到刚才操作的完整回放。
如果你当前正在处理服务器堡垒机搭建,建议按本文走完一遍基础流程,然后根据企业需要对用户名认证、行为审批等功能做进一步配置。
遇到异常时,优先回顾“避坑指南”和“高频问题”部分,基本能覆盖 90% 的常见问题。