部署Jumpserver1.4.8运行环境部署搭建

原创 浪子丶刘少  2019-08-09 15:20  阅读 335 次 评论 4 条 百度未收录

这几天抽空有折腾了下jumpserver堡垒机,话说jumpserver堡垒机在1.4版本以后改动还真的挺大,几个主配置文件都从以前的.py文件变成今天的.yml文件,也不再需要导入数据库,功能上也强大了很多,这里公布一下具体的部署文档。

将分为《部署Jumpserver运行环境》《安装 Coco组件部署》《Luna组件Web-Terminal部署》《配置 Nginx 整合各组件》四部分组成,可以在一台服务器上,当然如果你开心也可以使用多台服务器,具体流程都是一致。今天先来看《部署Jumpserver运行环境

一、准备环境

1、关闭selinux

sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
setenforce 0
# 可以设置配置文件永久关闭

2、关闭firewalld

systemctl stop firewalld.service ; systemctl disable firewalld.service
注:我这里为了省事将防火墙直接关闭,如果你们有特殊不能关闭,开启相应端口就ok

3、修改中文字符集

localedef -c -f UTF-8 -i zh_CN zh_CN.UTF-8
export LC_ALL=zh_CN.UTF-8
echo 'LANG=zh_CN.UTF-8' > /etc/locale.conf
exit
#退出重新登陆

注:不修改可能报 input/output error的问题,因为日志里打印了中文。

4、安装基础依赖包

yum -y install wget gcc epel-release git vim

二、安装基础服务

1、安装 Redis

yum -y install redis
systemctl enable redis
systemctl start redis

#修改redis配置文件开放访问IP
vim /etc/redis.conf
修改
bind 127.0.0.1
为
bind 服务器IP 127.0.0.1
注: Jumpserver 使用 Redis 做 cache 和 celery broke

2、安装 MySQL

yum -y install mariadb mariadb-devel mariadb-server MariaDB-shared
systemctl enable mariadb
systemctl start mariadb
mysql_secure_installation

3、创建数据库 Jumpserver 并授权

DB_PASSWORD=`cat /dev/urandom | tr -dc A-Za-z0-9 | head -c 24`
echo "DB_PASSWORD=$DB_PASSWORD" >> ~/.bashrc
echo "你的数据库密码为: $DB_PASSWORD " >> /root/passwd
mysql -uroot -e "create database jumpserver default charset 'utf8'; grant all on jumpserver.* to 'jumpserver'@'127.0.0.1' identified by '$DB_PASSWORD'; flush privileges;"
注:如果不使用 Mysql 可以跳过相关 Mysql 安装和配置, 支持sqlite3, mysql, postgres等

4、安装 Nginx

vim /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1

yum -y install nginx
systemctl enable nginx
#注:此处配置yum文件是因为最新版的nginx和老版本已经有很大改动,主配文件server模块移动至新文件

注:用作代理服务器整合 Jumpserver 与各个组件

5、安装 Python3.6

yum -y install python36 python36-devel

6、配置并载入 Python3 虚拟环境

cd /opt
python3.6 -m venv py3
# py3 为虚拟环境名称, 可自定义

source /opt/py3/bin/activate
# 退出虚拟环境可以使用 deactivate 命令

# 看到下面的提示符代表成功, 以后运行 Jumpserver 都要先运行以上 source 命令, 载入环境后默认以下所有命令均在该虚拟环境中运行
(py3) [root@localhost opt]

三、安装 Jumpserver

1、下载 Jumpserver 安装包

cd /opt/
git clone https://github.com/jumpserver/jumpserver.git
cd /opt/jumpserver
git checkout 1.4.8

2、安装依赖 RPM 包

yum -y install $(cat /opt/jumpserver/requirements/rpm_requirements.txt)

3、安装 Python 库依赖

pip install --upgrade pip setuptools
pip install -r /opt/jumpserver/requirements/requirements.txt

注:
如果报错
ERROR: pyasn1-modules 0.2.6 has requirement pyasn1<0.5.0,>=0.4.6, but you'll have pyasn1 0.4.2 which is incompatible.
ERROR: django-radius 1.3.3 has requirement future==0.16.0, but you'll have future 0.17.1 which is incompatible.
代表安装版本不兼容,可通过一下方法安装剩余报错软件包
pip install pyasn1==0.4.6
pip install future==0.16.0

4、修改 Jumpserver 配置文件

cd /opt/jumpserver
cp config_example.yml config.yml

SECRET_KEY=`cat /dev/urandom | tr -dc A-Za-z0-9 | head -c 50`  # 生成随机SECRET_KEY
echo "SECRET_KEY=$SECRET_KEY" >> ~/.bashrc
BOOTSTRAP_TOKEN=`cat /dev/urandom | tr -dc A-Za-z0-9 | head -c 16`  # 生成随机BOOTSTRAP_TOKEN
echo "BOOTSTRAP_TOKEN=$BOOTSTRAP_TOKEN" >> ~/.bashrc

sed -i "s/SECRET_KEY:/SECRET_KEY: $SECRET_KEY/g" /opt/jumpserver/config.yml
sed -i "s/BOOTSTRAP_TOKEN:/BOOTSTRAP_TOKEN: $BOOTSTRAP_TOKEN/g" /opt/jumpserver/config.yml
sed -i "s/# DEBUG: true/DEBUG: false/g" /opt/jumpserver/config.yml
sed -i "s/# LOG_LEVEL: DEBUG/LOG_LEVEL: ERROR/g" /opt/jumpserver/config.yml
sed -i "s/# SESSION_EXPIRE_AT_BROWSER_CLOSE: false/SESSION_EXPIRE_AT_BROWSER_CLOSE: true/g" /opt/jumpserver/config.yml
sed -i "s/DB_PASSWORD: /DB_PASSWORD: $DB_PASSWORD/g" /opt/jumpserver/config.yml

echo "SECRET_KEY是: $SECRET_KEY " >> /root/passwd
echo "BOOTSTRAP_TOKEN是: $BOOTSTRAP_TOKEN " >> /root/passwd

5、运行 Jumpserver

cd /opt/jumpserver
chmod +x jms

./jms start all -d  #后台运行
./jms start all  #前台运行
# 新版本更新了运行脚本, 使用方式./jms start|stop|status all  后台运行请添加 -d 参数
#访问 http://192.168.1.63:8080/   用户 : admin 密码: admin

部署Jumpserver1.4.8运行环境部署搭建 linux运维技术 第1张

本文地址:https://www.ezliushao.com/307.html
加入我们:请加入刘少技术博客交流群:扫描二维码刘少技术博客的QQ交流群 | 浪子丶刘少 QQ:1150110267(注:微信暂停添加好友)
版权声明:本文为原创文章,版权归 浪子丶刘少 所有,欢迎分享本文,转载请保留出处!

发表评论


表情

  1. 今日新闻
    今日新闻 【新手】 @回复

    文章不错支持一下吧