缺德地图持续迷路
- 简述
- 一、无脑快捷部署
- 二、简单快捷部署
- 关于setuptools的说明
- 关于组件安装失败的问题
本系列的全部内容为个人总结内容,皆源于JumpServer官网和其推出的教学课程。
JumpServer官网:https://www.jumpserver.org/
JumpServer官方文档: https://docs.jumpserver.org/zh/master/
JumpServer在B站发布的课程: https://www.bilibili.com/video/BV19D4y1S7s4/
简述
关于极速部署JumpServer,其实非常简单,只需要寥寥几步就可以完成部署工作,这里介绍两种部署方式,根据情况选择。
简单说一下环境,我这里采用的是阿里云主机,Centos7.6的发行版本,在此基础上进行部署的。
以下两种方法均在联网环境下进行,离线安装包可选择企业版或分别安装各组件。
一、无脑快捷部署
一条命令直接搞定
curl -sSL https://github.com/jumpserver/jumpserver/releases/download/v2.5.3/quick_start.sh | sh
部署完成后,会在终端界面上显示访问的URL和用户密码,按照提示访问即可。
我还是不建议使用这种方式的,全部配置都采用了默认,如果可以的话,最好能够根据需要修改一下端口之类的配置,这也就是第二种。
二、简单快捷部署
关于setuptools的说明
简单快捷部署就是采用jumpserver官网提供的安装工具包,我们需要了解的是:从 v2.6 开始 setuptools 不再维护,它的工作由 https://github.com/jumpserver/installer 来完成,installer 统一了社区和企业版的安装,并且可以做到无缝迁移。
GitHub地址:https://github.com/jumpserver/setuptools
基础准备
cd /opt
yum -y install wget git #下载工具
git clone --depth=1 https://github.com/jumpserver/setuptools.git #克隆JumpServer工具包,此过程有些缓慢,需耐心等待
cd setuptools
cp config_example.conf config.conf #修改配置文件名称
完成后就可以修改配置了,以下列举的是默认的配置文件,可以根据需求更改
vi config.conf
# 以下设置默认情况下不需要修改, 系统会自动生成随机字符串填入
# 需要安装的版本
Version=v2.5.3
# Jms 加密配置
SECRET_KEY=
BOOTSTRAP_TOKEN=
# 数据库 配置, 如果 数据库 安装在其他的服务器, 请修改下面设置
DB_HOST=127.0.0.1
DB_PORT=3306
DB_USER=jumpserver
DB_PASSWORD=
DB_NAME=jumpserver
# Redis 配置, 如果 Redis 安装在其他的服务器, 请修改下面设置
REDIS_HOST=127.0.0.1
REDIS_PORT=6379
REDIS_PASSWORD=
# 服务端口设置, 如果云服务器未备案请修改 http_port 端口为其他端口
http_port=80
ssh_port=2222
# 服务安装目录
install_dir=/opt
Server_IP=$(ip addr | grep 'state UP' -A2 | grep inet | egrep -v '(127.0.0.1|inet6|docker)' | awk '{print $2}' | tr -d "addr:" | head -n 1 | cut -d / -f1)
Docker_IP=$(ip addr | grep docker.* | grep inet | awk '{print $2}' | head -n 1)
if [ ! "$Server_IP" ]; then
Server_IP=$(hostname -I | cut -d ' ' -f1)
fi
这里我修改一下http和ssh端口号,关于MySQL和Redis空密码的情况,后续JumpServer会自动生成一串字符,这个可以不用理会。
接下来,就开始执行安装脚本了
其中jmsctl.sh为JumpServer的安装脚本,通过-h查看帮助
[root@JumpServer setuptools]# ./jmsctl.sh -h
__ _____
/ /_ ______ ___ ____ / ___/___ ______ _____ _____
__ / / / / / __ `__ \/ __ \\__ \/ _ \/ ___/ | / / _ \/ ___/
/ /_/ / /_/ / / / / / / /_/ /__/ / __/ / | |/ / __/ /
\____/\__,_/_/ /_/ /_/ .___/____/\___/_/ |___/\___/_/
/_/
Version: v2.5.3
JumpServer 部署安装脚本
Usage:
jmsctl [COMMAND] ...
jmsctl --help
Commands:
install 安装 JumpServer
start 启动 JumpServer
stop 停止 JumpServer
restart 重启 JumpServer
status 检查 JumpServer
uninstall 卸载 JumpServer
upgrade 升级 JumpServer
reset 重置组件
安装JumpServer
./jmsctl.sh install
期间组件安装较多,需耐心等待,其中关于JumpServer的几个核心组件,是基于Docker运行的。
最终结果显示以下内容,就代表部署完成了
启动JumpServer
[root@JumpServer setuptools]# ./jmsctl.sh start
__ _____
/ /_ ______ ___ ____ / ___/___ ______ _____ _____
__ / / / / / __ `__ \/ __ \\__ \/ _ \/ ___/ | / / _ \/ ___/
/ /_/ / /_/ / / / / / / /_/ /__/ / __/ / | |/ / __/ /
\____/\__,_/_/ /_/ /_/ .___/____/\___/_/ |___/\___/_/
/_/
Version: v2.5.3
MySQL start ........................ [ OK ]
Redis Start ........................ [ OK ]
Docke. Start ........................ [ OK ]
Core Start ........................ [ OK ]
Koko Start ........................ [ OK ]
Guaca. Start ........................ [ OK ]
Nginx Start ........................ [ OK ]
MySQL Check ........................ [ OK ]
Redis Check ........................ [ OK ]
Docke. Check ........................ [ OK ]
Nginx Check ........................ [ OK ]
Py3 Check ........................ [ OK ]
Core Check ........................ [ OK ]
Koko Check ........................ [ OK ]
Guaca. Check ........................ [ OK ]
JumpServer 启动成功!
Web 登陆信息: http://192.168.0.192:180
SSH 登录信息: ssh admin@192.168.0.192 -p12222
初始用户名密码: admin admin
[如果你是云服务器请在安全组放行 180 和 12222 端口]
因为是采用云主机的原因,JumpServer只能检测到内网IP,这里我们通过公网IP访问,加上我们配置好的端口。
以上JumpServer极速部署就完成了。
关于组件安装失败的问题
有时JumpServer的核心组件并不能全部启动,我在部署的过程中就遇到了Core组件ERROR的问题。
这种情况遇到了很多次,在脚本中就有很好的解决方法
可以通过脚本重置JumpServer的组件,就比如说重置core
./jmsctl.sh reset core
当这个行不通的时候,可以重置所有组件
./jmsctl.sh reset all
这里说的所有组件,其实是JumpServer的几个核心组件,不会影响其他插件,在我看来就是通过Docker重新拉取一遍镜像启动而已。