1. 程式人生 > >ubuntu18.04安裝jumpserver1.4.4

ubuntu18.04安裝jumpserver1.4.4

Ubuntu18.04安裝jumpserver1.4.4

文件編寫時間:2018年11月18日

1.4.4版本是2018年11月份釋出的

官網的文件已經很詳細了,但每個人都得有個第一次,誰也不知道自己的第一次會遇到哪些奇奇怪怪的問題!

準備工作:

Linux系統:ubuntu18.04

IP:192.168.2.100

配置好apt源

Linux網路通暢

然後可以根據官網文件開始了:

一、準備 Python3 和 Python 虛擬環境

1.1安裝依賴包:

[email protected]:~# apt-get update && apt-get -y upgrade

[email protected]:~# apt-get -y install wget gcc libffi-dev git

# 修改字符集,否則可能報 input/output error的問題,因為日誌裡列印了中文

[email protected]:~# apt-get -y install language-pack-zh-hans

[email protected]:~# echo 'LANG="zh_CN.UTF-8"' > /etc/default/locale

新開終端,檢視字符集是否修改

[email protected]:~# echo $LANG

zh_CN.UTF-8

1.2 安裝 Python3.6

[email protected]:~# add-apt-repository ppa:jonathonf/python-3.6 -y

[email protected]:~# apt update

[email protected]:~# apt-get -y install python3.6 python3.6-dev python3.6-venv

1.3 建立 Python 虛擬環境

[email protected]:~# cd /opt

[email protected]

:/opt# python3.6 -m venv py3

這一步報錯了:

按照提示安裝python3-env

[email protected]:/opt# apt-get install python3-venv -y

然後重新執行之前的命令:

[email protected]:/opt# python3.6 -m venv py3

[email protected]:/opt# source /opt/py3/bin/activate

提示符發生變化,如下:

(py3) [email protected]:/opt#

1.4 自動載入 Python 虛擬環境配置

(py3) [email protected]:/opt# cd /opt

(py3) [email protected]:/opt# echo 'source /opt/autoenv/activate.sh' >> ~/.bashrc

(py3) [email protected]:/opt# source ~/.bashrc

二. 安裝 Jumpserver

2.1 下載或 Clone 專案

[email protected]:/opt# cd /opt

[email protected]:/opt# git clone https://github.com/jumpserver/jumpserver.git

[email protected]:/opt#  echo "source /opt/py3/bin/activate" > /opt/jumpserver/.env

2.2 安裝依賴包

[email protected]:/opt# cd /opt/jumpserver/requirements

# 首次進入 jumpserver 資料夾會有提示, y 即可
# Are you sure you want to allow this? (y/N) y

(py3) [email protected]:/opt/jumpserver/requirements# apt-get -y install $(cat deb_requirements.txt)

2.3 安裝 Python 庫依賴

(py3) [email protected]:/opt/jumpserver/requirements# pip install --upgrade pip setuptools

(py3) [email protected]:/opt/jumpserver/requirements# pip install -r requirements.txt

這一步報錯了,再執行一遍,還是有錯誤,如下:

解決方法:執行下面這條命令:

apt-get install python3.6-dev libmysqlclient-dev

(py3) [email protected]:/opt/jumpserver/requirements# apt-get install python3.6-dev libmysqlclient-dev

再執行上一條命令:

(py3) [email protected]:/opt/jumpserver/requirements# pip install -r requirements.txt

有可能還會出現下載超時錯誤,再執行一次即可

2.4 安裝 Redis, Jumpserver 使用 Redis 做 cache 和 celery broke

(py3) [email protected]:/opt/jumpserver/requirements# apt-get -y install redis-server

2.5 安裝 MySQL

(py3) [email protected]:/opt/jumpserver/requirements# apt-get -y install mysql-server

對mysql的一些初始化

(py3) [email protected]:/opt/jumpserver/requirements# mysql_secure_installation

2.6 建立資料庫 Jumpserver 並授權

(py3) [email protected]:/opt# mysql -uroot -p

mysql> create database jumpserver default charset 'utf8';

mysql> grant all on jumpserver.* to 'jumpserver'@'127.0.0.1' identified by '123456';

mysql> flush privileges;

mysql> quit

2.7 修改 Jumpserver 配置檔案

(py3) [email protected]:/opt# cd /opt/jumpserver

(py3) [email protected]:/opt/jumpserver# cp config_example.py config.py

(py3) [email protected]:/opt/jumpserver# vim config.py

主要改的地方有:

約19行加上 SECRET_KEY = '隨機50位以上字串’

約34-36行註釋掉SQlite相關的配置

約39-44行取消註釋mysql相關配置,並寫上資料庫jumpserver使用者密碼

2.8 生成資料庫表結構和初始化資料

(py3) [email protected]:/opt/jumpserver# cd /opt/jumpserver/utils

(py3) [email protected]:/opt/jumpserver/utils# bash make_migrations.sh

2.9 執行 Jumpserver

(py3) [email protected]:/opt/jumpserver/utils# cd /opt/jumpserver

(py3) [email protected]:/opt/jumpserver# ./jms start all

(有可能執行後會退出,再執行一次即可)

三. 安裝 SSH Server 和 WebSocket Server: Coco

3.1 下載或 Clone 專案

新開一個終端

[email protected]:~# cd /opt

[email protected]:/opt# source /opt/py3/bin/activate

(py3) [email protected]:/opt# git clone https://github.com/jumpserver/coco.git && cd coco && git checkout master

(py3) [email protected]:/opt/coco# echo "source /opt/py3/bin/activate" > /opt/coco/.env

3.2 安裝依賴

(py3) [email protected]:/opt/coco# cd /opt/coco/requirements

# 首次進入 coco 資料夾會有提示, y 即可
# Are you sure you want to allow this? (y/N) y

(py3) [email protected]:/opt/coco/requirements# pip install -r requirements.txt

3.3 檢視配置檔案並執行

(py3) [email protected]:/opt/coco/requirements# cd /opt/coco

(py3) [email protected]:/opt/coco# mkdir keys logs

(py3) [email protected]:/opt/coco# cp conf_example.py conf.py

(py3) [email protected]:/opt/coco# vim conf.py

加上了下面三行(其他的引數都有預設值):

NAME = "coco"

CORE_HOST = 'http://127.0.0.1:8080'

LOG_LEVEL = 'WARN'

啟動coco

(py3) [email protected]:/opt/coco# ./cocod start  #(後面加了all報錯)

四. 安裝 Web Terminal 前端: Luna

4.1下載並解壓Luna

新開終端:

[email protected]:/opt# cd /opt/

[email protected]:/opt# tar xf luna.tar.gz

[email protected]:/opt# chown root.root -R luna

五. 配置 Nginx 整合各元件

5.1安裝Nginx

[email protected]:/opt# apt install -y nginx

5.2 修改 /etc/nginx/site-enabled/default

[email protected]:/opt# cd /etc/nginx/sites-enabled/

[email protected]:/etc/nginx/sites-enabled# cp default ~

[email protected]:/etc/nginx/sites-enabled# vim default

把官方給的複製進去就可以

5.3重啟nginx

[email protected]:/etc/nginx/sites-enabled# nginx -t

[email protected]:/etc/nginx/sites-enabled# nginx -s reload

5.4 開始使用 Jumpserver

測試連線: