大家好!我是螃蟹和骆驼先生,今天我教大家的是Jumpserver 1.4.4堡垒机的使用。我也欢迎大家和我讨论:
qq:179061434
简介:
Jumpserver 是全球首款完全开源的堡垒机,使用 GNU GPL v2.0 开源协议,是符合 4A 的专业运维审计系统。
Jumpserver对服务器要求:
CPU: 64位双核处理器
内存: 4G DDR3
数据库:mysql 版本大于等于 5.6 mariadb 版本大于等于 5.5.6
pythone:3.6版本
升级之后增加了太多功能本身内存增大,老版本是2G就可以跑起来,现在要求3G-4G内存才可以跑起来。
官方文档:http://docs.jumpserver.org/zh/docs/
1.docker安装命令:
# 1.4.5 版本(最新)
$ docker run --name jms_all -d -p 8030:80 -p 8020:2222 jumpserver/jms_all:latest
8030的意思是Jumpserver 管理的客户端 8020代表的是你堡垒机的端口号,当然你可以设置成其他的
访问: http://127.0.0.1:8030/users/login/?next=/
默认帐号: Admin 密码:admin
如图:
2.设置修改帐号密码如图:
3.系统设置
修改 url 的"localhost"为你的实际 url 地址,否则邮件收到的地址将为"localhost" 也无法创建新用户
其他LDAP设置,终端设置,安全设置,用默认就好,其实Jumpserver 1.4.4最新版已经配置好了,唯一瑕疵就是我下面一张截图,给的名字都是默认的。
4.用户管理:
用白话文解释一下:
用户管理为何有用户和用户组,用户单纯是Jumpserver的登录用户,组是代表部门的意思,一个部门有不同人员和资产,所以一个组下面有很多人员和主机,主机直接授权给组,相当于组下面人员都有该主机权限,方便管理如图:
5.既然Jumpserver是堡垒机我们肯定要添加主机,这里就是资产管理如图:
为何这里有个树形结构呢,因为每个部门需要不同主机资产,所以这里节点就是部门的意思,将不同主机分配到不同的部门,比如运维部需要所有主机资产的,后台只要后台主机资产,前台只要前台主机资产。
创建资产就是创建主机的意思。
在创建主机之前我们首先要先设置主机帐号密码
6.创建管理用户
# "管理用户"是资产上的 root,或拥有 NOPASSWD: ALL sudo 权限的用户,Jumpserver 使用该用
户来推送系统用户、获取资产硬件信息等
# 如果使用ssh私钥管理资产,需要先在资产上设置,这里举个例子供参考(本例登录资产使用root为例)
(1). 在资产上生成 root 账户的公钥和私钥
$ ssh-keygen -t rsa # 默认会输入公钥和私钥文件到 ~/.ssh 目录
(2). 将公钥输出到文件 authorized_keys 文件,并修改权限
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
$ chmod 400 ~/.ssh/authorized_keys
(3). 打开RSA验证相关设置
$ vi /etc/ssh/sshd_config
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
(4). 重启 ssh 服务
$ service sshd restart
(5). 上传 ~/.ssh 目录下的 id_rsa 私钥到 jumpserver 的管理用户中
# 这样就可以使用 ssh私钥 进行管理服务器
先解释一下管理用户代表的意思就是服务器帐号,而系统用户就是管理用户分配一个权限给Jumpserver 去创建一个系统用户,就是把root把一部分权限分给子用户,子用户拥有权限很低,服务器越安全。
这里管理用户创建你可以用账户密码或者公钥,因为之前配置过公钥,所以都可以用
# "系统用户"是 Jumpserver 跳转登录资产时使用的用户,用户使用该用户登录资产
# "自动生成密码"、"自动推送"、"Sudo"等功能需要对应资产的"管理用户"有root权限,否则自动推送失败
# "系统用户"的"Sudo"栏设定用户的sudo权限
# 这里简单举几个例子
Sudo /bin/su # 当前系统用户可以免sudo密码执行sudo su命令
Sudo /usr/bin/git,/usr/bin/php,/bin/cat,/bin/more,/bin/less,/usr/bin/tail
# 当前系统用户可以免sudo密码执行git php cat more less tail
Sudo !/usr/bin/yum # 禁止执行 yum 权限
# 此处的权限应该根据使用用户的需求汇总后定制,原则上给予最小权限即可
# 下图为不允许用户执行一些危险的操作,允许其他的所有权限
6.创建资产:
为何创建资产放到这里讲,1.你要有Jumpserver 账户,2.你要有主机账户,也就是服务器账户,默认系统用户权限比较小.上面我为大家分析的很详细,该有的都有了可以创建主机了,也就是资产列表
现在服务器都已经在对应的部门,但是我们Jumpserver用户和用户组,还没有授权有这些部门权限,来调动这些服务器,所以现在来授权,管理这些服务器。
如下图服务器权限:
前台部:0台服务器
运维部:2台服务器
后台部:1台服务器
现在我们要测试,登录方涛账户看正式员工后台部,是否有一台服务器权限:
先登录方涛用户:
测试服务器能不能登录成功操控,点击web终端:
点击服务器直连子系统4:
7.会话管理
这里是整个服务器最强大的地方,不但记录你登录服务器操作指令,还可以强制你中断,还有录像功能
这里唯一不行的就是,他只能记录Jumpserver 用户或者系统用户,不能记录root用户,所以你要分配成员
8.日志审计
字面理解感觉没必要解释
9.这里说一下Jumpserver 堡垒机我该怎么登录
还记的我们之前运行命令用到2222端口吗,其实这是堡垒机的登录端口
其实堡垒机帐号密码就是你的Jumpserver 帐号密码
我下面用方涛的帐号测试如图:
总结:
Jumpserver 1.4.4版本把老版本一些需要直接去文件查看密码这些操作都写进可视化界面里面,用法也比较简单,主要需要理解里面对应各项数据所代表的含义,Jumpserver 也是从前天接触的,我遇到时候有很多不理解,看官方文档我还是不理解,就找不到那个点,我不知道你们懂不懂,就是理解中心点,每个小功能起到的作用,我该怎么灵活运用,看很多人写的都是安装一下就结束了,有一些博主写出来自己都不知道里面一些东西就写给你看,感觉误人子弟。我这篇文章是原创。也是耗费这1天整理出来的,希望能对你起到一点帮助
qq讨论的话:
179061434