开源跳板机 jumpserver 的安装部署和使用详细教程及踩坑经验

本贴最后更新于 2639 天前,其中的信息可能已经东海扬尘

前言

jumpserver 是一个开源的跳板机解决方案,用 pyton 开发,支持二次开发,还继承了 ansible 用于提供服务器的批量管理,而且能够提供绝大多数的跳板机功能,是一个非常不错的开源项目,也完全支持在生产环境中的使用部署。

安装篇

jumpserver 需要依赖于 mysql 数据库,python 开发工具的支持,所以需要安装一系列软件。

  1. 首先配置好 yum 源,如果能上网用默认 yum 源即可,然后安装软件包:

    yum -y install Git python-pip MySQL-devel gcc automake autoconf python-devel vim sshpass lrzsz readline-devel
    
  2. jumpserver 项目托管在 github 上,用 git 克隆 jumpserver 项目到本地:

    git clone https://github.com/jumpserver/jumpserver.git
    git checkout master    #切换到master分支,默认在dev分支
    
  3. 进入 install 目录安装 jumpserver

    cd /opt/jumpserver/install
    ./install.py
    
  4. 安装过程中会自动下载并安装一些软件包,其中包括数据库和配置 smtp 服务器用于发送邮件。如果本地已经安装了 mysql 数据库,那么就不需要再次安装数据库,只要创建相应的库和授权用户即可,数据库字符集需要为 utf8。

  5. 安装过程中会使用 pip 下载东西,如果中间报错,则可以手动指定安装源:

    pip install -r requirements.txt -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
    
  6. 中间需要配置 smtp 服务器,此处需要特别注意,我测试过 qq 邮箱,新浪邮箱,163 邮箱和搜狐邮箱用于发送邮件,发现在安装过程中发送测试邮件都能成功,但是等真正添加用户的时候则无法发送邮件,要么就是页面卡住不动,要么就是直接报错误页,只有搜狐邮箱能够正常使用。

  7. 按照提示进行所有流程的安装,安装完成之后访问 http://ip:8000 端口即可登录到 jumpserver。

使用篇

jumpserver 的使用还是很简单明了的,一下为具体步骤:

  1. 添加用户,需要填入用户名,真实名,也可以提前添加用户组,然后把用户加入到用户组中,此处需要注意:此处的用户名其实是在 jumpserver 服务器上添加了一个用户,在 jumpserver 服务器 cat /etc/passwd 即可看到该用户:

  2. 添加资产,资产可以是服务器和网络设备,需要指定设备名,ip 地址和管理用户。注意:管理用户需要使用具有添加删除用户权限的用户,可以使用 root。因为 jumpserver 会在被管理的后端主机上通过此处指定的管理用户来添加指定的用户和 sudo 权限:

  3. 配置 sudo 授权,用于添加 sudo 授权。添加 sudo 授权的作用是把 sudo 授权和指定用户做权限绑定:

  4. 添加系统用户:


注意:
系统用户和管理用户的关系比较绕,其实是这样的关系:比如公司有一个用户为小明(xiaoming),则添加管理用户 xiaoming,此时在 jumpserver 上会存在 xiaoming 这个用户。系统用户是后端被管理服务器上已经存在的用户,比如后端服务器上有 super 用户,则添加系统用户的时候就需要指定用户名为 super,并且关联 sudo,为 super 用户指定他的权限。添加完成之后需要点击推送,然后把系统用户的 sudo 权限推送到指定的后端服务器上,让指定服务器上的系统用户和 sudo 权限关联起来。

  1. 添加授权规则,用于给指定用户授权他可以访问的服务器:

  2. 此时用户可以登录当时添加系统用户时填入的邮箱,获取他的 web 登录密码和 ssh 密钥密码来登录服务器,下边分别介绍两种方法:

    1. web 界面登录:
      1. 首先登录邮箱查看自己的密码:

      2. 登录服务器,可以看到自己能够管理的服务器:

      3. 点击查看主机,连接即可登录:

    2. 密钥登录方法:
      1. 从邮箱中下载自己的密钥,输入密钥密码(密钥密码在邮件中可以看到),然后导入到 xshell 中:
      2. 此时登陆 jumpserver,输入添加的管理用户,此处为 wzh,选择密钥登录,输入密钥密码,然后就可以登录到 jumpserver 了,然后按照提示就可以登录到后端主机了:
  3. 监控和审计功能,“监控”用于实时监控当前登录人员所有正在执行的操作;“统计”用于查看所有已经执行过的命令;“阻断”用于踢出用户:

  • JumpServer
    4 引用 • 9 回帖
  • Linux

    Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 Unix 的多用户、多任务、支持多线程和多 CPU 的操作系统。它能运行主要的 Unix 工具软件、应用程序和网络协议,并支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

    944 引用 • 943 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...