设为首页 收藏本站
查看: 2351|回复: 0

[经验分享] Red Hat6.x下堡垒机Jumpserver Version 0.3.2 配置

[复制链接]

尚未签到

发表于 2017-10-23 16:59:07 | 显示全部楼层 |阅读模式

  • jumpserver的启动
    [iyunv@jump jumpserver-master]# sh service.sh status
    jumpserver is running...                                   [  OK  ]
  • 按照Jumpserver部署过程结尾的账号信息(admin/admin)登陆Jumpserver的web界面
  • 修改admin超级管理员的密码
    907596-20170924195759150-2073051726.jpg
    说明:只修改admin的密码即可,SSH秘钥不需要重新生成
    907596-20170924195808696-1357277750.jpg
    然后注销,使用admin重置后的新密码登陆Jumpserver!
  • 添加用户组(如下以添加ops用户组为例)
    907596-20170924200640946-1067982165.jpg
    907596-20170924200647728-365187831.jpg
    907596-20170924200655650-533446359.jpg
  • 添加用户(如下以添加wangshibo用户为例;注意这个用户添加成功后,也会在Jumpserver部署机上自动生成。那么删除这个用户后,也会自动从部署机上删除)
    907596-20170924201942431-681467308.jpg
    907596-20170924201949790-953054644.jpg
    907596-20170924202001603-687604210.jpg
    然后到上面添加wangshibo用户时配置的邮箱里会收到一封邮件,如下:
    907596-20170924203102696-1129917456.jpg
    对于上面邮件里的内容,要注意以下几点:
    web登录密码:是指使用wangshibo用户登陆Jumpserver的web界面的密码,这个密码在王士博用户登陆到Jumpserver界面后可以修改。
    密钥下载地址:是指下载wangshibo用户登陆Jumpserver部署机的密码的地址,可以通过打开邮件里的这个地址进行下载;也可以在wangshibo用户添加成功后,点击Jumpserver界面里"查看用户"->"wangshibo"后面的"下载"按钮。
    ssh密钥文件密码:是指在使用wangshibo用户的key(即第2步中下载的秘钥)登陆Jumpserver部署机时要输入的密码。
    ----------------------------------------------------------------------------------------------------------------------
    特别注意一点:
    在Jumpserver里添加的用户的秘钥下载后默认是pem格式的秘钥文件。如果要在SecureCRT这样的客户端里登陆,还需要将这个转化为.pub的公钥文件才能使用!
    做法如下:
    1)将下载的这个wangshibo.pem秘钥文件放到任意一台linux主机上进行转化为.pub格式的公钥文件的操作(root账号下操作)
    localhost:Downloads root# ssh-keygen -e -f wangshibo.pem >> wangshibo.pem.pub
    Enter passphrase: //注意这里输入的密码就是上面邮件中的"您的ssh密钥文件密码:"
    localhost:Downloads root# ls -l wangshibo.*
    -rw-r--r--@ 1 kevin staff 1766 Sep 24 20:36 wangshibo.pem
    -rw-r--r-- 1 root staff 506 Sep 24 20:39 wangshibo.pem.pub
    2)然后将转化后的wangshibo.pem.pub公钥文件拷贝给用户,使用SecureCRT客户端登录Jumpserver部署机。(如下图,PublicKey的方式要推放到最前面)
    907596-20170924204324868-2001643598.jpg
    如下,需要输入的密码即是上面邮件中收到的ssh密钥文件密码(即 9f4ZCpvEiCy3wbS0)
    907596-20170924204637321-1859697929.jpg
    907596-20170924204647087-1813342083.jpg
    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    ---------------------或者在MAC或linux终端里直接ssh使用.pem秘钥文件登陆------------------------
    找到wangshibo.pem的下载路径,使用ssh登陆
    localhost:~ root# cd /Users/kevin/Downloads/
    localhost:Downloads root# ls -l wangshibo.pem
    -rw-r--r--@ 1 kevin  staff  1766 Sep 29 16:06 wangshibo.pem
    localhost:Downloads root# ssh -i /Users/kevin/Downloads/wangshibo.pem -p22 wangshibo@172.16.220.128        //需要在root账号下操作。普通用户要在sudo下操作,(sudo可以限制到只能ssh操作,比如:wangshibo     ALL=(ALL)    NOPASSWD: /usr/bin/ssh)
    Enter passphrase for key '/Users/kevin/Downloads/wangshibo.pem':               //输入上面邮件中收到的ssh密钥文件密码(即 9f4ZCpvEiCy3wbS0)
    Last login: Fri Sep 29 17:08:19 2017 from 10.45.225.9

    Welcome to aliyun Elastic Compute Service!


    ###    欢迎使用Jumpserver开源跳板机系统   ###

            1) 输入 ID 直接登录.
            2) 输入 / + IP, 主机名 or 备注 搜索.
            3) 输入 P/p 显示您有权限的主机.
            4) 输入 G/g 显示您有权限的主机组.
            5) 输入 G/g + 组ID 显示该组下主机.
            6) 输入 E/e 批量执行命令.
            7) 输入 U/u 批量上传文件.
            8) 输入 D/d 批量下载文件.
            9) 输入 H/h 帮助.
            0) 输入 Q/q 退出.

    Opt or ID>:
    还可以做成expect脚本方式登陆:
    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    31

    32

    33

    34

    35

    36

    37

    38

    39

    40

    41

    42

    43

    44

    45

    46

    47

    48

    49

    50

    51

    52

    53

    54

    55

    56

    57

    58

    将下载的用户密钥文件(如wangshibo.pem)放到一台linux服务器的一个用户家目录(比如/home/wangshibo)下,编写expect脚本(安装参考:http://www.cnblogs.com/kevingrace/p/5900303.html)
    操作记录如下(wangshibo用户在这台linux服务器上有sudo ssh的权限):
    [wangshibo@sh-sre-man01 ~]$ pwd
    /home/wangshibo

    [wangshibo@sh-sre-man01 ~]$ cat shanghai-jump
    #!/bin/expect  
    set timeout 30  
    spawn sudo ssh -i /home/wangshibo/wangshibo.pem -p22 wangshibo@122.161.155.17
    expect "'/home/wangshibo/wangshibo.pem':"
    send "9f4ZCpvEiCy3wbS0\r"
    interact

    [wangshibo@sh-sre-man01 ~]$ ./shanghai-jump
    spawn sudo ssh -i /home/wangshibo/wangshibo.pem -p22 wangshibo@122.161.155.17
    Enter passphrase for key '/home/wangshibo/wangshibo.pem':
    Last login: Mon Oct 16 12:43:26 2017 from 111.110.111.141

    Welcome to aliyun Elastic Compute Service!


    ###    欢迎使用Jumpserver开源跳板机系统   ###

            1) 输入 ID 直接登录.
            2) 输入 / + IP, 主机名 or 备注 搜索.
            3) 输入 P/p 显示您有权限的主机.
            4) 输入 G/g 显示您有权限的主机组.
            5) 输入 G/g + 组ID 显示该组下主机.
            6) 输入 E/e 批量执行命令.
            7) 输入 U/u 批量上传文件.
            8) 输入 D/d 批量下载文件.
            9) 输入 H/h 帮助.
            0) 输入 Q/q 退出.

    Opt or ID>: p
    [ID ] 主机名    IP               端口  系统用户  备注
    [0  ] sh-sre-man01    111.110.111.141   2200   ['ops', 'devs', 'work']  
    [1  ] sh-api-dmk01    111.110.111.140   22     ['ops', 'devs', 'work']  
    [2  ] sh-api-dmk02    111.110.111.139   22     ['ops', 'devs', 'work']  
    [3  ] sh-inf-deploy01 111.110.111.146   22     ['ops', 'devs', 'work']  
    [4  ] sh-sre-monitor01 111.110.111.148   22     ['ops', 'devs', 'work']  
    [5  ] sh-db-dmk01     111.110.111.142   22     ['ops', 'devs', 'work']  
    [6  ] sh-db-dmk02     111.110.111.143   22     ['ops', 'devs', 'work']  
    [7  ] sh-srv-dmk02    111.110.111.144   22     ['ops', 'devs', 'work']  

    Opt or ID>: 2
    [ID] 系统用户
    [0 ] ops
    [1 ] devs
    [2 ] work

    授权系统用户超过1个,请输入ID, q退出
    ID>: 0
    Last login: Sat Oct 14 23:30:26 2017 from 122.161.155.17

    Welcome to aliyun Elastic Compute Service!

    [ops@sh-api-dmk02 ~]$
    ---------------------------------------------------------------------------------------------------------------------
  • 添加资产组、机房
    907596-20170924210131040-964863044.jpg
    907596-20170924210138603-216326132.jpg
    907596-20170924210148243-1284074351.jpg
    907596-20170924210158165-1270869864.jpg
    907596-20170924210205259-1710490810.jpg
    907596-20170924210213603-1860625556.jpg
  • 现在开始添加机器资产(也就是添加要从跳板机登陆管理的目标机器)
    907596-20170924210317540-93617221.jpg
    注意一点:可以一台台添加,也可以选择使用批量添加,有批量添加的模版。这里我暂且使用单台添加作为演示。另外:管理用户是指目标客户机上真实存在用户,这个最好填目标主机的root用户(以及目标主机的root的真实密码),如果填写真实存在的普通用户,则它必须拥有NOPASSWD: ALL sudo权限。管理用户的作用是用于推送系统用户(也就是说这个管理用户最好使用root,如果是非root账号,那么它必须拥有NOPASSWD: ALL sudo权限!)
    如下添加三台主机资产
    907596-20170924211704946-445325437.jpg
    907596-20170924211716696-226753131.jpg
    907596-20170924211726962-41759473.jpg
    907596-20170924211901040-897459855.jpg
  • 通过"编辑"主机,将其划到相应的机房里,完善主机信息
    907596-20170924212234712-635538485.jpg
  • 下面开始权限管理的设置
    先添加Sudo,这里的sudo其实是Linux中的sudo命令别名,一个sudo别名包含多个命令, 系统用户关联sudo就代表该系统用户有权限sudo执行这些命令。当然可以创建多Sudo,划分给不同权限的用户。如下,创建两个Sudo
    907596-20170924213034493-572133506.jpg
    907596-20170924213043165-28495916.jpg
    907596-20170924214149946-1366335188.jpg
    907596-20170924214200868-1244165328.jpg
  • 接着添加系统用户。系统用户是服务器上建立的一些真实存在的可以ssh登陆的用户,如work,ops,dev等,系统用户可使用资产的管理用户将其推送到添加的目标资产服务器上。这里我添加了三个系统用户,分别为work、ops、dev(添加时的用户密码随便定义,比如work@123、ops@123、dev@123)。这些系统用户在Jumpserver界面里添加成功后,会自动推送到添加的目标主机上。
    特别需要注意一点:这里的系统用户不能使用root!必须是非root用户!然后通过定义的各种sudo进行不同的相关操作(比如允许ops切换到root账号下)
    907596-20170924215015118-2062870251.jpg
    907596-20170924215022196-1012255858.jpg
    907596-20170924215036243-1158620142.jpg
    907596-20170924215043931-1464810978.jpg
    907596-20170924215051259-193337342.jpg
  • 系统用户创建好之后,一定要记得点击"推送",将这些系统用户及其密码、sudo的信息推送到添加的目标服务器上。当然,后续要是在jumpserver的界面里删除这个系统用户,那么目标机器上也会自动删除这个系统用户!如下,将这三个系统用户都推送到目标机器上。如果推送成功,则会出现一个类似"系统用户 work 推送成功[ test-vm03,test-vm02,test-vm04 ]"的提示。
    907596-20170925002734368-1625734437.jpg
    907596-20170925002742900-194603569.jpg
    907596-20170925002752431-1509382829.jpg
    可以在系统用户列表,点击系统用户名称,进去查看系统用户的推送情况。比如查看work系统用户的推送情况
    907596-20170925003225728-804495739.jpg
    907596-20170925003240306-652707924.jpg
    ---------------------------------------------------------------------------------------------------
    新增主机的推送:
    系统用户列表->点击系统用户名称(比如work)->work-未推送主机->点击新增主机,进行推送操作
    ---------------------------------------------------------------------------------------------------
    推送成功后还可以直接到目标机器上查看推送效果。比如到test-vm02机器上查看:
    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    [iyunv@test-vm02 ~]# cat /etc/passwd
    .......
    work:x:1000:1000::/home/work:/bin/bash
    ops:x:1001:1001::/home/ops:/bin/bash
    dev:x:1002:1002::/home/dev:/bin/bash

    [iyunv@test-vm02 ~]# cat /etc/sudoers
    ......
    Cmnd_Alias SUPERADMIN = /bin/*, /sbin/*
    work ALL = (root)  NOPASSWD: SUPERADMIN
    ops ALL = (root)  NOPASSWD: SUPERADMIN
    Cmnd_Alias DEVADMIN = /usr/bin/vim, /usr/bin/tar, /usr/bin/gzip, /usr/bin/rsync, /usr/bin/tail
    dev ALL = (root)  NOPASSWD: DEVADMIN

    如上,说明test-vm02机器已经被推送成功了。其他机器的检查方法跟上面一样。
    ---------------------------------------------------------------------------------------------------------------
  • 这里说下推送失败的案例1:
    在系统用户列表,点击系统用户名称,查看系统用户推送详情,把鼠标放到失败按钮上,会看到失败的原因。
    907596-20170925003843056-1098336714.jpg
    可以登陆其中的一台服务器比如test-vm02上,查看/var/log/message日志信息,再结合上面截图中的报错,原因是执行/etc/sudoers文件时,发现没有work用户!也就是说work用户没有useradd创建成功!那么就尝试在test-vm02机器上手动创建work账号,如下:
    907596-20170925004155243-1354930693.jpg
    果然是useradd创建系统用户失败导致的!解决办法:
    1

    [iyunv@test-vm02 ~]# rm -f /etc/gshadow.lock
    这样就OK了!可以再次手动useradd创建work账号试试,创建成功后再userdel删除它!
    最后别忘记在/etc/sudoers文件里删除底部添加的work账号的sudo设置信息,因为这是推送失败的那次添加的sudo信息,删除后重新推送下,否则配置信息就会重叠!
    其他服务器的处理方法跟这个一样!
    ---------------------------------------------------------------------------------------------------------------
  • 再说下推送失败的案例2
    907596-20170925012416932-693723642.jpg
    解决方案:http://www.cnblogs.com/kevingrace/p/5893121.html
    修改后,可以重启jempserver(即/opt/jumpserver/server.sh restart)
    ---------------------------------------------------------------------------------------------------------------
  • 最后进行"授权规则"的创建
    907596-20170925005016275-760625293.jpg
    907596-20170925005024384-976283700.jpg
    907596-20170925005033993-1464570811.jpg
    到此,Jumpserver堡垒机的设置已完成!



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-405775-1-1.html 上篇帖子: jumpserver解决"Server responded with 0 code" 下篇帖子: jumpserver3.0 安装配置
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表