开源堡垒机 jumpserver 简单应用

一、环境

堡垒机论坛
    http://bbs.jumpserver.org/index.php?m=bbs&c=forumlist
     QQ:就行

192.168.1.61 jumpserver堡垒机服务器端
192.168.1.62 被管控机器(jumpserver客户端)
192.168.1.122 访问堡垒机的windows7

参考视频教程:
v.youku.com/v_show/id_XMTY1ODU1MjE2NA==.html

适用于版本:v0.3.0-2

1.1 使用Jumpserver前要理解清楚这三个用户关系:
用户:
    是指你在web上创建的用户,会在跳板机上创建这个用户,作用就是用于登录跳板机
管理用户:
    是指客户端上的如root等高权限账号(或普通用户拥有NOPASSWD: ALL sudo权限), 作用用于推送系统用户
系统用户:
    是指要在客户端上创建这个系统用户,通过推送来实现,作用就是登录客户端

1.2 管理用户和系统用户的关系:
两者都是客户端上的用户,后者涉及到一个推送动作,
比如推送test系统用户,也就是在客户端上创建test用户,那么创建用户需要有权限,
有没有权限创建就要看你是用客户端的root用户还是普通用户做为管理用户,
如果后者做为管理用户就需要添加sudo权限又是NOPASSWD: ALL,
这样推送系统用户,就可以成功在客户端上创建test用户

二、jumpserver-UI服务器设置

2.1 修改信息

2.2 用户管理:
2.2.1 添加用户组
用户组 :为了方便进行授权,可以将多个用户组成用户组.
在授权中使用组授权,那么该组中的用户就拥有所有授权的主机权限
2.2.2 添加用户
用户: 用户是授权和登陆的主体,管理员为每个员工创建一个用户帐号用来登录跳板机
另外用户分为普通用户和超级管理员,后者可以审计查看用户登陆记录、命令历史等
本次创建用户 test 选组 运维组 用户邮箱是必添的,发送邮件不选-确认保存
作为管理员这个信息要保存,并发邮件发给该员工

2.3 设置默认账号
默认设置:使用默认管理帐号适用于资产的管理账号、密码和密钥是统一的
添加资产如果使用默认管理账号,则会使用这里设置的信息
默认管理帐号是指客户端上拥有sudo权限的用户,如root,或者有 NOPASSWD: ALL的用户
本次选择客户机的root账号进行设置

2.4 资产管理(客户端服务器的管理)
2.4.1 添加主机组
主机组:同用户组,这里是资产组成的集合,为了方便授权
2.4.2 添加资产
资产: 资产通常是我们的服务器、网络设备、其它ssh协议硬件设备等
添加资产时需要添加一个管理用户,该管理用户是客户端上拥有sudo权限的用户,如root,或者有 NOPASSWD: ALL的用户
该管理用户用来向资产推送系统用户,如果有关联sudo别名会为系统用户添加sudo
通过管理用户来获取资产的一些硬件信息
2.4.2.1 添加方法1:用管理用户添加(各jumpserver客户端的账户和密码相同的情况下)
2.4.2.2 添加方法2:不用管理用户添加(各jumpserver客户端的账户和密码相同的情况下)
此方法可以添加 路由交换机

2.4.2.3 添加方法3 批量添加
 填写资产在模板上的对应信息并上传
IP地址:客户端IP
端口:客户端IP
主机名:主机名不能取太长,不要用特殊字符,可以用下划线.
管理帐号:使用就填默认(这里是对应前面第三步设置默认管理帐号),不使用就为空.
用户、密码:客户端上拥有sudo权限的用户密码.
主机组:对应资产的主机组

2.4.4 添加机房 略

查看机房--添加机房--填写IDC基础信息---确认

2.4.5 批量修改

2.4.5.1 给主机添加IDC

查看资产--选择主机----修改---机房

2.4.5.2 批量更新

看资产--选择主机----更新


2.5 授权管理

2.5.1 添加别名
Sudo: 这里的sudo其实是Linux中的sudo命令别名,一个sudo别名包含多个命令
系统用户关联sudo说明该系统用户可以用sudo方式执行命令,起到sudo免密码作用

2.5.1.1 添加一个叫 open 别名
注:系统命令格式,可以用which查看路径,如which ifconfig
用ALL代表系统所有命令
命令格式前面加个“!”禁止如: !/bin/su 禁止用户su到root

2.5.2 添加系统用户 ***
系统用户:
    是客户端上的用户,用于登陆客户端,过程是用户先登录跳板机在用系统用户跳转登陆客户端
简单理解就是将某个资产上的某个系统用户映射给这个用户登录

如test_01,test_02 等,可以使用JMS推送到客户端上,也可以利用自己公司的工具进行推送,或手动创建

如果添加系统用户是客户端上已有的用户,可以使用模拟推送

2.5.2.1 添加用户 huawei1 密码 huawei 关联sudo:open

2.5.2.2 添加用户 huawei2 密码 huawei 不关联sudo:open

2.5.3 推送
推送系统用户: 添加完系统用户,需要推送,推送操作是使用ansible.
推送系统用户流程图如下:
1 客户端需要有python,sudo 环境才能使用推送用户,批量命令等功能
2 客户端如果开启了selinux,请安装 libselinux-python
3 详细请看wiki:客户端:RedHat,Debian,BSD


2.5.4 添加授权规则
授权规则: 授权规则就是将用户、系统用户和资产关联起来,来完成授权。
用户可以以某个系统用户登陆客户端,用户是在跳板机上,而系统用户是在客户端上的,
系统用户可以使用JMS推送,也可以利用自己公司的工具进行推送,或者手动在客户端上创建,
但是推送的过程一定要有哪怕是模拟推送(复选框都不选择,如网络设备),
因为添加授权规则时会检查你关联的系统用户是否在该资产上推送过记录.

2.5.4.1 添加一个规则名称为dev_test_1,授权方式:

1 用户对资产
2 用户对资产组
3 用户组对资产
4 用户组对资产组

添加一个规则名称为admin 
超级管理员admin要想web terminal和web端批量命令也是要授权的

2.6 WEB终端测试

192.168.1.61:8000
用户名: test 密码 test


可以登陆到WEB----查看主机---看到主机名DEV2---连接--出现终端---测试ifconfig---测试su命令

2.7 web端批量命令 类似CRT 参考文献

2.8 上传下载 
主机和文件可以多对多批量上传
文件和主机只能一对多批量下载,下载的文件会分别放在以主机名创建对应的文件夹里

2.9 命令行高级用法 参考文献

参考文献: 
    应用图解 https://github.com/jumpserver/jumpserver/wiki/%E5%BA%94%E7%94%A8%E5%9B%BE%E8%A7%A3
    名词解释 https://github.com/jumpserver/jumpserver/wiki/%E5%90%8D%E8%AF%8D%E8%A7%A3%E9%87%8A
    更新 https://github.com/jumpserver/jumpserver/wiki/%E5%A6%82%E4%BD%95%E6%9B%B4%E6%96%B0

 

posted on 2023-11-16 09:56  luokeli  阅读(180)  评论(0)    收藏  举报

导航