前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【玩转Lighthouse】使用宝塔面板搭建jumpserver开源堡垒机

【玩转Lighthouse】使用宝塔面板搭建jumpserver开源堡垒机

作者头像
zuantou
发布2022-09-16 14:07:24
1.7K0
发布2022-09-16 14:07:24
举报
文章被收录于专栏:钻头的个人博客

前言

JumpServer 是全球首款开源的堡垒机,使用 GNU GPL v3.0 开源协议,是符合 4A 规范的运维安全审计系统。 JumpServer 使用 Python / Django 为主进行开发,遵循 Web 2.0 规范,配备了业界领先的 Web Terminal 方案,交互界面美观、用户体验好。

环境准备 jumpserver官方文档中提供了多种部署方法。但这些都需要完全在命令行中操作,且要求纯净环境安装,导致无法再使用服务器搭建其他网站应用,不便于新手进行后期维护。下面将采用腾讯云轻量应用服务器,安装可视化的 宝塔Linux面板 进行部署演示,尽可能减少部署维护难度,助力保证私有云财产安全运维。如果你还没有服务器,可以前往腾讯云热门云产品首单特惠秒杀页面购买,低至45元/年。记得选购 轻量应用服务器 产品: https://cloud.tencent.com/act/ 创建好自己的轻量应用服务器后,进入控制台重装系统,选择 宝塔Linux面板 镜像安装。

成功重装系统后,点击 应用管理 选项卡,根据提示获取宝塔面板的登录信息登录进宝塔面板,绑定宝塔账号

然后进入宝塔面板的软件商店,安装下列依赖软件

代码语言:javascript
复制
Nginx 1.20
MySQL 5.7
Docker管理器
Redis 6.2

回到腾讯云轻量应用服务器后台,找到 网络信息——IP地址中 的服务器内网IP

打开redis软件的设置页面,将 性能调整 中的bind条目改为刚刚查看到的服务器内网IP

打开宝塔面板的 数据库 选项卡,创建数据库。访问权限选择 指定IP ,并在后面的输入框中粘贴服务器内网IP

安装jumpserver 进入文件管理,在 /www/wwwroot 目录下使用远程下载功能下载jumpserver代码包,下载地址如下。完成下载后点击解压

代码语言:javascript
复制
https://github.com/jumpserver/installer/releases/download/v2.20.2/jumpserver-installer-v2.20.2.tar.gz

打开 /www/wwwroot/jumpserver-installer-v2.20.2/config-example.txt 文件,参考 官方文档 根据自己的需要进行修改;也可以使用下面我的配置信息

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

## 安装配置, 可以使用华为云加速下载, arm64 用户需要注释掉 DOCKER_IMAGE_PREFIX
# DOCKER_IMAGE_PREFIX=swr.cn-south-1.myhuaweicloud.com
VOLUME_DIR=/www/wwwroot/jumpserver
DOCKER_DIR=/var/lib/docker
SECRET_KEY=
BOOTSTRAP_TOKEN=
LOG_LEVEL=ERROR

##  MySQL 配置, USE_EXTERNAL_MYSQL=1 表示使用外置 MySQL, 请输入正确的 MySQL 信息
USE_EXTERNAL_MYSQL=1
DB_HOST=服务器内网IP
DB_PORT=3306
DB_USER=jumpserver
DB_PASSWORD=
DB_NAME=jumpserver

##  Redis 配置, USE_EXTERNAL_REDIS=1 表示使用外置 Redis, 请输入正确的 Redis 信息
USE_EXTERNAL_REDIS=1
REDIS_HOST=服务器内网IP
REDIS_PORT=6379
REDIS_PASSWORD=

## 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

## Nginx 配置
HTTP_PORT=8080
SSH_PORT=2222
RDP_PORT=3389

## 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

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

## XPack, USE_XPACK=1 表示开启, 开源版本设置无效
USE_XPACK=0

## 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

## Lion 开启字体平滑
JUMPSERVER_ENABLE_FONT_SMOOTHING=true

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

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

## 额外的配置
CURRENT_VERSION=

完成后回到腾讯云的控制台,使用 远程连接 功能进入服务器命令行,执行下面命令

代码语言:javascript
复制
sudo su
cd /www/wwwroot/jumpserver-installer-*
./jmsctl.sh install

根据脚本的提示做出回答即可。大部分都可以直接回车使用默认设置,但是如果使用的是我的配置信息,出现下面提示时需要替换成你自己的服务器内网IP

代码语言:javascript
复制
Please enter MySQL server IP
Please enter Redis server IP

出现下面提示时请输入上面宝塔自动生成的MySQL密码

代码语言:javascript
复制
Please enter MySQL password (no default): 

安装脚本会自动完成部署。

提示安装成功后,执行下面命令启动

代码语言:javascript
复制
./jmsctl.sh start

然后在宝塔面板网站选项卡内创建一个网站,并设置反向代理。

代码语言:javascript
复制
目标URL  http://127.0.0.1:8080

点开配置文件,使用以下内容替换默认配置,否则web终端无法正常工作。

代码语言:javascript
复制
    client_max_body_size 4096m;  # 上传文件大小限制

    location / {
            # 这里的 ip 是后端 JumpServer nginx 的 ip
            proxy_pass http://127.0.0.1:8080;
            proxy_http_version 1.1;
            proxy_buffering off;
            proxy_request_buffering off;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $remote_addr;
    }

出于安全考虑,你还可以设置堡垒机使用https访问

这时就可以使用你宝塔绑定的域名在浏览器中访问jumpserver了:

代码语言:javascript
复制
默认用户名:admin
默认密码:admin

回到控制台 创建特权用户,也就是把你服务器的root用户密码添加到上面。

创建资产,这里以连接本机为例。特权用户选择刚才新创建的root用户

给自己办理授权

使用jumpserver自带的终端或者xshell等终端连接,完美

PS:如需使用xshell等终端连接堡垒机操作服务器,请使用以下服务器信息,请连接到堡垒机服务器的2222端口,并在鉴权时输入你jumpserver的用户名和密码,而不是root,如图

运维完成后,进入审计台享受jumpserver强大的审计和风险控制功能吧

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年04月12日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
轻量应用服务器
轻量应用服务器(TencentCloud Lighthouse)是新一代开箱即用、面向轻量应用场景的云服务器产品,助力中小企业和开发者便捷高效的在云端构建网站、Web应用、小程序/小游戏、游戏服、电商应用、云盘/图床和开发测试环境,相比普通云服务器更加简单易用且更贴近应用,以套餐形式整体售卖云资源并提供高带宽流量包,将热门软件打包实现一键构建应用,提供极简上云体验。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档