1、堡垒机介绍
在特定网络环境中(如内网和外网),为了保证公司网络中的服务器数据不受外界的入侵和破坏,运用各种技术手段收集和监控公司服务器的状态,安全时间、以便集中报警,并且及时处理。
我们又把堡垒机叫做跳板机,简易的跳板机功能简单,主要核心功能是远程登陆服务器和日志审计。
比较优秀的开源软件jumpserver,功能齐全如: 认证、授权、审计、自动化、资产管理(内网服务器资源分配)等。
2、jumpserver介绍
Jumpserver是一款由Python编写开源的跳板机(堡垒机系统),实现了跳板机的应有的功能,基于ssh协议来管理服务器资源,客户端不需要安装jumpserver客户端软件程序
3、Jumpserver的特点
完全开源
Python编写,容易二次开发使用
实现了跳板机的基本功能、认证、授权、审计、集成了ansible,批量命令等
支持web Terminal (web终端,可以在浏览器web页面运行终端,管理服务器资源)
Bootstrap编写,界面美观 (前端页面效果,由web前端人员完成的)
自动收集硬件信息 (如后端服务器的磁盘空间,内存大小等资源信息)
录像回放
命令搜索 (简单理解就是后端服务器系统能够运行的命令,可以收集到,方便管理)
实时监控
4.架构图如下:

用户通过浏览器访问到nginx代理服务器页面,nginx服务器在jump架构中是作为一台代理服务器,用来代jumpserver程序、coco程序、luna程序、guacamole程序的web页面,方便用户使用,如果不采用nginx做代理服务器的话,用户访问页面时比较麻烦(如coco程序需要用到8080端口guncamole需要别的端口,使用起来不方便,而且后续的页面跳转有可能会导致not found),nginx调取luna程序设置终端采用ssh协议连接后端资产(后端服务器)
5.Jumpserver包含四个组件,各个组件的作用如下:
Jumpserver 为管理后台, 管理员可以通过 Web 页面进行资产管理、用户管理、资产授权等操作, 用户可以通过 Web 页面进行资产登录, 文件管理等操作
Coco 为 SSH Server 和 Web Terminal Server 。用户可以使用自己的账户通过 SSH 或者 Web Terminal 访问 SSH 协议和 Telnet 协议资产
Luna 为 Web Terminal Server 前端页面, 用户使用 Web Terminal 方式登录所需要的组件
Guacamole 为 RDP 协议和 VNC 协议资产组件, 用户可以通过 Web Terminal 来连接 RDP 协议和 VNC 协议资产 (暂时只能通过 Web Terminal 来访问)
端口说明
各个组件的监听端口如下:
Jumpserver 默认端口为 8080/tcp 配置文件 jumpserver/config.yml
Coco 默认 SSH 端口为 2222/tcp, 默认 Web Terminal 端口为 5000/tcp 配置文件在 coco/config.yml
Guacamole 默认端口为 8081/tcp, 配置文件 /config/tomcat8/conf/server.xml
Nginx 默认端口为 80/tcp
Redis 默认端口为 6379/tcp
Mysql 默认端口为 3306/tcp

一、环境如下
Centos 7
数据库 Mariadb
反向代理 Nginx
后台测试资产服务器 192.168.1.136
Jumpserver 192.168.1.139
注:若是测试环境,内存最少4G,双核CPU
所需源码包:
提取码:a8uf
1.首先需要将环境字体设置成中文,因为jumpserver的日志文件里面的内容会包含中文字符,不支持可能会乱码。
[root@jumpserver ~]# localedef -c -f UTF-8 -i zh_CN zh_CN.UTF-8
[root@jumpserver ~]# export LC_ALL=zh_CN.UTF-8
[root@jumpserver ~]# echo 'LC_ALL=zh_CN.UTF-8' > /etc/locale.conf
二、配置Python 3 环境
[root@jumpserver jumpserver]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo # 下载所需yum源
[root@jumpserver jumpserver]# yum -y install wget sqlite-devel xz gcc automake zlib-devel openssl-devel epel-release git # 安装依赖包
[root@jumpserver /]# mkdir jumpserver # 个人习惯
[root@jumpserver /]# cd jumpserver/
[root@jumpserver jumpserver]# rz # 上传所需软件包
[root@jumpserver jumpserver]# tar xf Python-3.6.1.tar.xz # 解包
[root@jumpserver jumpserver]# cd Python-3.6.1/
[root@jumpserver Python-3.6.1]# ./configure && make && make install # 编译并安装
[root@jumpserver Python-3.6.1]# cd /opt/
[root@jumpserver opt]# python3 -m venv py3
[root@jumpserver opt]# source /opt/py3/bin/activate # 执行脚本进入Python3 环境
#设置自动载入py3虚拟环境(以后只要进入这个目录就是Py3的环境)
(py3) [root@jumpserver opt]# cd /jumpserver/
(py3) [root@jumpserver jumpserver]# unzip autoenv.zip -d /opt/
(py3) [root@jumpserver jumpserver]# cd /opt/autoenv
(py3

本文介绍了Jumpserver堡垒机的部署安装过程,包括环境准备、Python环境配置、MySQL和Redis安装、组件安装和配置,以及用户创建、资产授权等步骤。Jumpserver是一款开源的跳板机系统,提供认证、授权、审计和资产管理等功能,便于安全管理内网服务器资源。

2851

被折叠的 条评论
为什么被折叠?



