CentOS下搭建Jumpserver堡垒机_centos jumpserver

  • 审计:你做了什么?(What)
  • 授权:你能做哪些?(Which)
  • 账号:你要去哪?(Where)
  • 认证:你是谁?(Who)
  • 来源:访问时间?(When)

堡垒机的价值

  • 集中管理
  • 集中权限分配
  • 统一认证
  • 集中审计
  • 数据安全
  • 运维高效
  • 运维合规
  • 风险管控

堡垒机的原理

在这里插入图片描述

目前常见堡垒机的主要功能分为以下几个模块:

1、运维平台

  • RDP/VNC运维;SSH/Telnet运维;SFTP/FTP运维;数据库运维;Web系统运维;远程应用运维;

2、管理平台

  • 三权分立;身份鉴别;主机管理;密码托管;运维监控;电子工单;

3、自动化平台

  • 自动改密;自动运维;自动收集;自动授权;自动备份;自动告警;

4、控制平台

  • IP防火墙;命令防火墙;访问控制;传输控制;会话阻断;运维审批;

5、审计平台

  • 命令记录;文字记录;SQL记录;文件保存;全文检索;审计报表;

说明:三权分立

三权的理解:配置,授权,审计

三员的理解:系统管理员,安全保密管理员,安全审计员

三员之三权:废除超级管理员;三员是三角色并非三人;安全保密管理员与审计员必须非同一个人。

堡垒机的身份认证

堡垒机主要就是为了做统一运维入口,所以登录堡垒机必须支持灵活的身份认证方式,比如:

1、本地认证

  • 本地账号密码认证,一般支持强密码策略

2、远程认证

  • 一般可支持第三方AD/LDAP/Radius认证

3、双因子认证

  • UsbKey、动态令牌、短信网关、手机APP令牌等

4、第三方认证系统

  • OAuth2.0、CAS等。

堡垒机的常见运维方式

  • B/S运维:通过浏览器运维。
  • C/S运维:通过客户端软件运维,比如Xshell,CRT等。
  • H5运维:直接在网页上可以打开远程桌面,进行运维。无需安装本地运维工具,只要有浏览器就可以对常用协议进行运维操作,支持ssh、telnet、rlogin、rdp、vnc协议
  • 网关运维:采用SSH网关方式,实现代理直接登录目标主机,适用于运维自动化场景。

堡垒机的其他常见功能

  • 文件传输:一般都是登录堡垒机,通过堡垒机中转。使用RDP/SFTP/FTP/SCP/RZ/SZ等传输协议传输。
  • 细粒度控制:可以对访问用户、命令、传输等进行精细化控制。
  • 支持开放的API

堡垒机的部署方式

1、单机部署
堡垒机主要都是旁路部署,旁挂在交换机旁边,只要能访问所有设备即可。

部署特定:

  • 旁路部署,逻辑串联。
  • 不影响现有网络结构。
    2、HA高可靠部署
    旁路部署两台堡垒机,中间有心跳线连接,同步数据。对外提供一个虚拟IP。

部署特点:

  • 两台硬件堡垒机,一主一备/提供VIP。
  • 当主机出现故障时,备机自动接管服务。
    3、异地同步部署
    通过在多个数据中心部署多台堡垒机。堡垒机之间进行配置信息自动同步。

部署特点:

  • 多地部署,异地配置自动同步
  • 运维人员访问当地的堡垒机进行管理
  • 不受网络/带宽影响,同时祈祷灾备目的
    4、集群部署(分布式部署)

当需要管理的设备数量很多时,可以将n多台堡垒机进行集群部署。其中两台堡垒机一主一备,其他n-2台堡垒机作为集群节点,给主机上传同步数据,整个集群对外提供一个虚拟IP地址。

部署特点:

  • 两台硬件堡垒机,一主一备、提供VIP
  • 当主机出现故障时,备机自动接管服务。

开源产品

目前,常用的堡垒机有收费和开源两类。收费的有行云管家、纽盾堡垒机,开源的有jumpserver。这几种各有各的优缺点,如何选择,大家可以根据实际场景来判断。

什么是Jumpserver

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

特点:

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

Jumpserver3.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解压缩即可
在这里插入图片描述
三、执行快速安装脚本

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

五、Web登录

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

六、更新代码

cd /opt/jumpserver git pull

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

下面开始要仔细看咯

一、用户管理

1)添加用户

点击用户管理 —> 查看用户 —> 添加用户
在这里插入图片描述
输入要添加的用户名,姓名,权限,Mail,并且发送邮件 —> 保存
在这里插入图片描述
查看添加的用户
在这里插入图片描述
查看用户邮件 邮件中包含了用户名,权限,web密码,ssh 密钥密码,以及密钥下载地址。
在这里插入图片描述
2)添加用户组

点击用户管理 —> 查看用户组 —> 添加用户组
在这里插入图片描述
添加新的小组 —> 运维小组
在这里插入图片描述
查看刚才添加的组
在这里插入图片描述
二、资产管理

1)添加资产组

点击资产管理 —> 查看资产组 —> 添加主机组
在这里插入图片描述
输入组名称,并且输入描述组用途
在这里插入图片描述
2)添加资产

点击资产管理 —> 查看资产 —> 添加资产
在这里插入图片描述
输入主机名,主机IP,管理用户名(管理员用户,主机中必须存在的哦~ 可以是root),端口,资产组 —> 提交保存
在这里插入图片描述
3)添加机房

点击资产管理 —> 查看机房 —> 添加机房
在这里插入图片描述
输入机房名称,其他的可以选填 —> 保存
在这里插入图片描述
三、权限管理

1)sudo

点击权限管理 —> sudo —> 添加别名
在这里插入图片描述
输入别名,系统命令,备注 —> 点击保存
在这里插入图片描述
2)添加系统用户

点击授权管理 —> 系统用户 —> 添加系统用户
在这里插入图片描述
输入用户名,密码,管理的sudo及备注 —> 单击保存
在这里插入图片描述
创建好系统之后,单击推送,将用户名、密码、sudo的信息推送到服务器。
在这里插入图片描述
选择系统用户,资产组 —> 单击保存

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数软件测试工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年软件测试全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上软件测试开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注软件测试)
img

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

12863216106)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上软件测试开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注软件测试)
[外链图片转存中…(img-tBP21k5D-1712863216107)]

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 11
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值