秋栈博客

七月

CentOS 7 离线安装JumpServer

5
2022-08-10

CentOS 7 离线安装JumpServer

1、介绍

1.1、堡垒机和jumpserver

堡垒机
堡垒机即跳板机,就是一台服务器,开发或者运维人员在维护时要先登录这台服务器,然后通过该服务器登录到目标主机上然后进行维护和操作。 但是,普通的跳板机不能对运维人员的操作进行控制和审计,如果运维人员误操作导致系统问题,很难进行事故定责和快速定位原因。 堡垒机是在跳板机的基础上,弥补了跳板机的一系列缺点,比跳板机多了实时收集、监控网络环境、集中报警等功能。堡垒机是指在一个网络环境中,为了保护数据和网络不受外来人员和内部用户的入侵和破坏,而运用各种技术手段实现收集和监控网络环境中每一个组成部分的系统状态、安全事件、网络活动,以便于实现集中报警、及时处理和审计定责。
Jumpserver
JumpServer 是全球首款开源的堡垒机,使用 GNU GPL v3.0 开源协议,是符合 4A 规范的运维安全审计系统。 JumpServer 使用 Python / Django 为主进行开发,遵循 Web 2.0 规范,配备了业界领先的 Web Terminal 方案,交互界面美观、用户体验好。 JumpServer 采纳分布式架构,支持多机房跨区域部署,支持横向扩展,无资产数量及并发限制。

1.2、优势

  • 开源:零门槛,线上快速获取和安装;
  • 分布式:轻松支持大规模并发访问;
  • 无插件:仅需浏览器,极致的 Web Terminal 使用体验;
  • 多云支持:一套系统,同时管理不同云上面的资产;
  • 云端存储:审计录像云端存储,永不丢失;
  • 多租户:一套系统,多个子公司和部门同时使用;
  • 多应用支持:数据库,Windows远程应用,Kubernetes。

1.3、功能

https://www.jumpserver.org/features.html

2、安装

官网下载地址: https://community.fit2cloud.com/#/download/jumpserver/

2.1、直接在服务器上wget下载

wget https://cdn0-download-offline-installer.fit2cloud.com/jumpserver/jumpserver-offline-installer-v2.24.2-amd64-47.tar.gz?Expires=1662635692&OSSAccessKeyId=LTAI5tLEMt8jTT4RDrZ9mXns&Signature=ibP4pF7mzwNJkhyY5P6CAKsNccI%3D
查看下载
[root@jump-server ~]# ls
jumpserver-offline-installer-v2.24.2-amd64-47.tar.gz

2.2、解压安装

移动压缩包到opt目录
mv jumpserver-offline-installer-v2.24.2-amd64-47.tar.gz /opt/

tar -xvf jumpserver-offline-installer-v2.24.2-amd64-47.tar.gz
移动到解压目录
[root@jump-server opt]# cd jumpserver-offline-installer-v2.24.2-amd64-47/
[root@jump-server jumpserver-offline-installer-v2.24.2-amd64-47]# ls
compose             config_init  LICENSE  quick_start.sh  scripts     utils
config-example.txt  jmsctl.sh    locale   README.md       static.env

2.3、修改配置文件

# 根据需要修改配置文件模板, 如果不清楚用途可以跳过修改
vim config-example.txt

# 以下设置如果为空系统会自动生成随机字符串填入
## 迁移请修改 SECRET_KEY 和 BOOTSTRAP_TOKEN 为原来的设置
## 完整参数文档 https://docs.jumpserver.org/zh/master/admin-guide/env/

## 安装配置, amd64 默认使用华为云加速下载, arm64 请注释掉 DOCKER_IMAGE_PREFIX=swr.cn-south-1.myhuaweicloud.com
# DOCKER_IMAGE_PREFIX=swr.cn-south-1.myhuaweicloud.com
VOLUME_DIR=/opt/jumpserver
DOCKER_DIR=/var/lib/docker
SECRET_KEY=jumpserver
BOOTSTRAP_TOKEN=
LOG_LEVEL=ERROR

##  MySQL 配置, USE_EXTERNAL_MYSQL=1 表示使用外置数据库, 请输入正确的 MySQL 信息
USE_EXTERNAL_MYSQL=0
DB_HOST=mysql
DB_PORT=3306
DB_USER=root
DB_PASSWORD=jumpserver
DB_NAME=jumpserver

##  Redis 配置, USE_EXTERNAL_REDIS=1 表示使用外置数据库, 请输入正确的 Redis 信息
USE_EXTERNAL_REDIS=0
REDIS_HOST=redis
REDIS_PORT=6379
REDIS_PASSWORD=jumpserver

## Compose 项目设置, 如果 192.168.250.0/24 网段与你现有网段冲突, 请修改然后重启 JumpServer
COMPOSE_PROJECT_NAME=jms
COMPOSE_HTTP_TIMEOUT=3600
DOCKER_CLIENT_TIMEOUT=3600
DOCKER_SUBNET=192.168.250.0/24

## IPV6 设置, 容器是否开启 ipv6 nat, USE_IPV6=1 表示开启, 为 0 的情况下 DOCKER_SUBNET_IPV6 定义不生效
USE_IPV6=0
DOCKER_SUBNET_IPV6=fc00:1010:1111:200::/64

## 访问配置
HTTP_PORT=80
SSH_PORT=2222
MAGNUS_MYSQL_PORT=33060
MAGNUS_MARIADB_PORT=33061

## HTTPS 配置, 参考 https://docs.jumpserver.org/zh/master/admin-guide/proxy/ 配置
# USE_LB=1
# HTTPS_PORT=443
# SERVER_NAME=your_domain_name
# SSL_CERTIFICATE=your_cert
# SSL_CERTIFICATE_KEY=your_cert_key

## Nginx 文件上传大小
CLIENT_MAX_BODY_SIZE=4096m

## Task 配置, 是否启动 jms_celery 容器, 单节点必须开启
USE_TASK=1

## XPack, USE_XPACK=1 表示开启, 开源版本设置无效
USE_XPACK=0
RDP_PORT=3389
MAGNUS_POSTGRE_PORT=54320
TCP_SEND_BUFFER_BYTES=4194304
TCP_RECV_BUFFER_BYTES=6291456

# Core 配置, Session 定义, SESSION_COOKIE_AGE 表示闲置多少秒后 session 过期, SESSION_EXPIRE_AT_BROWSER_CLOSE=True 表示关闭浏览器即 session 过期
# SESSION_COOKIE_AGE=86400
SESSION_EXPIRE_AT_BROWSER_CLOSE=True

# Koko Lion XRDP 组件配置
CORE_HOST=http://core:8080
JUMPSERVER_ENABLE_FONT_SMOOTHING=True

## 终端使用宿主 HOSTNAME 标识
SERVER_HOSTNAME=${HOSTNAME}

# 额外的配置
CURRENT_VERSION=

2.4、安装

# 安装
./jmsctl.sh install
>>> 安装配置 JumpServer
1. 配置加密密钥
BOOTSTRAP_TOKEN: NjMyM2I2MDgtOWY4ZC00OTAz
完成

2. 配置持久化目录
是否需要自定义持久化存储, 默认将使用目录 /opt/jumpserver? (y/n)  (默认为 n): y

修改日志录像等持久化的目录,可以找个最大的磁盘,并创建目录,如 /data/jumpserver
注意:安装后不能更改,否则数据库可能会丢失

文件系统        容量  已用  可用 已用% 挂载点
/dev/vda1        79G   14G   62G   19% /
2. 配置持久化目录
是否需要自定义持久化存储, 默认将使用目录 /opt/jumpserver? (y/n)  (默认为 n): y

持久化存储目录 (默认为 /opt/jumpserver):enter

3. 配置 MySQL
是否使用外部 MySQL? (y/n)  (默认为 n):enter

4. 配置 Redis
是否使用外部 Redis? (y/n)  (默认为 n):enter

5. 配置对外端口
是否需要配置 JumpServer 对外访问端口? (y/n)  (默认为 n): y
JumpServer web 端口 (默认为 80):
JumpServer ssh 端口 (默认为 2222):

2.5、开启面板并访问WEB页面

# 启动
./jmsctl.sh start
默认账号密码:admin,首次登录需修改密码
支持多种消息通知

3、入门使用教程

3.1、添加用户

3.2、创建网域

image-20220810093625700

3.3、添加资产

创建分类
image-20220810093726905
添加主机
 
后台创建资产账号
image-20220810094409491
资产关联账号
测试链接
刷新资产

3.4、添加普通用户

[root@zabbix-server ~]# useradd test
[root@zabbix-server ~]# passwd test
更改用户 test 的密码 。
新的 密码:
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
jumpserver添加用户
关联资产

3.5、创建命令过滤

3.6、登录测试用户

image-20220810102124442
  • 0