0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何使用jumpserver搭建堡垒机的详细资料说明

马哥Linux运维 来源:未知 2018-12-31 14:34 次阅读

首先,jumpserver是什么呢?

Jumpserver 是一款由Python编写开源的跳板机(堡垒机)系统,实现了跳板机应有的功能。基于ssh协议来管理,客户端无需安装agent。

特点:

完全开源,GPL授权 Python编写,容易再次开发 实现了跳板机基本功能,认证、授权、审计 集成了Ansible,批量命令等 支持WebTerminal Bootstrap编写,界面美观 自动收集硬件信息 录像回放 命令搜索 实时监控 批量上传下载

jumpserver 3.0 安装

相对于 jumpserver 2.0 版本,在新的版本 3.0 中取消了LDAP授权,取而代之的是ssh进行推送;界面也有所变化,功能更完善,安装更简单,不像 2.0 的版本,难住了好多人。下面通过两台主机来搭建 jumpserver堡垒机!

Centos 6.5 x86_64 关闭 iptables,关闭 selinux jumpserver:192.168.1.200 clients:192.168.1.210 ps:操作只针对 jumpserver,clients 不会进行操作,只是环境需求。

一、安装依赖包

yum -y install epel-release yum clean all && yum makecache yum -y update yum -y install git python-pip MySQL-devel gcc automake autoconf python-devel vim sshpass lrzsz readline-devel

二、下载 jumpserver

cd /opt Git clone https://github.com/jumpserver/jumpserver.git 注: 如果下载失败,则去github上面下载zip包,unzip解压缩即可

pIYBAFwl73mAZxhEAABPUPi3aoY522.jpg

三、执行快速安装脚本

cd /opt/jumpserver/install

pip install -r requirement.txt

pIYBAFwl73qABaFBAAA_B97KBOw246.jpg

查看安装的包 pip freeze

python install.py 输入jumpserver的地址,默认为:”192.168.1.200”,回车即可。 是否安装MySQL:选择”y”进行安装

pIYBAFwl73qAGZ2mAABi369zJLk609.jpg

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

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

pIYBAFwl73qAB1jaAABsE3t9IQM066.jpg

输入smtp信息之后发现报错了,是python的pycrypto模块问题,需要卸载重装: pip uninstall pycrypto easy_install pycrypto

pIYBAFwl73qABfIHAABB3811dBg975.jpg

pIYBAFwl73uAO68dAABGt-0YamU409.jpg

pIYBAFwl73uAJp9eAAAkS_9WivQ843.jpg

pIYBAFwl73uAGohxAAAm3vZ3IIE919.jpg

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

pIYBAFwl73yAe--AAABNzSi0KAo645.jpg

pIYBAFwl73yAVYx8AAAywRgHx2o786.jpg

运行 crontab,定期处理失效连接,定期更新资产信息 cd /opt/jumpserver python manage.py crontab add

pIYBAFwl73yANZDpAAA6oIxSv4c961.jpg

注: 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.200

注意: 在使用jumpserver过程中,有一步是系统用户推送,要推送成功,client(后端服务器)要满足以下条件: 1)后端服务器需要有python、sudo环境才能使用推送用户,批量命令等功能 2)后端服务器如果开启了selinux,请安装libselinux-python

六、更新代码

cd /opt/jumpserver git pull

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

下面开始要仔细看咯

一、用户管理

1)添加用户

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

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

查看添加的用户

pIYBAFwl74CAAj1pAAAk8Q8qNHc412.jpg

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

2)添加用户组

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

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

查看刚才添加的组

二、资产管理

1)添加资产组

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

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

2)添加资产

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

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

3)添加机房

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

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

三、权限管理

1)sudo

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

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

2)添加系统用户

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

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

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

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

推送成功

3)授权规则

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

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

四、登录

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

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

单击查看主机 —> 连接

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

2)通过ssh登录

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

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

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

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

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

!!为了安全,建议配置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_protocols TLSv1 TLSv1.1 TLSv1.2;

ssl_ciphers HIGH:!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;

}

Linux云计算及运维架构师高薪实战班“2018年12月10日即将开课中,120天冲击Linux运维年薪30万,改变速约~~~~

*声明:推送内容及图片来源于网络,部分内容会有所改动,版权归原作者所有,如来源信息有误或侵犯权益,请联系我们删除或授权事宜。

- 结束 -

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 服务器
    +关注

    关注

    12

    文章

    9149

    浏览量

    85396
  • 客户端
    +关注

    关注

    1

    文章

    290

    浏览量

    16686

原文标题:手把手教你用jumpserver搭建堡垒机!

文章出处:【微信号:magedu-Linux,微信公众号:马哥Linux运维】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    如何使用eclipse和Wamp Server搭建PHP开发环境的详细资料说明

    本文档的主要内容详细介绍的是如何使用eclipse和wampserver搭建php开发环境的详细资料说明
    发表于 03-04 18:01 14次下载
    如何使用eclipse和Wamp Server<b class='flag-5'>搭建</b>PHP开发环境的<b class='flag-5'>详细资料</b><b class='flag-5'>说明</b>

    单片应用的编程100问题和答案的详细资料说明

    本文档的主要内容详细介绍的是单片应用的编程100问题和答案的详细资料说明
    发表于 03-07 16:06 11次下载
    单片<b class='flag-5'>机</b>应用的编程100问题和答案的<b class='flag-5'>详细资料</b><b class='flag-5'>说明</b>

    状态protothreads的资料和源代码的详细资料说明

    本文档的主要内容详细介绍的是状态protothreads的资料和源代码的详细资料说明
    发表于 04-12 18:28 12次下载
    状态<b class='flag-5'>机</b>protothreads的<b class='flag-5'>资料</b>和源代码的<b class='flag-5'>详细资料</b><b class='flag-5'>说明</b>

    如何搭建Linux服务器的详细资料说明

    本文档的主要内容详细介绍的是如何搭建Linux服务器的详细资料说明主要内容包括了:1、搭建telnet服务器,2、
    发表于 04-18 08:00 10次下载
    如何<b class='flag-5'>搭建</b>Linux服务器的<b class='flag-5'>详细资料</b><b class='flag-5'>说明</b>

    51单片的汇编指令详细资料说明

    本文档的主要内容详细介绍的是51单片的汇编指令详细资料说明
    发表于 08-30 17:28 14次下载
    51单片<b class='flag-5'>机</b>的汇编指令<b class='flag-5'>详细资料</b><b class='flag-5'>说明</b>

    51单片例函数的详细资料说明

    本文档的主要内容详细介绍的是51单片例函数的详细资料说明
    发表于 08-28 17:29 8次下载
    51单片<b class='flag-5'>机</b>例函数的<b class='flag-5'>详细资料</b><b class='flag-5'>说明</b>

    如何使用ubuntu和eclipse与sdcc搭建C51开发环境详细资料说明

    本文档的主要内容详细介绍的是如何使用ubuntu和eclipse与sdcc搭建C51开发环境详细资料说明
    发表于 07-24 17:37 4次下载
    如何使用ubuntu和eclipse与sdcc<b class='flag-5'>搭建</b>C51开发环境<b class='flag-5'>详细资料</b><b class='flag-5'>说明</b>

    51单片的中断系统详细资料说明

    本文档的主要内容详细介绍的是51单片的中断系统详细资料说明
    发表于 06-14 17:45 3次下载
    51单片<b class='flag-5'>机</b>的中断系统<b class='flag-5'>详细资料</b><b class='flag-5'>说明</b>

    使用STM32单片实现IAP的详细资料说明

    本文档的主要内容详细介绍的是使用STM32单片实现IAP的详细资料说明。先说一下实现的功能 IAP程序的功能
    发表于 05-17 18:04 28次下载
    使用STM32单片<b class='flag-5'>机</b>实现IAP的<b class='flag-5'>详细资料</b><b class='flag-5'>说明</b>

    什么是单片?单片的历史和应用等详细资料说明

    本文档的主要内容详细介绍的是什么是单片?单片的历史和应用等详细资料说明
    发表于 12-13 16:01 7次下载
    什么是单片<b class='flag-5'>机</b>?单片<b class='flag-5'>机</b>的历史和应用等<b class='flag-5'>详细资料</b><b class='flag-5'>说明</b>

    SWD的下载步骤详细资料说明

    本文档的主要内容详细介绍的是单片SWD的下载步骤详细资料说明
    发表于 12-30 08:00 21次下载
    SWD的下载步骤<b class='flag-5'>详细资料</b><b class='flag-5'>说明</b>

    ESP32教程之如何搭建linux开发环境的详细资料说明

    本文档的主要内容详细介绍的是ESP32教程之如何搭建linux开发环境的详细资料说明
    发表于 03-10 16:42 11次下载

    使用单片实现流水灯的详细资料说明

    本文档的主要内容详细介绍的是使用单片实现流水灯的详细资料说明
    发表于 03-21 16:41 7次下载
    使用单片<b class='flag-5'>机</b>实现流水灯的<b class='flag-5'>详细资料</b><b class='flag-5'>说明</b>

    Arduino下位Gcode命令的详细资料说明

    本文档的主要内容详细介绍的是Arduino下位Gcode命令的详细资料说明
    发表于 04-13 08:00 18次下载
    Arduino下位<b class='flag-5'>机</b>Gcode命令的<b class='flag-5'>详细资料</b><b class='flag-5'>说明</b>

    JumpServer开源堡垒

    gitee-Jumpserver.zip
    发表于 04-29 09:23 2次下载
    <b class='flag-5'>JumpServer</b>开源<b class='flag-5'>堡垒</b><b class='flag-5'>机</b>