开源堡垒机_jumpserver(代码片段)

jiaxiaozia jiaxiaozia     2022-11-30     534

关键词:

前介

1、jumperver介绍

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

? 特点:

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

2、jumpserver 2.0安装

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

3、安装依赖包

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

4、下载jmpserver

cd /opt Git clone https://github.com/jumpserver/jumpserver.git

注: 如果下载失败,则去github上面下载zip包,unzip解压缩即可

jumpserver下载地址:

https://github.com/jumpserver/jumpserver

https://github.com/jumpserver/jumpserver/release

jumpserver官网指导文档

https://jumpserver.readthedocs.io/zh/master/

技术图片

5、执行快速安装脚本

cd /opt/jumpserver/install
pip install -r requirement.txt

技术图片

查看安装的包 pip freeze

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

技术图片

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

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

技术图片

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

技术图片

技术图片

技术图片

技术图片

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

技术图片

技术图片

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

技术图片

注:

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端口已经被占用,或者数据库账号密码不对,请检查

6、更新代码

cd /opt/jumpserver 
git pull

Linux中的环境搭建到这一步就结束,下一步就是web页面的操作


操作

一、jumpserver架构图

技术图片

主要难理解的三个用户概念:

  1. 用户: 指上图中的运维老大或运维小弟,用来通过公网登录jumpserver的
  2. 管理用户: 用于管理资产的用户,一般为root或sudo配置的无密码登录用户
  3. 系统用户: 登录资产时使用的用户, 为了安全不直接使用root用户,而是使用普通用户(通过root授予相应的权限)

4A标准

  • auth
  • authorized
  • audit
  • account

二、jumpserver部署

直接参考官方网站,简单暴力(但需要网速较好,因为要下载大量的软件包,python模块与docker镜像等)

https://jumpserver.readthedocs.io/zh/master/

安装完成后,使用浏览器访问http://IP就可以了

技术图片

部署问题:

除了官方文档上的问题解决外,还有一个坑

因为软件包随着时间的不同,可能版本会有变化,如果在安装python模块时出现下面的问题,请解决,否则即使能部署成功,但后面的功能也会受影响

技术图片

解决思路:

(py3) [root@vm5 ~]# pip install urllib3==1.22
(py3) [root@vm5 ~]# pip install future==0.16.0

技术图片

(py3) [root@vm5 ~]# pip install jms-storage==0.0.22

注意: pip install会自动卸载原版本,安装你指定的版本.但也有可能会出现新的报错。总之全解决,直到没有报错才继续。

三、邮箱授权

admin(运维老大)创建个用户(运维小弟),还要帮你创建密码?

不好意思,我小弟太多管不过来,而且我是管理员,不屑于知道你密码。

那你就配置个邮箱吧,发邮件链接给你自己改。

技术图片

技术图片

技术图片

技术图片

技术图片

四、jumpserver系统设置

技术图片

技术图片

技术图片

技术图片

五、创建jumpserver普通用户

技术图片

技术图片

技术图片

技术图片

张三登录自己的邮箱自行设置密码

技术图片

技术图片

技术图片

技术图片

技术图片

技术图片

六、创建管理用户

技术图片
技术图片
技术图片

七、创建系统用户

技术图片

技术图片

技术图片

技术图片

八、创建资产

技术图片

技术图片

技术图片

技术图片

九、创建授权规则

技术图片

技术图片

技术图片

技术图片

十、连接测试

10.1 命令连接进行管理

技术图片

技术图片

技术图片

为了安全,建议配置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;

10.2 登录web进行管理

技术图片

技术图片

点击web终端就会跳到web管理终端

技术图片

点击文件管理就会跳到文件管理界面

技术图片

十一、管理员查看信息

admin管理员可以进行会话的管理与查看, 命令历史记录,录像的回放等功能

技术图片

技术图片

技术图片

更多功能请自行挖掘,觉得功能还不够,请自行二次开发.



jumpserver(代码片段)

jumpserver开源堡垒机名称定义:用户列表:登陆堡垒机的用户用户组:登陆堡垒机的用户所属的组资产列表:堡垒机所控制的服务器资源网域列表:相当于跳板机,就是当服务器无法直连时,而需要跳转登陆的机器管理用户:jumps... 查看详情

jumpserver的安装(代码片段)

...垒机也需要有身份认证,授权,访问控制,审计等功能。Jumpserver是一款由python编写开源的跳板机(堡垒机)系统,实现了跳板机应有的功能。基于ssh协议来管理,客户端无需安装agent。支持常见系统: 查看详情

jumpserver堡垒机(代码片段)

文章目录一、JumpServer堡垒机概述(1)什么是跳板机(2)什么是堡垒机(3)JumpServer概述(4)JumpServer实现的功能(5)JumpServer组件二、部署JumpServer堡垒机(1)实验环境ÿ 查看详情

linux之jumpserver堡垒机的部署/搭建(代码片段)

文章目录Jumpserver概述环境需求在线部署Jumpserver离线部署Jumpserver页面访问操作相关文章Jumpserver概述Jumpserver是一款使用Python,Django开发的开源跳板机系统,为互联网企业提供了认证,授权,审计,自动化运维等功能。JumpS... 查看详情

jumpserver堡垒机的搭建

堡垒机方便和简化了管理员对多个用户和多台服务器之间的联系 jumpserver是一个开源的软件1首先在jumpsrever官网下载650)this.width=650;"src="https://s3.51cto.com/wyfs02/M00/9C/0E/wKiom1lreG2iaGMIAABZW5r_Poo634.jpg-wh_500x0-wm_3-wmp_4-s_121432511. 查看详情

centos7.x安装开源堡垒机jumpserver(代码片段)

...lite-develxzgccautomakezlib-developenssl-develepel-releasegit安装redis,Jumpserver使用Redis做cache和celerybroke  yum-yinstallredis  systemctle 查看详情

jumpserver堡垒机对接elasticsearch集群存储命令(代码片段)

官网地址:JumpServer-开源堡垒机-官网在线电话:400-052-0755技术支持:JumpServer技术咨询1.为什么对接ElasticsearchJumpServer堡垒机默认配置把命令存储在数据库的「terminal_command」表,在管理大规模资产数量场景中相应的... 查看详情

部署jumpserver(代码片段)

博文结构jumpserver介绍安装jumpserver一.jumpserverJumpserver是一款由Python编写开源的跳板机(堡垒机系统),实现了跳板机的应有的功能,基于ssh协议来管理服务器资源,客户端不需要安装jumpserver客户端软件程序。*堡垒机介绍在特定... 查看详情

堡垒机跳板机jumpserver的搭建,以及使用,图文详细(代码片段)

...有身份认证,授权,访问控制,审计等功能。Jumpserver是一款由python编写开源的跳板机(堡垒机)系统,实现了跳板机应有的功能。基于ssh协议来管理,客户端无需安装agent。在公司中,分配人员服... 查看详情

社区访谈|一直伴随“我”成长的jumpserver开源堡垒机

编者注:2022年8月,JumpServer开源社区访谈了来自北京的开源社区用户孙国强,以下内容根据本次访谈的内容整理而成。■关键词:好用■首个部署版本:JumpServer开源堡垒机v2.9.1版本怎么认识JumpServer的?我... 查看详情

新增razor组件支持代理连接rdp,jumpserver堡垒机v2.23.0发布(代码片段)

2022年6月20日,JumpServer开源堡垒机正式发布v2.23.0版本。这一版本的JumpServer在X-Pack增强包中新增了Razor组件。该组件支持代理连接RDP协议资产,替代了JumpServer原有的XRDP组件,为用户提供更加流畅的连接体验。在原有XRDP... 查看详情

jumpserver堡垒机

 来源:知乎Jumpserver是一款由Python编写开源的跳板机(堡垒机)系统,实现了跳板机应有的功能。基于ssh协议来管理,客户端无需安装agent。特点:完全开源,GPL授权Python编写,容易再次开发实现了跳板机基本功能,认证、授权... 查看详情

web安全入门-部署堡垒机jumpserver

jumpserver简介:JumpServer是全球首款开源的堡垒机,使用GNUGPLv3.0开源协议,是符合4A规范的运维安全审计系统。JumpServer使用Python/Django为主进行开发,遵循Web2.0规范。总结,如果你企业对设备安全性有审计要求,或者说是要通过iso27... 查看详情

jumpserver部署安装(代码片段)

...垒机也需要有身份认证、授权、访问控制、审计等功能。Jumpserver是全球首款完全开源的堡垒机,是符合4A的专业运维审计系统。Jumpserver使用Python/Django进行开发,采纳分布式架构,支持多机房跨区域部署,中心节点提供API,各机房部署... 查看详情

jumpserver堡垒机linux部署(代码片段)

堡垒机一、堡垒机介绍​堡垒机,即为在特定的网络环境下,针对主机、数据库、网络设备等运维权限、运维行为进行管理和审计的工具。从而保障网络和数据不受外部和内部用户的入侵和破坏,避免主机账号服用、... 查看详情

一体机支持使用硬件设备国密加密,jumpserver堡垒机v2.26.0发布(代码片段)

2022年9月19日,JumpServer开源堡垒机正式发布v2.26.0版本。基于该版本的JumpServer一体机支持使用硬件设备的国密加密。认证方面,新版本的JumpServer支持用户自定义认证逻辑,满足了一部分企业用户使用独特认证方式的需... 查看详情

一体机支持使用硬件设备国密加密,jumpserver堡垒机v2.26.0发布(代码片段)

2022年9月19日,JumpServer开源堡垒机正式发布v2.26.0版本。基于该版本的JumpServer一体机支持使用硬件设备的国密加密。认证方面,新版本的JumpServer支持用户自定义认证逻辑,满足了一部分企业用户使用独特认证方式的需... 查看详情

基于docker搭建jumpserver堡垒机操作实践(代码片段)

...多的文档,其中最详细的还是官方文档,地址如下所示:Jumpserver文档二、操作概要1.系统运行2.配置入门3.测试验证三、系统运行在官方文档中安装堡垒机有很多种方法,这让笔者有些纠结,另外而且在不同系统中 查看详情