Jumpserver是一款使用Python, Django开发的开源跳板机系统, 助力互联网企业高效、用户、资产、权限、审计 管理。
其特点如下:
6个人就能开发出来这么高大上的开源软件,你是不是也在心动?来张720p的特写:
如果必须要安装0.4的版本必须要借助于docker如下:
yum install -y docker //首先安装docker
systemctl enable docker
systemctl start docker //启动docker服务
curl -L https://github.com/docker/compose/releases/download/1.17.0-rc1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose //安装docker-compose
chmod 755 /usr/local/bin/docker-compose
git clone https://github.com/jumpserver/jumpserver.git //下载jumpserver源码
cd jumpserver
配置docker加速器 http://ask.apelearn.com/question/15126
检查是否有监听8080端口的服务,如果有关闭
screen //进入到一个虚拟终端
docker-compose up //使用docker-compose安装jumpserver
官方文档
https://github.com/jumpserver/jumpserver/wiki/v0.3.2-%E5%9F%BA%E4%BA%8E-RedHat-%E7%9A%84%E7%B3%BB%E7%BB%9F
yum install -y git
cd /home //要到一个空间大的目录下面
git clone https://github.com/jumpserver/jumpserver.git
cd jumpserver/
git checkout master
cd install/
python install.py
若你的机器已经安装过mysql,可以先创建jumpserver库以及对应的用户名密码,若没有安装就让它自动安装即可。
在这边我已经安装了mysql服务,所以我先进去创建一个jumpserver的库,以及授权访问。
mysql> create database jumpserver;
Query OK, 1 row affected (0.01 sec)
mysql> grant all on jumpserver.* to 'jumpserver'@'127.0.0.1' identified by 'asd9577';
Query OK, 0 rows affected (0.02 sec)
安装过程中还需要设置一下使用的第三方邮件,建议你去申请一个免费的163邮箱
我的163邮箱smtp.163.com XXXX@163.com XXXXX
echo $?
最后当我们安装成功之后出现如下:
请输入管理员用户名 [admin]:
请输入管理员密码: [[email protected]]:
请再次输入管理员密码: [[email protected]]:
Starting jumpserver service: [ OK ]
安装成功,Web登录请访问http://ip:8000, 祝你使用愉快。
请访问 https://github.com/jumpserver/jumpserver/wiki 查看文档
[[email protected] install]#
登录web管理界面:
http://192.168.59.131:8000/
账号就是如上的admin 密码是[email protected]
管理可以登录jumpserver这个平台的用户。
可以分为:线上的资产组、开发的资产组、测试的资产组。为的就是日后的方便管理,可以选择组进行批量操作。
查看资产:就是把所有的线上服务器添加到此。进行统一管理。俗称CMDB。
查看机房:根据机房来划分不同的机器。
系统用户:咱们设置跳板机,跳板机要登录到远程的服务器。但是需要用特定的用户才可以登录,系统用户就是这个用户!
授权规则:规定哪些用户有权限可以连接哪一组机器,或某些机器。(例如,运维组可以操作所有,开发组只允许操作开发的机器,数据中心的只有连接数据中心的机器权限)
我们将会学到3种用户:①登录jumpserver的用户 ②登录客户机的用户 ③管理用户(我们会使用ansible去自动化的执行一些命令,需要指定一个账户,就是这个账户)
①查看用户的登录历史 ②操作审计 ③上传或者下载的数据
我们新创建一个管理用户,并配置密钥登录,如上这个密钥是从哪儿操作的呢?
在jumpserver主机操作:
[[email protected] .ssh]# ssh-keygen -f jump
[[email protected] .ssh]# ls
jump jump.pub
[[email protected] .ssh]# cat jump
//然后把如下的私钥内容复制到浏览器。
然后点击 “确认保存” 即可!
然后我们找一台远程客户机zhdya02来操作:
[[email protected] ~]# useradd zhdyaa
[[email protected] ~]# su - zhdyaa
[[email protected] ~]$ mkdir .ssh
[[email protected] ~]$ vim .ssh/authorized_keys
//这里的公钥就是jumpserver那台机器的公钥。
[[email protected] ~]$ chmod 700 .ssh/
[[email protected] ~]$ chmod 400 .ssh/authorized_keys
仔细想想:首先私钥你绝对绝对保密的,公钥是留给机器使用的,当你添加机器,机器就拿着公钥来匹配你的私钥,这样才可以正常连接!
也就是以后每增加一台机器,都需要增加咱们创建的zhdyaa这个账户。
[root@zhdy01 .ssh]# ssh -i jump [email protected]192.168.59.138
The authenticity of host '192.168.59.138 (192.168.59.138)' can't be established.
ECDSA key fingerprint is SHA256:KKPvbPG47SDYH6QXpC4+RjUbiMTVX0sNF5F2nTTQ1lg.
ECDSA key fingerprint is MD5:e3:aa:2e:e3:2f:21:b5:06:26:08:0e:d5:57:2d:62:77.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.59.138' (ECDSA) to the list of known hosts.
Last login: Tue Oct 31 17:36:39 2017
[zhdyaa@zhdy02 ~]$
// ssh -i identity_file i后跟的是私钥文件。
//这样我们就成功的登录了zhdya02机器。