中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Ubuntu怎么安裝Jumpserver

發布時間:2022-11-21 17:05:55 來源:億速云 閱讀:289 作者:iii 欄目:服務器

這篇“Ubuntu怎么安裝Jumpserver”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“Ubuntu怎么安裝Jumpserver”文章吧。

環境

  • 系統: Ubuntu 16.04

  • IP: 192.168.244.144

  • 數據庫:mysql 版本大于等于 5.6 mariadb 版本大于等于 5.5.6

測試推薦硬件

  • CPU: 64位雙核處理器

  • 內存: 4G DDR3

一. 準備 Python3 和 Python 虛擬環境

1.1 安裝依賴包

$apt-getupdate&&apt-get-yupgrade
$apt-get-yinstallwgetgcclibffi-devgitlibmysqlclient-dev

#修改字符集,否則可能報input/outputerror的問題,因為日志里打印了中文
$apt-get-yinstalllanguage-pack-zh-hans
$exportLC_ALL=zh_CN.UTF-8
$echo'LANG="zh_CN.UTF-8"'>/etc/default/locale

1.2 安裝 Python3.6

$add-apt-repositoryppa:jonathonf/python-3.6-y
$apt-getupdate
$apt-get-yinstallpython3.6python3.6-devpython3.6-venv

1.3 建立 Python 虛擬環境

為了不擾亂原來的環境我們來使用 Python 虛擬環境

$cd/opt
$python3.6-mvenvpy3
$source/opt/py3/bin/activate

#看到下面的提示符代表成功,以后運行Jumpserver都要先運行以上source命令,以下所有命令均在該虛擬環境中運行
(py3)[root@localhostpy3]

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

此項僅為懶癌晚期的人員使用,防止運行 Jumpserver 時忘記載入 Python 虛擬環境導致程序無法運行。使用autoenv

$cd/opt
$gitclonehttps://github.com/kennethreitz/autoenv.git
$echo'source/opt/autoenv/activate.sh'>>~/.bashrc
$source~/.bashrc

二. 安裝 Jumpserver

2.1 下載或 Clone 項目

項目提交較多 git clone 時較大,你可以選擇去 Github 項目頁面直接下載zip包。

$cd/opt/
$gitclonehttps://github.com/jumpserver/jumpserver.git
$echo"source/opt/py3/bin/activate">/opt/jumpserver/.env#進入jumpserver目錄時將自動載入python虛擬環境

#首次進入jumpserver文件夾會有提示,按y即可
#Areyousureyouwanttoallowthis?(y/N)y

2.2 安裝依賴包

$cd/opt/jumpserver/requirements
$apt-get-yinstall$(catdeb_requirements.txt)#如果沒有任何報錯請繼續

2.3 安裝 Python 庫依賴

$pipinstall--upgradepipsetuptools
$pipinstall-rrequirements.txt

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

$apt-get-yinstallredis-server

2.5 安裝 MySQL

本教程使用 Mysql 作為數據庫,如果不使用 Mysql 可以跳過相關 Mysql 安裝和配置

$apt-get-yinstallmysql-server#安裝過程中注意輸入數據庫root賬戶的密碼

2.6 創建數據庫 Jumpserver 并授權

$DB_PASSWORD=`cat/dev/urandom|tr-dcA-Za-z0-9|head-c24`#生成隨機數據庫密碼
$echo-e"\033[31m你的數據庫密碼是$DB_PASSWORD\033[0m"
$mysql-uroot-p-e"createdatabasejumpserverdefaultcharset'utf8';grantallonjumpserver.*to'jumpserver'@'127.0.0.1'identifiedby'$DB_PASSWORD';flushprivileges;"

2.7 修改 Jumpserver 配置文件

$cd/opt/jumpserver
$cpconfig_example.ymlconfig.yml

$SECRET_KEY=`cat/dev/urandom|tr-dcA-Za-z0-9|head-c50`#生成隨機SECRET_KEY
$BOOTSTRAP_TOKEN=`cat/dev/urandom|tr-dcA-Za-z0-9|head-c16`#生成隨機BOOTSTRAP_TOKEN

$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-e"\033[31m你的SECRET_KEY是$SECRET_KEY\033[0m"
$echo-e"\033[31m你的BOOTSTRAP_TOKEN是$BOOTSTRAP_TOKEN\033[0m"

$vimconfig.yml#確認內容有沒有錯誤
#SECURITYWARNING:keepthesecretkeyusedinproductionsecret!
#加密秘鑰生產環境中請修改為隨機字符串,請勿外泄
SECRET_KEY:

#SECURITYWARNING:keepthebootstraptokenusedinproductionsecret!
#預共享Tokencoco和guacamole用來注冊服務賬號,不在使用原來的注冊接受機制
BOOTSTRAP_TOKEN:

#Developmentenvopenthis,whenerroroccurdisplaythefullprocesstrack,Productiondisableit
#DEBUG模式開啟DEBUG后遇到錯誤時可以看到更多日志
DEBUG:false

#DEBUG,INFO,WARNING,ERROR,CRITICALcanset.Seehttps://docs.djangoproject.com/en/1.10/topics/logging/
#日志級別
LOG_LEVEL:ERROR
#LOG_DIR:

#Sessionexpirationsetting,Default24hour,Alsosetexpiredononbrowserclose
#瀏覽器Session過期時間,默認24小時,也可以設置瀏覽器關閉則過期
#SESSION_COOKIE_AGE:86400
SESSION_EXPIRE_AT_BROWSER_CLOSE:true

#Databasesetting,Supportsqlite3,mysql,postgres....
#數據庫設置
#Seehttps://docs.djangoproject.com/en/1.10/ref/settings/#databases

#SQLitesetting:
#使用單文件sqlite數據庫
#DB_ENGINE:sqlite3
#DB_NAME:

#MySQLorpostgressettinglike:
#使用Mysql作為數據庫
DB_ENGINE:mysql
DB_HOST:127.0.0.1
DB_PORT:3306
DB_USER:jumpserver
DB_PASSWORD:
DB_NAME:jumpserver

#WhenDjangostartitwillbindthishostandport
#./manage.pyrunserver127.0.0.1:8080
#運行時綁定端口
HTTP_BIND_HOST:0.0.0.0
HTTP_LISTEN_PORT:8080

#UseRedisasbrokerforceleryandwebsocket
#Redis配置
REDIS_HOST:127.0.0.1
REDIS_PORT:6379
#REDIS_PASSWORD:
#REDIS_DB_CELERY:3
#REDIS_DB_CACHE:4

#UseOpenIDauthorization
#使用OpenID來進行認證設置
#BASE_SITE_URL:http://localhost:8080
#AUTH_OPENID:false#TrueorFalse
#AUTH_OPENID_SERVER_URL:https://openid-auth-server.com/
#AUTH_OPENID_REALM_NAME:realm-name
#AUTH_OPENID_CLIENT_ID:client-id
#AUTH_OPENID_CLIENT_SECRET:client-secret

#OTPsettings
#OTP/MFA配置
#OTP_VALID_WINDOW:0
#OTP_ISSUER_NAME:Jumpserver

2.8 運行 Jumpserver

$cd/opt/jumpserver
$./jmsstartall#后臺運行使用-d參數./jmsstartall-d

#新版本更新了運行腳本,使用方式./jmsstart|stop|status|restartall后臺運行請添加-d參數

運行不報錯,請繼續往下操作

三. 安裝 SSH Server 和 WebSocket Server: Coco

3.1 下載或 Clone 項目

新開一個終端

$cd/opt
$source/opt/py3/bin/activate
$gitclonehttps://github.com/jumpserver/coco.git&&cdcoco&&gitcheckoutmaster
$echo"source/opt/py3/bin/activate">/opt/coco/.env#進入coco目錄時將自動載入python虛擬環境

#首次進入coco文件夾會有提示,按y即可
#Areyousureyouwanttoallowthis?(y/N)y

3.2 安裝依賴

$cd/opt/coco/requirements
$pipinstall-rrequirements.txt

3.3 查看配置文件并運行

$cd/opt/coco
$mkdirkeyslogs
$cpconfig_example.ymlconfig.yml
$vimconfig.yml
#項目名稱,會用來向Jumpserver注冊,識別而已,不能重復
#NAME:{{Hostname}}

#Jumpserver項目的url,api請求注冊會使用
CORE_HOST:http://127.0.0.1:8080

#BootstrapToken,預共享秘鑰,用來注冊coco使用的serviceaccount和terminal
#請和jumpserver配置文件中保持一致,注冊完成后可以刪除
BOOTSTRAP_TOKEN:<ChangeIT>

#啟動時綁定的ip,默認0.0.0.0
#BIND_HOST:0.0.0.0

#監聽的SSH端口號,默認2222
#SSHD_PORT:2222

#監聽的HTTP/WS端口號,默認5000
#HTTPD_PORT:5000

#項目使用的ACCESSKEY,默認會注冊,并保存到ACCESS_KEY_STORE中,
#如果有需求,可以寫到配置文件中,格式access_key_id:access_key_secret
#ACCESS_KEY:null

#ACCESSKEY保存的地址,默認注冊后會保存到該文件中
#ACCESS_KEY_STORE:keys/.access_key

#加密密鑰
#SECRET_KEY:null

#設置日志級別[DEBUG,INFO,WARN,ERROR,FATAL,CRITICAL]
#LOG_LEVEL:INFO
LOG_LEVEL:ERROR

#日志存放的目錄
#LOG_DIR:logs

#SSH白名單
#ALLOW_SSH_USER:all

#SSH黑名單,如果用戶同時在白名單和黑名單,黑名單優先生效
#BLOCK_SSH_USER:
#-

#和Jumpserver保持心跳時間間隔
#HEARTBEAT_INTERVAL:5

#Admin的名字,出問題會提示給用戶
#ADMINS:''

#SSH連接超時時間(default15seconds)
#SSH_TIMEOUT:15

#語言[en,zh]
#LANGUAGE_CODE:zh

#SFTP的根目錄,可選/tmp,Home其他自定義目錄
#SFTP_ROOT:/tmp

#SFTP是否顯示隱藏文件
#SFTP_SHOW_HIDDEN_FILE:false
$./cocodstart#后臺運行使用-d參數./cocodstart-d

#新版本更新了運行腳本,使用方式./cocodstart|stop|status|restart后臺運行請添加-d參數

四. 安裝 Web Terminal 前端: Luna

Luna 已改為純前端,需要 Nginx 來運行訪問

訪問(https://github.com/jumpserver/luna/releases)下載對應版本的 release 包,直接解壓,不需要編譯

4.1 解壓 Luna

$cd/opt/
$wgethttps://github.com/jumpserver/luna/releases/download/1.4.7/luna.tar.gz
$tarxfluna.tar.gz
$chown-Rroot:rootluna

五. 安裝 Windows 支持組件(如果不需要管理 windows 資產,可以直接跳過這一步)

5.1 安裝依賴

$apt-get-yinstalllibtoolautoconf
$apt-get-yinstalllibcairo2-devlibjpeg-turbo8-devlibpng12-devlibossp-uuid-dev
$apt-get-yinstalllibavcodec-devlibavutil-devlibswscale-devlibfreerdp-devlibpango1.0-devlibssh2-1-devlibtelnet-devlibvncserver-devlibpulse-devlibssl-devlibvorbis-devlibwebp-devghostscript
$ln-s/usr/local/lib/freerdp/usr/lib/x86_64-linux-gnu/freerdp
$apt-get-yinstalldefault-jredefault-jdk

5.2 編譯安裝 guacamole 服務

$cd/opt
$gitclonehttps://github.com/jumpserver/docker-guacamole.git
$cddocker-guacamole
$tarxfguacamole-server-0.9.14.tar.gz
$cdguacamole-server-0.9.14
$autoreconf-fi
$./configure--with-init-dir=/etc/init.d
$make&&makeinstall
$cd..
$rm-rfguacamole-server-0.9.14
$ldconfig

$mkdir-p/config/guacamole/config/guacamole/lib/config/guacamole/extensions#創建guacamole目錄
$ln-sf/opt/docker-guacamole/guacamole-auth-jumpserver-0.9.14.jar/config/guacamole/extensions/guacamole-auth-jumpserver-0.9.14.jar
$ln-sf/opt/docker-guacamole/root/app/guacamole/guacamole.properties/config/guacamole/guacamole.properties#guacamole配置文件

$cd/config
$wgethttps://github.com/ibuler/ssh-forward/releases/download/v0.0.5/linux-amd64.tar.gz
$tarxflinux-amd64.tar.gz-C/bin/
$chmod+x/bin/ssh-forward

5.3 配置 Tomcat

$cd/config
$wgethttp://mirror.bit.edu.cn/apache/tomcat/tomcat-8/v8.5.38/bin/apache-tomcat-8.5.38.tar.gz
$tarxfapache-tomcat-8.5.38.tar.gz
$rm-rfapache-tomcat-8.5.38.tar.gz
$mvapache-tomcat-8.5.38tomcat8
$rm-rf/config/tomcat8/webapps/*
$ln-sf/opt/docker-guacamole/guacamole-0.9.14.war/config/tomcat8/webapps/ROOT.war#guacamoleclient
$sed-i's/Connectorport="8080"/Connectorport="8081"/g'/config/tomcat8/conf/server.xml#修改默認端口為8081
$sed-i's/FINE/WARNING/g'/config/tomcat8/conf/logging.properties#修改log等級為WARNING

5.4 配置環境變量

$exportJUMPSERVER_SERVER=http://127.0.0.1:8080#http://127.0.0.1:8080指jumpserver訪問地址
$echo"exportJUMPSERVER_SERVER=http://127.0.0.1:8080">>~/.bashrc

#BOOTSTRAP_TOKEN為Jumpserver/config.yml里面的BOOTSTRAP_TOKEN
$exportBOOTSTRAP_TOKEN=******
$echo"exportBOOTSTRAP_TOKEN=******">>~/.bashrc
$exportJUMPSERVER_KEY_DIR=/config/guacamole/keys
$echo"exportJUMPSERVER_KEY_DIR=/config/guacamole/keys">>~/.bashrc
$exportGUACAMOLE_HOME=/config/guacamole
$echo"exportGUACAMOLE_HOME=/config/guacamole">>~/.bashrc

5.5 啟動 Guacamole

$/etc/init.d/guacdrestart
$sh/config/tomcat8/bin/startup.sh

這里所需要注意的是 guacamole 暴露出來的端口是 8081,若與主機上其他端口沖突請自定義一下。

六. 配置 Nginx 整合各組件

6.1 安裝 Nginx

$apt-get-yinstallnginx
$rm-rf/etc/nginx/site-enabled/default

6.2 準備配置文件 修改 /etc/nginx/site-enabled/jumpserver.conf

$vim/etc/nginx/site-enabled/jumpserver.confserver{
listen80;
server_name_;

client_max_body_size100m;#錄像及文件上傳大小限制

location/luna/{
try_files$uri//index.html;
alias/opt/luna/;#luna路徑,如果修改安裝目錄,此處需要修改
}

location/media/{
add_headerContent-Encodinggzip;
root/opt/jumpserver/data/;#錄像位置,如果修改安裝目錄,此處需要修改
}

location/static/{
root/opt/jumpserver/data/;#靜態資源,如果修改安裝目錄,此處需要修改
}

location/socket.io/{
proxy_passhttp://localhost:5000/socket.io/;#如果coco安裝在別的服務器,請填寫它的ip
proxy_bufferingoff;
proxy_http_version1.1;
proxy_set_headerUpgrade$http_upgrade;
proxy_set_headerConnection"upgrade";
proxy_set_headerX-Real-IP$remote_addr;
proxy_set_headerHost$host;
proxy_set_headerX-Forwarded-For$proxy_add_x_forwarded_for;
access_logoff;
}

location/coco/{
proxy_passhttp://localhost:5000/coco/;
proxy_set_headerX-Real-IP$remote_addr;
proxy_set_headerHost$host;
proxy_set_headerX-Forwarded-For$proxy_add_x_forwarded_for;
access_logoff;
}

location/guacamole/{
proxy_passhttp://localhost:8081/;#如果guacamole安裝在別的服務器,請填寫它的ip
proxy_bufferingoff;
proxy_http_version1.1;
proxy_set_headerUpgrade$http_upgrade;
proxy_set_headerConnection$http_connection;
access_logoff;
proxy_set_headerX-Real-IP$remote_addr;
proxy_set_headerHost$host;
proxy_set_headerX-Forwarded-For$proxy_add_x_forwarded_for;
}

location/{
proxy_passhttp://localhost:8080;
proxy_set_headerX-Real-IP$remote_addr;
proxy_set_headerHost$host;
proxy_set_headerX-Forwarded-For$proxy_add_x_forwarded_for;
}}

6.3 重啟 Nginx

$nginx-t#如果沒有報錯請繼續$nginx-sreload

6.4 開始使用 Jumpserver

服務全部啟動后,訪問http://192.168.244.144

默認賬號: admin 密碼: admin

到Jumpserver 會話管理-終端管理 檢查 Coco Guacamole 等應用的注冊

測試連接

如果登錄客戶端是macOS或Linux,登錄語法如下
$ssh-p2222admin@192.168.244.144
$sftp-P2222admin@192.168.244.144
密碼:admin

如果登錄客戶端是Windows,XshellTerminal登錄語法如下
$sshadmin@192.168.244.1442222$sftpadmin@192.168.244.1442222密碼:admin
如果能登陸代表部署成功#sftp默認上傳的位置在資產的/tmp目錄下#windows拖拽上傳的位置在資產的GuacamoleRDP上的G目錄下

以上就是關于“Ubuntu怎么安裝Jumpserver”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

酉阳| 无极县| 乐清市| 新乡县| 宁明县| 大方县| 余江县| 黔南| 团风县| 鄂尔多斯市| 安多县| 望奎县| 张掖市| 阜阳市| 永仁县| 浑源县| 邻水| 汉中市| 根河市| 东安县| 油尖旺区| 神农架林区| 汶川县| 牟定县| 涞源县| 滦南县| 商南县| 桃源县| 陆河县| 东台市| 冀州市| 澜沧| 崇左市| 松阳县| 唐山市| 康乐县| 宜城市| 天镇县| 洪江市| 台湾省| 海门市|