当前位置:   article > 正文

【运维知识进阶篇】一篇文章带你搞懂Jumperserver(保姆级教程:安装+用户与用户组+创建资产+授权资产+创建数据库+sudo提权+命令过滤+多因子认证+网域功能+审计台)

jumperserver

本篇文章介绍Jumperserver,包括安装部署,创建用户组,创建用户加入组(Jumperserver用户),创建管理用户(创建密钥管理,和客户端做免密钥登录),创建系统用户(管理用户会把系统用户自动创建到客户端),创建资产(通过ssh免密钥实现连接),授权资产给用户或组,账号推送,创建数据库并进行应用测试,使用两个系统用户测试sudo提权,测试命令过滤加强系统安全性,多因子认证,网域功能。Jumperserver部署很简单,几条命令实现安装部署,使用也都是中文,点点点即可,但是在公司,你要是新接触可能两天都研究不明白,而在我这里,一篇文章即可。

目录

Jumperserver安装

Jumpserver用户与用户组

创建资产

授权资产给用户或用户组

一、账号推送

二、授权资产

三、验证测试(以开发-小王访问Web01为例)

四、Xshell连接

创建数据库

sudo提权

命令过滤

多因子认证

网域功能

一、准备服务器

二、创建网关

三、添加资产

审计台


Jumperserver安装

这里我安装在虚拟机,2核,4G运行内存(根据情况调整)

  1. #1、curl命令下载脚本,bash执行,一键自动安装部署
  2. curl -sSL https://resource.fit2cloud.com/jumpserver/jumpserver/releases/latest/download/quick_start.sh | bash
  3. #2、启动jumperserver
  4. cd /opt/jumpserver-installer-v3.2.2
  5. ./jmsctl.sh start #启动
  6. ./jmsctl.sh -h #查看帮助
  7. ./jmsctl.sh down #停止
  8. ./jmsctl.sh uninstall #卸载
  9. #3、浏览器访问,默认账户密码admin,admin,登录并修改密码

Jumpserver用户与用户组

用户分类:

  1. 1、登录jumperserver的用户
  2. 2、通过jumpserver连接后端服务器的用户,需要在后端所有的服务器上创建普通用户
  3. 3、特权用户,免密钥连接后端服务器的root账号

先创建用户组 

df9161510f9f4ae3901154f30ea5544c.png

6425811402a547978277ab52f6602310.png

7016b1aa3650405d9a89e54ef9a2ae8a.png

6a386ce8394d47459c9893916432c42c.png

 再去用户列表创建用户,并将用户加入用户组,这里的用户是指jumperserver的登录用户

225cc84226584e8da543790a47c27d51.png

输入相应内容,下滑选择保存并继续添加,注意!实际工作中请不要将用户名设置为中文,否则Xshell会很难通过用户名和密码登录

756d922f9e4c4f78830ab6510dee6740.png

309e064c516f479b9d68c896b651cff4.png

fe22526cac594d04876434b4197e2b52.png

创建资产

在Default右键创建节点

76d881d5808e4622984cb16e109ebad0.png

 fa0c47305dcb45d19f1c0a3d524f3f31.png

 可以选中节点,在节点里创建资产,这里假设Web01在阿里云,Web02在IDC机房 

df63152860a24ea49689545e7a32f4e5.png

这里我们先创建密钥对,将公钥分发给客户端,导出私钥,待会儿用

  1. [root@Jumper ~]# ssh-keygen
  2. [root@Jumper ~]# ssh-copy-id -i .ssh/id_rsa.pub 172.16.1.7
  3. [root@Jumper ~]# ssh-copy-id -i .ssh/id_rsa.pub 172.16.1.8
  4. [root@Jumper ~]# sz .ssh/id_rsa
  5. [root@Jumper ~]#

e9d9c414fe0e410a8e04cbc039b4837a.png

f85e7b12640940a4a2c672dc5f6a5f7a.png fb2f641d8a4741d994bc97d4810910b8.png

保存并继续创建,修改信息后,提交 

aee8420124a14401bb5f7753ad20bb97.png

8c8f5ec12abb46f2a047746abe8c9671.png

授权资产给用户或用户组

授权开发组(开发-小王)只能连接阿里云节点(Web01),运维组(运维-小李)只能连接IDC机房节点(Web02)

一、账号推送

推送普通账号到后端服务器并创建f87eed8b00dd4c74894dba936f0bad48.png

推送设置里可以设置想要给普通用户的命令权限

813221059625413ea1efed93f31fd40a.png

4eb61f14a20d41889676ef83e05e97ab.png

a805cdf62a354c5fa9dd2f1a171697a7.png

2c813a7168ad4475a440fdd921bcce5c.png

创建好后需要手动执行,不手动执行登录终端的时候会没有用户

fef2cbd87fc744288b29753ccde79c06.png 8d65cd68475548659bdf65332bd276de.png

二、授权资产

cf7bbb81afb742318bc74fba920052a7.png

 966e48a01d494492acb483c8cc3e0d7c.png

 26604a19f40c48f99420bb4e3611aa8a.png

三、验证测试(以开发-小王访问Web01为例)

9fdc42d287824bdda808c230dfa74ad8.png

443a86bfd171457bba38b1f932dc4b33.png

 c22f6dcf4f0e4393bb05744054373b7a.png

 Web终端可以连接b14f3891a35045269c380fc874a4f08b.png

1319d2e9f0de4110b9a19967a6723a08.png

四、Xshell连接

实际工作,我们肯定不是在网页上操作,都是利用Xshell远程连接,这里的登录用户名和密码是跳板机的用户和密码,所以说实际操作时,不要将用户名设置为中文,否则会登录不上,这里我用admin测试 

先将资产给admin授权一下,先账号推送 

506da69e8e7a4737b1e447aa8de6d3fd.png

c51b3f5148484f5f8ded1de3c7f7c608.png

80691ab6d6a0424589749364ca24f082.png

再创建授权规则

bef1a6cf95ae4faf92e41e58fb1f7af0.png 在Xshell中登录

fbf0898cfd7e45e98d2379da29c2b5a9.png

955e4d60a1f949598aeeafda85823c6a.png

输入p可以查看175c4a68dcf7401e8a27de1ca2a42f37.png

再输入1可以进入Web01

7a6a949f22134c768d6c10b62e4b0079.png

我们可以通过Xshell登录脚本,实现点击会话自动登录

 d96dc671469648f49c5ecb0aebdadfdf.png

 bcfd8b33a18f49399b64caaeacd618f5.png

点击会话后自动连接  e76f74e1dd7049eeb78bb3282a273d39.png

创建数据库

[root@Jumper ~]# ssh-copy-id -i .ssh/id_rsa.pub 172.16.1.51

eb4cf6bdcca045c89b9aa15207cfd1e8.png

 f24b8b1eb2144ee1a5f08adc01cf14e7.png

c9ce7d2fdf854f97b677568ff03caf91.png

 ​​​​​​ccc1d900e5fb4328bf73c5809f08ab59.png

1a67e46f18f542499b255928ead7287f.png

 

79641664046742258ef778b493cbd59a.png 6afa6b2a71e44497928b1886c3a77e44.png

重新去授权一下资产

06a4375690bd422bbfe4ac91316d11e3.png

 登录运维小李的账号,web终端去访问87ad5b1416c8400997ac212a796be0e9.png

8274133ac743420cb0a6a4164dfd6ecb.png

点击连接自动连接至数据库

b9c57331e5d647c8a7e5becf85d1ab7d.png

实际工作使用Xshell连接,Xshell连接数据库与连接服务器同理,注意用户名不能是英文,不再演示。

sudo提权

上面提到了sudo提权在账号推送推送参数的位置

6188e1f35583475cb29e5eabf5b9e4f6.png

 9be7d24af80440d48ddec1bd581cc36e.png

  1. [root@Jumper ~]# which touch
  2. /usr/bin/touch

05d59d83fd1b4b6fa207c88d08965073.png

提交后手动执行一次 

96cff08026844b46a05ec71a78fe3346.png

 运维-小李无法创建

 

2071f474ccd342bcad7b5c925d5c94c6.png

开发-小王授权后可以通过sudo创建 

02c906dacf0b4f579f159002fb3535af.png

命令过滤

先创建命令组

a6aed7c953854628be9658a6738cdb72.png

这里有个忽略大小写意思是,你输入RM也不行,也被过滤掉,如果不忽略大小写意思就是RM可以用,但是rm不能用 

df4b0bd2ee894e4c8e6cbff957cfd559.png

 再创建命令过滤的规则

61a72e89dc734b8493178b20ddaf063e.png

483d98846239463199a5b18ac0e4f7ac.pnge0925fe4aa84402290bd14c2b8c840f7.png 退出重新连接后发现rm已经禁用6e6a55e36ec34e8fbce4ed5679c072e8.png

多因子认证

可以在系统设置里进行全局设置,也可以在创建用户的时候进行开启认证 

fa639101932e4ca6a570e745f904dca8.png

退出重新登录admin用户,输入账号密码登录后选择,启用MFA 

09fbe64ee524433881d64988527423ac.png

这里无需安装,直接下一步(图片违规了)

微信小程序搜MFA验证器,扫码添加,获取验证码后输入进去(图片违规了)

 

启用成功,会跳转再次登录,输入小程序显示的验证码

522202b979c846d8994f873f6a5f2033.png 点下一步成功登录进去,开启多因子认证后更加安全!

3d928373c8cb4342b6c5a4d091dee2fb.png

网域功能

网域功能是指比如有的服务器在其他地方只有内网IP,就需要通过代理服务器进行跳转,网域功能指的是一种方式,允许用户将特定的资源分组在一个域名之下以便管理。

一、准备服务器

我这边在阿里云购买两台服务器,一台有内网和公网,一台只有内网,将这两台服务器创建在同一

网域下,实现对两台服务器的管理,先把公钥粘贴到服务器上

  1. [root@Jumper ~]# cat .ssh/id_rsa.pub
  2. ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCoyNcgukamY75r+VfIUDdUAcjc6s4p1PWU9c4NZtYuHVt3AP57IkvwMNg9a+hogWbCk8h6clGTpQVOOE68vK1FlnOYDMsq6tjpIiCEFckm+bfAdnhrQcecsexl5RiBZcIVTGKcNoH3KmqDP1DDymQqP4JICZJCzBzFVpbGTWArxKo4XLnuOv/0oKXbhEp2RGm+v2GMrIN7eTwYooDqbEzoYrelEISaC6ZXfRs8Dj6hpFb/D0LhjbNUrGbmCgW8NOW5FMDsTQ3MYKlS3PUKxtvco2750Edx0KsS2/K+J21M638ZOHMxCj2ne7TeMNBquZUYMNBjZ+NDEYJbMxybS0kP root@Jumper
  3. [root@iZrj9gpfp1kgldvwunxf5hZ ~]# cat .ssh/authorized_keys
  4. ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCoyNcgukamY75r+VfIUDdUAcjc6s4p1PWU9c4NZtYuHVt3AP57IkvwMNg9a+hogWbCk8h6clGTpQVOOE68vK1FlnOYDMsq6tjpIiCEFckm+bfAdnhrQcecsexl5RiBZcIVTGKcNoH3KmqDP1DDymQqP4JICZJCzBzFVpbGTWArxKo4XLnuOv/0oKXbhEp2RGm+v2GMrIN7eTwYooDqbEzoYrelEISaC6ZXfRs8Dj6hpFb/D0LhjbNUrGbmCgW8NOW5FMDsTQ3MYKlS3PUKxtvco2750Edx0KsS2/K+J21M638ZOHMxCj2ne7TeMNBquZUYMNBjZ+NDEYJbMxybS0kP root@Jumper
  5. [root@iZrj9gpfp1kgldvwunxf5gZ ~]# cat .ssh/authorized_keys
  6. ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCoyNcgukamY75r+VfIUDdUAcjc6s4p1PWU9c4NZtYuHVt3AP57IkvwMNg9a+hogWbCk8h6clGTpQVOOE68vK1FlnOYDMsq6tjpIiCEFckm+bfAdnhrQcecsexl5RiBZcIVTGKcNoH3KmqDP1DDymQqP4JICZJCzBzFVpbGTWArxKo4XLnuOv/0oKXbhEp2RGm+v2GMrIN7eTwYooDqbEzoYrelEISaC6ZXfRs8Dj6hpFb/D0LhjbNUrGbmCgW8NOW5FMDsTQ3MYKlS3PUKxtvco2750Edx0KsS2/K+J21M638ZOHMxCj2ne7TeMNBquZUYMNBjZ+NDEYJbMxybS0kP root@Jumper

b3601095a1d5441a846fb329df1b4a73.png

abc699001b5c4e158793f94856345966.png

二、创建网关

fb8b40819c534144a627ff87f053e563.png

66fc39e6031247a69015743c090bf56b.png 7e4b618262f84aeeaea89d746ef67463.png

97b4c0137c314cf0ba2ba81136387c2e.png

三、添加资产

587b70a520cc444a91acf549374bb7c1.png

38dc2fcf8df54459878ed0c6961875ce.png 5c96ae0c526e40f7962a89793973481f.png

测试也没有问题 

131a5fd14b504f51be4fbf053976059a.png 执行下阿里云节点的账号推送4de25f2a734e4e918fda169b01f7d8f8.png

b08c7501e5cd4859b9f84fadc50f64ef.png

执行完毕,用开发-小王进行远程管理,没有问题

3116bec7ad894230a2617f10c2a2fe4a.png

5c969f880e5c4a668054fe5bc0f43e9d.png

审计台

可以在审计台查看会话记录,命令记录,可以在线监控也可以看回放,也可以终止用户的连接等等操作。

d30c3393a5b34ee9b9f098faf79fa02d.png

e1fc16cc873646ed98f8aadb57dc9d35.png 06d145bed1b54c59b5f5286bda858b7a.png

c05dfe569a0d45498af5cbb9c6483dd8.png

da32b2d06f394b34bb812d51d1e2bdd7.png


我是koten,10年运维经验,持续分享运维干货,感谢大家的阅读和关注!

 

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号