贞观之治之jumpserver

版权声明:原创作品,谢绝转载!否则将追究法律责任。

前言

所谓贞观之治,可以表明在中华位文明五千年历史长河中留下了浓墨重彩的一笔。而jumpserver这款开源的堡垒机仿佛在上演历史剧,穿越唐朝与唐太宗一起贞观......

个人理解

之所以称为开源即免费。堡垒机的理念是方便管理安全性。而这款jumpserver堡垒机也具备以上特性。这就好比几年前linux没有兴起的时候大家玩windows2008的域一样添加用户管理员,有子账户。但也是有区别的,如账户管理,资源管理,机房管理,授权。好多应用都可以让我们仔细研究一下。

安装步骤

服务器环境:阿里云服务器 ip47.12.230.456系统:Centos7.3

首先下载jumpserver安装包。

一、安装依赖包

yum -y install epel-release

yum clean all && yum makecache

yum -y install gitpython-pipMySQL-devel gcc automake autoconf python-devel vim sshpass lrzsz readline-devel

二、下载 jumpserver

cd /opt

Gitclonehttps://github.com/jumpserver/jumpserver.git

注: 如果下载失败,则去github上面下载zip包,unzip解压缩即可,我说下载安装包安装的。

1. 进官网下载。

贞观之治之jumpserver_第1张图片

2.点击之后下一步选择

贞观之治之jumpserver_第2张图片

3.开始安装jumpserver之后unzip jumpserver-master.zip

三、执行快速安装脚本

cd /opt/jumpserver/install

./install.py

贞观之治之jumpserver_第3张图片

贞观之治之jumpserver_第4张图片

输入jumpserver的地址,默认为:”172.17.253.221”,回车即可。 注意: 需要在你数据库创建一个jumpserver名字的库。

是否安装mysql:选择”y”进行安装

贞观之治之jumpserver_第5张图片

MySQL 启动后会要求用户输入 邮件服务器及账户(后期用来发送用户名、ssh pass、web pass、ssh key)

163邮箱用授权密码,而不是登入密码 ,切记 。

贞观之治之jumpserver_第6张图片

输入smtp信息之后发现报错了

第一个问题:

贞观之治之jumpserver_第7张图片

这个问题是utf8的问题 在数据库创建 create database jumpserver charset=utf8;

第二个问题:

python的pycrypto模块问题,需要卸载重装:

pip uninstall pycrypto

easy_install pycrypto

贞观之治之jumpserver_第8张图片
贞观之治之jumpserver_第9张图片

安装之后继续 ./install.py 进行安装,并且输入 web管理员用户名和管理员密码,ok

贞观之治之jumpserver_第10张图片

运行 crontab,定期处理失效连接,定期更新资产信息

cd /opt/jumpserver

python manage.py crontab add

贞观之治之jumpserver_第11张图片

注:

1)根据提示输入相关信息,完成安装,安装完成后,请访问web,继续查看后续文档

2)如果启动失败,请返回上层目录,手动运行 ./service.sh start 启动

3)如果 ./service.sh start 启动失败

cd /opt/jumpserver

python manage.py runserver 0.0.0.0:80

python run_websocket.py

4)如果启动失败,可能是由于80端口和3000端口已经被占用,或者数据库账号密码不对,请检查

五、Web登录

http://192.168.1.1:8000

贞观之治之jumpserver_第12张图片

2.这是登录之后看到得。

贞观之治之jumpserver_第13张图片

注意:

在使用jumpserver过程中,有一步是系统用户推送,要推送成功,client(后端服务器)要满足以下条件:

1)后端服务器需要有python、sudo环境才能使用推送用户,批量命令等功能

2)后端服务器如果开启了selinux,请安装libselinux-python

六、更新代码

cd /opt/jumpserver

gitpull

环境搭建到这一步就结束啦~

一、用户管理

1)添加用户

点击用户管理 —> 查看用户 —> 添加用户

贞观之治之jumpserver_第14张图片

输入要添加的用户名,姓名,权限,Mail,并且发送邮件 —> 保存

贞观之治之jumpserver_第15张图片

查看添加的用户

贞观之治之jumpserver_第16张图片

查看用户邮件

邮件中包含了用户名,权限,web密码,ssh 密钥密码,以及密钥下载地址。

贞观之治之jumpserver_第17张图片

2)添加用户组

点击用户管理 —> 查看用户组 —> 添加用户组

贞观之治之jumpserver_第18张图片

添加新的小组 —> 运维小组

贞观之治之jumpserver_第19张图片

查看刚才添加的组

贞观之治之jumpserver_第20张图片

二、资产管理

1)添加资产组

点击资产管理 —> 查看资产组 —> 添加主机组

贞观之治之jumpserver_第21张图片

输入组名称,并且输入描述组用途

贞观之治之jumpserver_第22张图片

2)添加资产

点击资产管理 —> 查看资产 —> 添加资产

贞观之治之jumpserver_第23张图片

输入主机名,主机IP,管理用户名(管理员用户,主机中必须存在的哦~ 可以是root),端口,资产组 —> 提交保存

贞观之治之jumpserver_第24张图片

3)添加机房

点击资产管理 —> 查看机房 —> 添加机房

贞观之治之jumpserver_第25张图片

输入机房名称,其他的可以选填 —> 保存

贞观之治之jumpserver_第26张图片

三、权限管理

1)sudo

点击权限管理 —> sudo —> 添加别名

贞观之治之jumpserver_第27张图片

输入别名,系统命令,备注 —> 点击保存

贞观之治之jumpserver_第28张图片

2)添加系统用户

点击授权管理 —> 系统用户 —> 添加系统用户

贞观之治之jumpserver_第29张图片

输入用户名,密码,管理的sudo及备注 —> 单击保存

贞观之治之jumpserver_第30张图片

创建好系统之后,单击推送,将用户名、密码、sudo的信息推送到服务器。

贞观之治之jumpserver_第31张图片

选择系统用户,资产组 —> 单击保存

贞观之治之jumpserver_第32张图片

推送成功

3)授权规则

点击授权管理 —> 授权规则 —> 添加规则

贞观之治之jumpserver_第33张图片

输入授权名称,用户/用户组,资产/资产组,系统用户,备注 —> 单击保存

贞观之治之jumpserver_第34张图片

四、登录

这时候创建已经完成,下一步用户”hongxue”通过web和密钥登录堡垒机 192.168.1.200,并实现跳转到服务器 192.168.1.210

1)通过web登录

可以看到用户ID,用户名,权限,key,最后登录,用户组,授权主机数,以及主机信息。

贞观之治之jumpserver_第35张图片

单击查看主机 —> 连接

贞观之治之jumpserver_第36张图片

连接成功,可以对该主机进行操作。

贞观之治之jumpserver_第37张图片

2)通过ssh登录

通过邮件中收到的地址,下载key

贞观之治之jumpserver_第38张图片

点击工具 —> 用户密钥管理者

贞观之治之jumpserver_第39张图片

单击导入 —> 输入用户名,密码

贞观之治之jumpserver_第40张图片

连接 jumpserver 堡垒机 192.168.1.200,输入密钥密码进行登录

贞观之治之jumpserver_第41张图片

登录成功!! 从授权的列表中连接到服务器 192.168.1.210

贞观之治之jumpserver_第42张图片

!!为了安全,建议配置nginx 反向代理 jumpserver

log_format jumpserver '$remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$request_time" $request_body "$http_referer" "$http_user_agent" "$http_x_forwarded_for" $scheme $http_host';

server {

listen       8080 ssl;

listen       80;

deny all;

server_name jumpserver.xxxx.com;

index index.html index.htm index.PHP;

ssl_certificate      ssl/xxxx.com.crt;

ssl_certificate_key  ssl/xxxx.com.key;

ssl_protocolsTLSv1 TLSv1.1 TLSv1.2;

ssl_ciphersHIGH:!aNULL:!MD5;

ssl_prefer_server_ciphers on;

if ( $scheme = http ) {

rewrite ^(.*)$ https://$host:8090$request_uri? permanent;

}

location / {

proxy_set_header Connection "";

proxy_http_version 1.1;

proxy_pass      http://10.43.12.31:8090;

}

location ^~ /ws/ {

proxy_pass http://10.43.12.31:8090/ws/;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header Host $host;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

proxy_http_version 1.1;

proxy_set_header Upgrade $http_upgrade;

proxy_set_header Connection "upgrade";

}

access_log  /data0/logs/jumpserver.log jumpserver;

error_log  /data0/logs/jumpserver_error.log debug;

}

总结:相信自己!

本文出自 “李世龙” 博客,谢绝转载!

你可能感兴趣的:(贞观之治之jumpserver)