JumpServer 堡垒机部署与 SSH 公钥接入服务器教程

-1

前言:在企业运维场景中,服务器的安全访问与操作管控至关重要。JumpServer 作为开源堡垒机的典型代表,凭借集中管控、权限精细分配、操作全链路审计等核心能力,成为保障运维安全合规的关键工具。
无论是中小企业简化运维权限管理,还是大型企业构建多层级安全防护体系,JumpServer 都能适配。它能让运维操作“可管、可控、可追溯”,从根源上降低误操作、违规操作带来的风险 。
本文将打破传统教程的碎片化讲解,从环境筹备到 JumpServer 部署,再到 SSH 公钥接入服务器、日常运维与审计,打造一套覆盖“部署 - 配置 - 使用 - 管控”的完整闭环,助力运维人员高效搭建安全运维体系,让服务器管理既稳又高效 。

一、JumpServer 堡垒机部署(Docker 方式,快速便捷)

(一)环境准备

  1. 系统要求:准备一台 Linux 服务器(推荐 CentOS 7+/Ubuntu 20.04+ ),确保至少 2GB 内存、2 核 CPU、20GB 磁盘,关闭防火墙或开放必要端口(如 94432222 等 )。
  2. 依赖安装
    • CentOS/RHEL:
      yum install -y docker docker-compose
      systemctl start docker && systemctl enable docker
      
    • Ubuntu/Debian:
      apt update && apt install -y docker.io docker-compose
      systemctl start docker && systemctl enable docker
      

(二)部署 JumpServer

  1. 创建部署目录

    mkdir -p /opt/jumpserver && cd /opt/jumpserver
    
  2. 编写 docker-compose.yml

    version: '3'
    services:
      jumpserver:
        image: jumpserver/jms_all:latest
        container_name: jumpserver
        restart: always
        environment:
          - SECRET_KEY=your_secret_key  # 替换为复杂随机字符串,如 openssl rand -hex 32
          - BOOTSTRAP_TOKEN=your_bootstrap_token  # 自定义令牌,用于组件通信
          - DB_HOST=mysql  # 若用外部数据库需修改,此处用内置
          - DB_PORT=3306
          - DB_USER=jumpserver
          - DB_PASSWORD=jumpserver
          - DB_NAME=jumpserver
          - REDIS_HOST=redis
          - REDIS_PORT=6379
          - REDIS_PASSWORD=
        ports:
          - 80:80
          - 443:443
          - 2222:2222  # 堡垒机 SSH 访问端口
        volumes:
          - ./jumpserver/data:/opt/jumpserver/data
          - ./jumpserver/logs:/opt/jumpserver/logs
    

    (注:生产环境建议使用外部 MySQL、Redis,替换 DB_HOSTREDIS_HOST 等参数 )

  3. 启动部署

    docker-compose up -d
    

    等待镜像拉取与容器启动,执行 docker logs -f jumpserver 查看启动日志,出现 Boot success 即部署完成。

二、JumpServer 初始配置与登录

(一)访问与初始化

  1. 浏览器输入服务器 IP(或域名 ),访问 https://your_server_ip(若未配置 HTTPS,用 http:// ),跳转 JumpServer 初始化页面。
  2. 设置管理员账号(如 admin )、密码,配置邮箱、LDAP 等(可选,后期可在系统设置调整 ),完成初始化。

(二)登录与基础界面

  1. 用管理员账号登录,进入主界面(可看到审计台、资产、权限等模块 )。

三、SSH 公钥配置准备(客户端侧)

(一)Linux 客户端生成密钥

  1. 本地 Linux 终端执行:
    ssh-keygen -t rsa -b 4096  # 推荐 4096 位加密
    
    按提示设置存储路径(默认 ~/.ssh/id_rsa )、密码(可选 ),生成 id_rsa(私钥 )和 id_rsa.pub(公钥 )。
  2. 查看公钥:
    cat ~/.ssh/id_rsa.pub
    
    复制公钥内容,后续配置到 JumpServer 。

四、JumpServer 端 SSH 公钥配置

(一)进入个人信息 - SSH 公钥设置

  1. 登录 JumpServer 后,点击右上角用户名(如 admin )→ 选择 “个人信息设置”
  2. 切换到 “SSH 公钥设置” 标签(界面如图:含原公钥、更新公钥区域 )。

在这里插入图片描述

(二)添加/更新 SSH 公钥

  1. “更新 SSH 公钥” 区域,粘贴本地生成的公钥内容(id_rsa.pub 里的字符串 )。
  2. 点击 “提交” ,完成公钥关联。

五、接入服务器配置(资产纳管与授权)

(一)添加服务器资产

  1. 进入 JumpServer “资产” 模块 → 点击 “创建资产”
  2. 填写资产信息:
    • 主机名:自定义(如 web-server-01
    • IP 地址:服务器真实 IP(如 192.168.1.100
    • 端口:22(默认 SSH 端口,若修改需对应填写 )
    • 系统类型:Linux
      保存资产,完成服务器纳管。

(二)配置资产授权(关联 SSH 公钥)

  1. 进入 “权限” 模块 → 选择 “资产授权” → 点击 “创建授权规则”
  2. 配置授权:
    • 资产:选择刚添加的服务器
    • 用户:选择当前用户(或用户组 )
    • 认证方式:选 “SSH 公钥” ,关联已配置的公钥
      保存授权,完成权限绑定。

(三)通过 JumpServer 连接服务器

  1. 进入 “会话” 模块 → 找到已授权服务器 → 点击 “连接”
  2. JumpServer 自动通过 SSH 公钥建立连接,成功后即可在会话界面执行命令(如 lstop )、传输文件,操作全程记录审计日志。

六、操作审计与日常运维

(一)审计日志追溯

  1. 进入 “审计台 - 会话审计” ,可查看所有运维会话:登录用户、操作时间、执行命令、文件传输记录等。
  2. 故障排查时,通过审计日志精准定位操作行为,确保合规性。

(二)进阶运维扩展

  • 批量操作:利用 JumpServer “命令批量执行” 功能,向多台服务器推送脚本、配置。
  • 权限细化:通过用户组、角色配置,区分开发、运维人员的服务器操作权限(如开发只读、运维可修改 )。

七、总结

从 JumpServer 部署(Docker 快速落地 ),到 SSH 公钥接入服务器、权限管控与审计,构建了完整的运维安全闭环。无论是中小企业快速落地,还是大型企业细化权限治理,这套流程都能适配。掌握后可大幅提升服务器运维的安全性与效率,让运维操作 “可管、可控、可追溯” 。

(注:生产环境建议强化安全配置,如启用 HTTPS、对接企业 LDAP、定期备份数据;文中命令需根据实际环境调整,确保部署稳定 。 )
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Linux运维技术栈

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值