堡垒机是什么?
人类并不偏爱风险,运维也是如此,运维偏爱效率,但是风险始终如影随形,好比硬币的正反面,风险和效率需要一个完美的平衡,堡垒机就是平衡效率的风险工具。
安全永远是业务的一个属性,国家安全是国家业务的属性,网络安全是网络业务的属性,运维安全是运维业务的属性,而对运维这个业务的深刻理解决定了堡垒机是什么!
关于堡垒机哲学史 | 三个问题:堡垒机从哪里来?到哪里去?是什么?
https://blog.csdn.net/qizhitech/article/details/91833234
JumpServer
JumpServer 是全球首款开源的堡垒机,使用 GNU GPL v2.0 开源协议,是符合 4A 规范的运维安全审计系统。
JumpServer 使用 Python / Django 为主进行开发,遵循 Web 2.0 规范,配备了业界领先的 Web Terminal 方案,交互界面美观、用户体验好。
JumpServer 采纳分布式架构,支持多机房跨区域部署,支持横向扩展,无资产数量及并发限制。
核心功能
身份认证 Authentication
支持 LDAP / AD,支持 OpenID,支持 MFA 等
账号管理 Account
支持账号集中管理、密码统一管理、资产用户收集等
授权控制 Authorization
支持资产授权、应用授权、动作授权、时间授权、特权授权等
安全审计 Audit
支持操作审计、会话审计、录像审计、指令审计和文件传输审计等
JumpServer 部署
JumpServer 提供多种部署方式,如极速部署,容器部署,分布式部署,Ansible部署。初次使用建议使用极速部署以熟悉其内部各个组件及配置参数。
JumpServer官方文档
https://jumpserver.readthedocs.io/zh/master/install/setup_by_fast/
JumpServer 1.5.8 极速安装视频
https://www.bilibili.com/video/bv19a4y1i7i9
访问 JumpServer Web
JumpServer 使用Nginx服务发布web应用,默认使用http协议,生产环境建议使用https协议并开启双因子认证。
http://ip
默认用户名/密码:admin/admin
开启多因子认证:Google Authenticator
JumpServer 架构图
JumpServer 插件
Jumpserver 管理后台,是核心组件(Core), 使用 Django Class Based View 风格开发,支持 Restful API。
Coco
Coco为 SSH Server 和 Web Terminal Server。用户可以通过使用自己的账户登录 SSH 或者 Web Terminal直接访问被授权的资产。不需要知道服务器的账户和密码,现在 Coco 已经被 koko 取代。
Luna
luna 为 Web Terminal Server 前端页面,用户使用 Web Terminal 方式登录时所需要的插件。
Guacamole
Guacamole是一个开源项目,为远程桌面提供解决方案。,Jumpserver 使用其组件实现 RDP和VNC 功能,Jumpserver 并没有修改其代码而是添加了额外的插件,支持 Jumpserver 调用。
JumpServer组件及其监听端口
Jumpserver:8080/tcp
Redis:6379/tcp
MySQL/Mariadb:3306/tcp
Nginx:80/tcp
Koko:SSH为2222/tcp,Web Terminal为5000/tcp
Guacamole:8081/tcp
koko和guacamole插件验证
koko和guacamole插件使用docker部署,验证方式如下:
docker images
docker ps
打开“会话管理”->“终端管理”,由于装了koko和guacamole,故正常情况下会有两个终端设备,若没有出现,则koko和guacamole可能安装没成功,如下图所示。
JumpServer 维护
JumpServer 安装脚本
/opt/setuptools/scripts