jumpserver 3.0 开源跳板机应用

学会利用官方文档
https://github.com/jumpserver/jumpserver/wiki
#####适用于版本:v0.3.0-2
I. 使用Jumpserver前要理解清楚这三个用户关系:
用户:是指你在web上创建的用户,会在跳板机上创建这个用户,作用就是用于登录跳板机
管理用户:是指客户端上的如root等高权限账号(或普通用户拥有NOPASSWD: ALL sudo权限), 作用用于推送系统用户
系统用户:是指要在客户端上创建这个系统用户,通过推送来实现,作用就是登录客户端
II. 管理用户和系统用户的关系:
两者都是客户端上的用户,后者涉及到一个推送动作,
比如推送test系统用户,也就是在客户端上创建test用户,那么创建用户需要有权限,
有没有权限创建就要看你是用客户端的root用户还是普通用户做为管理用户,
如果后者做为管理用户就需要添加sudo权限又是NOPASSWD: ALL,
这样推送系统用户,就可以成功在客户端上创建test用户
#####一、修改信息
webterminal
#####二、用户管理
2.1 添加用户组
用户组 :为了方便进行授权,可以将多个用户组成用户组.
在授权中使用组授权,那么该组中的用户就拥有所有授权的主机权限.
webterminal
2.1.1. 添加一个网站组
webterminal
2.1.2 添加一个网络组
webterminal
2.1.3 查看组
webterminal
2.2. 添加用户
用户: 用户是授权和登陆的主体,管理员为每个员工创建一个用户帐号用来登录跳板机.
另外用户分为普通用户和超级管理员,后者可以审计查看用户登陆记录、命令历史等.
webterminal
2.2.1 创建第一个普通用户为dev,选网站组
webterminal
2.2.2 这里不选发送邮件,但用户邮箱是必填的
webterminal
2.2.3 确认保存
webterminal
2.2.4 创建第二个普通用户为dba,选网络组
webterminal
2.2.5 这里选发送邮件
webterminal
2.2.6 确认保存
webterminal
2.2.7 查看用户
webterminal
#####三、设置默认管理帐号
默认设置:使用默认管理帐号适用于资产的管理账号、密码和密钥是统一的.
添加资产如果使用默认管理账号,则会使用这里设置的信息.
默认管理帐号是指客户端上拥有sudo权限的用户,如root,或者有 NOPASSWD: ALL的用户.
webterminal
#####四、资产管理
4.1. 添加主机组
主机组:同用户组,这里是资产组成的集合,为了方便授权.
webterminal
4.1.1 添加一个网站组
webterminal
4.1.2 添加一个网络组
webterminal
4.1.3 查看资产组
webterminal
4.2. 添加资产
资产: 资产通常是我们的服务器、网络设备、其它ssh协议硬件设备等.
添加资产时需要添加一个管理用户,该管理用户是客户端上拥有sudo权限的用户,
如root,或者有 NOPASSWD: ALL的用户.
该管理用户用来向资产推送系统用户,如果有关联sudo别名会为系统用户添加sudo.
通过管理用户来获取资产的一些硬件信息.
webterminal
4.2.1 单台添加,使用默认管理帐号,选网站组
如果默认管理帐号没设置,可选框会是禁选的,这里第三步已设.
webterminal
4.2.2 单台添加,不使用默认管理帐号,选网站组
webterminal
4.2.3 单台添加,选网络组
这里的管理帐号对于网络设备没有什么意义,
因为是模拟推送并不是真的将系统用户推送到资产上,也就是需手动配置ssh登陆管理用户.
不能通过该帐号获取一些硬件设备信息.
webterminal
4.3.批量添加
4.3.1 先下载模板
webterminal
4.3.2 填写资产在模板上的对应信息
IP地址:客户端IP
端口:客户端IP
主机名:主机名不能取太长,不要用特殊字符,可以用下划线.
管理帐号:使用就填默认(这里是对应前面第三步设置默认管理帐号),不使用就为空.
用户、密码:客户端上拥有sudo权限的用户密码.
主机组:对应资产的主机组
webterminal
4.3.3 上传asset.xlsx文件
webterminal
4.3.4 查看资产
注:asset.xlsx文件中FreeBSD 是数据库组,前面资产主机组并没有添加这个组,上传后这里为空,
也就是说JMS不会自动帮你创建组,需要手动添加该主机组.
webterminal
4.4. 添加机房
webterminal
4.4.1 添加IDC
webterminal
4.4.2 查看机房
webterminal
4.5. 批量修改
4.5.1 给主机添加一个IDC
注:这里批量修改功能只能加不能减,如主机属于网站组,这里修改不能把主机从网站组中移除
webterminal
4.5.2 批量更新
注:这里无法获取网络设备硬件信息,所以没选.
webterminal
4.5.3 查看资产
webterminal
#####五、授权管理
5.1 添加别名
Sudo: 这里的sudo其实是Linux中的sudo命令别名,一个sudo别名包含多个命令,
系统用户关联sudo说明该系统用户可以用sudo方式执行命令,起到sudo免密码作用.
webterminal
5.1.2 添加一个叫open别名
注:系统命令格式,可以用which查看路径,如which ifconfig
用ALL代表系统所有命令
命令格式前面加个“!”禁止如: !/bin/su 禁止用户su到root
webterminal
5.1.3 查看别名
webterminal
5.2 添加系统用户
系统用户:是客户端上的用户,用于登陆客户端,过程是用户先登录跳板机在用系统用户跳转登陆客户端.
简单理解就是将某个资产上的某个系统用户映射给这个用户登录.
如test_01,test_02 等,可以使用JMS推送到客户端上,也可以利用自己公司的工具进行推送,或手动创建.
如果添加系统用户是客户端上已有的用户,可以使用模拟推送.
webterminal
5.2.1 添加用户test_1,关联sudo:open
webterminal
5.2.2 添加用户test_2,不关联sudo:open
webterminal
5.2.3 添加用户:admin,密码:123456,不关联sudo:open
这里的用户密码要和网络设备上配置的ssh登陆管理用户和密码对应上.
网络设备不受sudo别名控制,所不关联.
webterminal
5.2.4 查看系统用户 webterminal
5.3. 推送
推送系统用户: 添加完系统用户,需要推送,推送操作是使用ansible.
推送系统用户流程图如下:
webterminal
注:JMS的客户端环境是有基本要求的.
客户端需要有python,sudo 环境才能使用推送用户,批量命令等功能
客户端如果开启了selinux,请安装 libselinux-python
详细请看wiki:客户端:RedHat,Debian,BSD
webterminal
5.3.1 推送系统用户test_1,资产单个添加,使用密钥
webterminal
5.3.2 推送成功
webterminal
5.3.3 推送系统用户test_2,资产组添加,使用密码
注:v0.3.1-2 更改 去掉使用密码
webterminal
5.3.4 推送成功
webterminal
5.3.5 推送系统用户admin,网络设备主要是模拟推送一下,所以复选框不选择
webterminal
5.3.4 推送成功
webterminal
5.4. 添加授权规则
授权规则: 授权规则就是将用户、系统用户和资产关联起来,来完成授权。
用户可以以某个系统用户登陆客户端,用户是在跳板机上,而系统用户是在客户端上的,
系统用户可以使用JMS推送,也可以利用自己公司的工具进行推送,或者手动在客户端上创建,
但是推送的过程一定要有哪怕是模拟推送(复选框都不选择,如网络设备),
因为添加授权规则时会检查你关联的系统用户是否在该资产上推送过记录.
webterminal
5.4.1 添加一个规则名称为dev_test_1,授权方式:用户对资产组
webterminal
5.4.2 添加一个规则名称为dev_test_2,授权方式:用户对资产
webterminal
5.4.3 添加一个规则名称为dba_admin,授权方式:用户组对资产
webterminal
5.4.3 添加一个规则名称为admin
超级管理员admin要想web terminal和web端批量命令也是要授权的
webterminal
5.4.4 查看规则
webterminal
#####六、web terminal
6.1. web登录当前用户是超级管理员admin
6.1.1 用test_1用户登录并测试sudo成功
webterminal
6.1.2 用test_2用户登录并测试sudo失败,因为添加系统用户时没有关联sudo别名.
webterminal
6.2. web登录当前用户是普通用户dev
6.2.1 用test_1用户登录并测试sudo成功
webterminal
6.2.2 用test_2用户登录并测试sudo失败,因为添加系统用户时没有关联sudo别名
webterminal
6.3. 登录网络设备
6.3.1 登录Huawei 交换机
webterminal
6.3.2 登录Cisco路由器
webterminal
#####七、 web端批量命令
7.1.web登录当前用户是普通用户 dev
7.1.1 用test_1 进行批量执行 who a mi
webterminal
7.1.2 用test_2 , 用*号匹配,进行批量执行 whoami
webterminal
#####八、 上传下载
8.1.文件上传
8.1.1 主机和文件可以多对多批量上传
webterminal
8.1.2 全部上传成功
webterminal
8.2.文件下载
8.2.1 文件和主机只能一对多批量下载,下载的文件会分别放在以主机名创建对应的文件夹里
webterminal
#####九、 下载KEY登录jumpserver:192.168.20.137
9.1.dev用户跳转登录
9.1.1 :
1) 输入 ID 直接登录.
2) 输入 / + IP, 主机名 or 备注 搜索.
3) 输入 P/p 显示您有权限的主机.
webterminal
9.1.2 :
4) 输入 G/g 显示您有权限的主机组.
5) 输入 G/g + 组ID 显示该组下主机.
6) 输入 E/e 批量执行命令.
.
这里分别用:test_1、test_2用户 登录,用主机名和*号匹配主机,进行 批量执行命令
webterminal
9.1.3 :
7) 输入 U/u 批量上传文件.
8) 输入 D/d 批量下载文件.
webterminal
9.2. dba用户跳转登录网络设备
9.2.1 :
1) 输入 ID 直接登录.
webterminal

未经允许不得转载: » jumpserver 3.0 开源跳板机应用
微信公众号:这是个测试
关注我们,每天分享更多有趣的事儿,有趣有料!
12000人已关注
分享到:
赞(2) 打赏

评论抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏