标签:代理服务 openssl 端口 额外 txt file 纯前端 nal mysq
2、jumpserver. 介绍。测试推荐硬件
? CPU: 64 位双核处理器
? 内存: 4G DDR3
环境
? 系统: CentOS 7
? IP: 192.168.1.10 关闭 selinux 和防火墙
$ setenforce 0 # 临时关闭,重启后失效
$ systemctl stop firewalld.service # 临时关闭,重启后失效
一. 准备 Python3 和 Python 虚拟环境
1.1 安装依赖包
yum -y install wget sqlite-devel xz gcc automake zlib-devel openssl-devel epel-release
git
1.2 编译安装
rz (上传Python-3.6.1.tar.xz)
tar xvf Python-3.6.1.tar.xz (解压Python-3.6.1)
cd Python-3.6.1 (进入目录)
./configure && make && make install (编译安装)
1.3 建立 Python 虚拟环境
23 cd /opt/
24 python3 -m venv py3
25 source /opt/py3/bin/activate
在该虚拟环境中运行
1.4 自动载入 Python 虚拟环境配置
26 rz
27 unzip autoenv.zip
28 echo ‘source /opt/autoenv/activate.sh‘ >> ~/.bashrc
29 source ~/.bashrc
二. 安装 Jumpserver
2.1 下载或 Clone 项目
2.2 安装依赖 RPM 包
yum -y install $(cat rpm_requirements.txt)
2.3 安装 Python 库依赖
37 pip install --upgrade pip
38 pip install -r requirements.txt -i https://pypi.python.org/simple
2.4 安装 Redis, Jumpserver 使用 Redis 做 cache 和 celery broke
40 yum -y install redis
41 systemctl enable redis
2.5 安装 MySQL
44 yum -y install mariadb mariadb-devel mariadb-server
45 systemctl enable mariadb
46 systemctl start mariadb
2.6 修改 Jumpserver 配置文件
SECRET_KEY: (接生成的密钥) 4
BOOTSTRAP_TOKEN: (接生成的密钥) 8
DEBUG: false 去注释修改 12
LOG_LEVEL: ERROR 去注释修改 16
SESSION_EXPIRE_AT_BROWSER_CLOSE: true 去注释修改22
DB_ENGINE: mysql 35
DB_HOST: 127.0.0.1
DB_PORT: 3306
DB_USER: jumpserver
DB_PASSWORD: 123.com #密码
DB_NAME: jumpserver
2.7 创建数据库 Jumpserver 并授权
2.8 生成数据库表结构和初始化数据
$ cd /opt/jumpserver/utils
$ bash make_migrations.sh
2.9 运行 Jumpserver
42 cd /opt/ Jumpserver
43 ./jms start all -d
44 netstat -anpt | grep 8080
三. 安装 SSH Server 和 WebSocket Server: Coco
3.1 下载或 Clone 项目
新开一个终端,别忘了 source /opt/py3/bin/activate
42 cd /opt/
43 rz (上传coco.zip)
48 unzip coco.zip
53 mv coco-master/ coco
54 cd coco/
55 echo "source /opt/py3/bin/activate" > /opt/coco/.env ## 进入 coco 目录时将自动载
56 cd requirements/ (进去后要初始化 “y“)
3.2 安装依赖
cd /opt/coco/requirements
yum -y install $(cat rpm_requirements.txt)
pip install -r requirements.txt -i https://pypi.python.org/simple
3.3 修改配置文件并运行
61 cd /opt/coco/
62 cp config_example.yml config.yml #复制配置文件
63 vim config.yml #修改配置文件
BOOTSTRAP_TOKEN: 2Z8mvnPDyHLzUGhK #修改9
(2Z8mvnPDyHLzUGhK)这个是/opt/jumpserver/config.yml里的第九行的密钥
LOG_LEVEL: ERROR #修改31
64 ./cocod start -d #启动
浏览器测试一下
http://192.168.1.10:8080/auth/login/?next=/terminal/terminal/
四. 安装 Web Terminal 前端: Luna
Luna 已改为纯前端,需要 Nginx 来运行访问
访问(https://github.com/jumpserver/luna/releases)下载对应版本的 release
包,直接解压,不需要编译
4.1 解压 Luna
70 cd /opt/
71 rz (上传luna.tar.gz)
72 tar zxf luna.tar.gz
73 cd luna/
五. 安装 Windows 支持组件(如果不需要管理 windows
资产,可以直接跳过这一步)
因为手动安装 guacamole 组件比较复杂,这里提供打包好的 docker 使用, 启
动 guacamole
5.1 Docker 安装 (仅针对 CentOS7, CentOS6 安装 Docker 相对比较复杂)
可以先去https://opsx.alibaba.com/mirror 找到
安装依赖包
yum install -y yum-utils device-mapper-persistent-data lvm2
Dockeryum源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
安装docker-ce
yum -y install docker-ce
启动docker
systemctl start docker
systemctl enable docker
5.2 启动 Guacamole
这里所需要注意的是 guacamole 暴露出来的端口是 8081,若与主机上其他端
口冲突请自定义
docker run --name jms_guacamole -d \
-p 8081:8080 -v /opt/guacamole/key:/config/guacamole/key \
-e JUMPSERVER_KEY_DIR=/config/guacamole/key \
-e JUMPSERVER_SERVER=http://127.0.0.1:8080 \
jumpserver/guacamole:latest
执行完成后查看端口
启动成功后去 Jumpserver 会话管理-终端管理
(http://192.168.244.144:8080/terminal/terminal/)接受[Gua]开头的一个注册
六. 配置 Nginx 整合各组件
6.1 安装 Nginx 根据喜好选择安装方式和版本
84 cd (回到根目录)
85 rz (上传nginx-1.14.0.tar.gz )
86 tar zxf nginx-1.14.0.tar.gz
87 cd nginx-1.14.0/
88 ./configure && make && make install (编译安装)
6.2 准备配置文件 修改 vim /usr/local/nginx/conf/nginx.conf (可上传nginx配置文件)
内容如下:
$ vim /etc/nginx/nginx.conf
... 省略
server {
listen 80; # 代理端口,以后将通过此端口进行访问,不再通过 8080 端口
client_max_body_size 100m; # 录像上传大小限制
location /luna/ {
try_files $uri / /index.html;
alias /opt/luna/; # luna 路径,如果修改安装目录,此处需要修改
}
location /media/ {
add_header Content-Encoding gzip;
root /opt/jumpserver/data/; # 录像位置,如果修改安装目录,此处需要修改
}
location /static/ {
root /opt/jumpserver/data/; # 静态资源,如果修改安装目录,此处需要修改
}
location /socket.io/ {
proxy_pass
请填写它的 ip http://localhost:5000/socket.io/; # 如果coco安装在别的服务器,
proxy_buffering off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
access_log off;
}
location /guacamole/ {
proxy_pass http://localhost:8081/; # 如果 guacamole 安装在别的服务器,请填
写它的 ip
proxy_buffering off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $http_connection;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
access_log off;
}
location / {
proxy_pass http://localhost:8080; # 如果 jumpserver 安装在别的服务器,请填写它的
ip
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
... 省略
6.3 运行 Nginx
/usr/local/nginx/sbin/nginx
netstat -anpt | grep nginx
6.4 开始使用 Jumpserver
检查应用是否已经正常运行
$ cd /opt/jumpserver
$ ./jms status # 确定 jumpserver 已经运行,如果没有运行请重新启动 jumpserver
$ cd /opt/coco
$ ./cocod status # 确定 jumpserver 已经运行,如果没有运行请重新启动 coco
$ docker ps # 检查容器是否已经正常运行,如果没有运行请重新启动 Guacamole
服务全部启动后,访问 http://192.168.1.10,访问 nginx 代理的端口,不要
再通过 8080 端口访问
默认账号: admin 密码: admin
如果部署过程中没有接受应用的注册,需要到 Jumpserver 会话管理-终端管理
接受 Coco Guacamole 等应用的注册。
点击更新 设置密码 然后提交
测试
点击web终端
标签:代理服务 openssl 端口 额外 txt file 纯前端 nal mysq
原文地址:https://blog.51cto.com/14320361/2448029