jumpserver安装配置

1.环境配置

[root@xmj ~]# getenforce
Permissive

[root@xmj ~]# systemctl stop firewalld       关闭防火墙

修改字符集,否则可能报in put/out put error的问题,因为日志里打印了中文

[root@localhost ~]#  localedef -c -f UTF-8 -i zh_CN zh_CN.UTF-8

[root@localhost ~]#  export  LC_ALL=zh_CN.UTF-8

[root@localhost ~]# echo 'LANG="zh_CN.UTF-8"' > /etc/locale.conf

修改完字符集后,安装一些必须要的环境:

[root@localhost ~]# yum install wget sqlite-devel xz gcc automake zlib-devel openssl-devel epel-release git -y

 [root@xmj ~]#  wget https://www.python.org/ftp/python/3.6.1/python-3.6.1.tar.xz

 [root@xmj ~]#   tar xvf Python-3.6.1.tar.xz && cd Python-3.6.1

这里必须执行编译安装,否则会在安装python依赖库时会有麻烦

[root@xmj Python-3.6.1]# cd /opt

[root@xmj opt]# python3 -m venv py3

[root@xmj opt]# source  /opt/py3/bin/activate

(py3) [root@xmj opt]# git clone git://github.com/kennethreitz/autoenv.git

 (py3) [root@xmj opt]# echo 'source /opt/autoenv/activate.sh' >> ~/.bashrc 

(py3) [root@xmj ~]# source ./.bashrc

2.下载jumpserver安装包

(py3) [root@xmj opt]# git clone https://github.com/jumpserver/jumpserver.git

(py3) [root@xmj opt]#  cd jumpserver

(py3) [root@xmj jumpserver]# git checkout master

 3.安装所需要的 python modules

(py3) [root@xmj jumpserver]# echo "source /opt/py3/bin/activate" > /opt/jumpserver/.env

(py3) [root@xmj jumpserver]# cd requirements/

 选择y

(py3) [root@xmj requirements]# yum install $(cat rpm_requirements.txt) -y

(py3) [root@xmj requirements]# pip install --upgrade pip setuptools -i https://mirrors.aliyun.com/pypi/simple/

 (py3) [root@xmj requirements]# pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/

 4.安装redis

(py3) [root@xmj requirements]# yum install redis -y             安装

(py3) [root@xmj requirements]# systemctl enable redis     设为开机自启

(py3) [root@xmj requirements]# systemctl start redis 

5.安装mysql服务

(py3) [root@xmj requirements]# yum -y install mariadb mariadb-devel mariadb-server

 (py3) [root@xmj requirements]# systemctl enable mariadb

(py3) [root@xmj requirements]# systemctl start mariadb

进入mariadb数据库

MariaDB [(none)]> create database jumpserver default charset 'utf8';                创建名为jumpserver 的数据库,默认使用utf8字符集

MariaDB [(none)]> grant all on jumpserver.* to 'jumpserveradmin'@'127.0.0.1' identified by 'jumpserverpwd';           给数据库授权

MariaDB [(none)]> flush privileges;               刷新下数据库

 6.配置jumpserver

(py3) [root@xmj requirements]# pwd      确认下路径
/opt/jumpserver/requirements

(py3) [root@xmj requirements]# cd ..  返回到上一级目录

(py3) [root@xmj jumpserver]# cp config_example.yml config.yml  复制一下配置文件

(py3) [root@xmj jumpserver]# SECRET_KEY=`cat /dev/urandom | tr -dc A-Za-z0-9 | head -c 50`   随机生成一个包含大a到大z,小a到小z的 0-9 的50位数

确认是否生成

(py3) [root@xmj jumpserver]# echo "SECRET_KEY=$SECRET_KEY" >> ~/.bashrc             写入到bash.rc里面

(py3) [root@xmj jumpserver]# cd        切换到家目录看看,确认内容是否追加

(py3) [root@xmj ~]# BOOTSTRAP_TOKEN=`cat /dev/urandom | tr -dc A-Za-z0-9 |head -c 16`

(py3) [root@xmj ~]# echo $BOOTSTRAP_TOKEN
48hmOImYsCWRqqn0

(py3) [root@xmj ~]# echo "BOOTSTRAP_TOKEN= $BOOTSTRAP_TOKEN" >> ~/.bashrc

(py3) [root@xmj ~]# sed -i "s/SECRET_KEY:/SECRET_KEY: $SECRET_KEY/g" /opt/jumpserver/config.yml
(py3) [root@xmj ~]# sed -i "s/BOOTSTRAP_TOKEN:/BOOTSTRAP_TOKEN: $BOOTSTRAP_TOKEN/g" /opt/jumpserver/config.yml
(py3) [root@xmj ~]# sed -i "s/# DEBUG: true/DEBUG: false/g" /opt/jumpserver/config.yml
(py3) [root@xmj ~]# sed -i "s/# LOG_LEVEL: DEBUG/LOG_LEVEL: ERROR/g" /opt/jumpserver/config.yml
(py3) [root@xmj ~]# sed -i "s/# SESSION_EXPIRE_AT_BROWSER_CLOSE: false/SESSION_EXPIRE_AT_BROWSER_CLOSE: true/g" /opt/jumpserver/config.yml
(py3) [root@xmj ~]# sed -i "s/DB_PASSWORD: /DB_PASSWORD: $DB_PASSWORD/g" /opt/jumpserver/config.yml
(py3) [root@xmj ~]# echo -e "\033[31m 你的SECRET_KEY是 $SECRET_KEY \033[0m"你的SECRET_KEY是 24AybD8hm1XtVMC1F1TnQTAY6088q8UmeETKvL6mumvt5FItuC

(py3) [root@xmj ~]# echo -e "\033[31m 你的BOOTSTRAP_TOKEN是 $BOOTSTRAP_TOKEN \033[0m"

你的BOOTSTRAP_TOKEN是 48hmOImYsCWRqqn0

(py3) [root@xmj ~]# cd /opt/jumpserver/

(py3) [root@xmj jumpserver]# vim config.yml   修改如下内容

DB_ENGINE: mysql
DB_HOST: 127.0.0.1
DB_PORT: 3306
DB_USER: jumpserveradmin
DB_PASSWORD: jumpserverpwd
DB_NAME: jumpserver

 7.启动/关闭jumpserver

(py3) [root@xmj jumpserver]# pwd
/opt/jumpserver

(py3) [root@xmj jumpserver]# ./jms start        启动

(py3) [root@xmj jumpserver]# ./jms stop       停止
Stop service
gunicorn is stopped
celery_ansible is stopped
celery_default is stopped
beat is stopped

(py3) [root@xmj jumpserver]# ./jms start  -d  放在后台启动

(四)、安装 docker 部署coco与guacamole
1、安装Docker
yum install -y yum-utils device-mapper-persistent-data lvm2

# 安装相关依赖

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

# 配置Docker源

yum makecache fast

# 重新生成缓存

rpm --import https://mirrors.aliyun.com/docker-ce/linux/centos/gpg

yum -y install docker-ce

# 安装Docker-ce

mkdir -p /etc/docker

wget -O /etc/docker/daemon.json http://demo.jumpserver.org/download/docker/daemon.json

# 下载相关文件

systemctl restart docker && systemctl enable docker

# 启动docker并设置开机自启

8.部署koko

(py3) [root@xmj ~]# Server_IP=192.168.6.189

(py3) [root@xmj ~]# BOOTSTRAP_TOKEN=48hmOImYsCWRqqn0

(py3) [root@xmj ~]# docker run --name jms_koko -d -p 2222:2222 -p 5000:5000 -e CORE_HOST=http://$Server_IP:8080 -e BOOTSTRAP_TOKEN=$BOOTSTRAP-TOKEN jumpserver/jms_koko:1.5.5

(py3) [root@xmj ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
jumpserver/jms_koko 1.5.5 17cf3f220213 9 months ago 41.4MB

手工部署koko(coco目前已经被koko取代)

9.部署guacamole

 (py3) [root@xmj ~]# docker run --name jms_guacamole -d -p 8081:8081 -e JUMPSERVER_SERVER=http://$Server_IP:8080 -e BOOTSTRAP_TOKEN=$BOOTSTRAP-TOKEN jumpserver/jms_guacamole:1.5.5

[root@xmj opt]# cd /opt

 [root@xmj opt]# wget https://github.com/jumpserver/luna/releases/download/1.5.5/luna.tar.gz

[root@xmj opt]# tar xvf luna.tar.gz

[root@xmj opt]# chown -R root:root luna    

11.配置nginx下载nginx的源码包

[root@xmj ~]# tar xvf nginx-1.14.2.tar.gz    解压

[root@xmj ~]# cd nginx-1.14.2/

[root@xmj nginx-1.14.2]#./configure --prefix=/usr/local/nginx

[root@xmj nginx-1.14.2]# make && make install

[root@xmj nginx-1.14.2]# cd /usr/local/nginx/conf/

[root@xmj conf]# mkdir conf.d

[root@xmj conf]# cd conf.d/

[root@xmj conf.d]# vim jumpserver.conf

server {
    listen 80;

    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 http://localhost:5000/socket.io/; 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 /coco/ { proxy_pass http://localhost:5000/coco/; 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/; 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; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }

[root@xmj conf.d]# /usr/local/nginx/sbin/nginx -t              检测下nginx配置文件
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

[root@xmj conf.d]# pwd
/usr/local/nginx/conf/conf.d
[root@xmj conf.d]# cd ..

[root@xmj conf]# cp nginx.conf nginx.conf.bak

[root@xmj conf]#  grep -Pv "^($| *#)" nginx.conf  去掉注释行

[root@xmj conf]# vim nginx.conf     以下内容是过滤好的,可直接清空nginx.conf后在粘贴进去

worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;include /usr/local/nginx/conf/conf.d/*.conf;
server {
listen 80;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}

[root@xmj conf]# /usr/local/nginx/sbin/nginx -t             再次检查
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

[root@xmj bin]# /usr/local/nginx/sbin/nginx  启动nginx

访问ip

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值