这篇“ubuntu怎么安装Jumpserver”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Ubuntu怎么安装Jumpse
这篇“ubuntu怎么安装Jumpserver”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Ubuntu怎么安装Jumpserver”文章吧。
CPU: 64位双核处理器
内存: 4G DDR3
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
2 安装 Python3.6
$add-apt-repositoryppa:jonathonf/python-3.6-y$apt-getupdate$apt-get-yinstallpython3.6python3.6-devpython3.6-venv
3 建立 Python 虚拟环境
为了不扰乱原来的环境我们来使用 Python 虚拟环境
$cd/opt$python3.6-mvenvpy3$source/opt/py3/bin/activate#看到下面的提示符代表成功,以后运行Jumpserver都要先运行以上source命令,以下所有命令均在该虚拟环境中运行(py3)[root@localhostpy3]
4 自动载入 Python 虚拟环境配置
此项仅为懒癌晚期的人员使用,防止运行 Jumpserver 时忘记载入 Python 虚拟环境导致程序无法运行。使用autoenv
$cd/opt$gitclonehttps://GitHub.com/kennethreitz/autoenv.git$echo'source/opt/autoenv/activate.sh'>>~/.bashrc$source~/.bashrc
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 安装依赖包
$cd/opt/jumpserver/requirements$apt-get-yinstall$(catdeb_requirements.txt)#如果没有任何报错请继续
3 安装 Python 库依赖
$pipinstall--upgradepipsetuptools$pipinstall-rrequirements.txt
4 安装 Redis, Jumpserver 使用 Redis 做 cache 和 celery broke
$apt-get-yinstallredis-server
5 安装 mysql
本教程使用 Mysql 作为数据库,如果不使用 Mysql 可以跳过相关 Mysql 安装和配置
$apt-get-yinstallmysql-server#安装过程中注意输入数据库root账户的密码
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;"
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:86400SESSION_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:mysqlDB_HOST:127.0.0.1DB_PORT:3306DB_USER:jumpserverDB_PASSWORD:DB_NAME:jumpserver#WhenDjangostartitwillbindthishostandport#./manage.pyrunserver127.0.0.1:8080#运行时绑定端口HTTP_BIND_HOST:0.0.0.0HTTP_LISTEN_PORT:8080#UseRedisasbrokerforceleryandwebsocket#Redis配置REDIS_HOST:127.0.0.1REDIS_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
8 运行 Jumpserver
$cd/opt/jumpserver$./jmsstartall#后台运行使用-d参数./jmsstartall-d#新版本更新了运行脚本,使用方式./jmsstart|stop|status|restartall后台运行请添加-d参数
运行不报错,请继续往下操作
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
2 安装依赖
$cd/opt/coco/requirements$pipinstall-rrequirements.txt
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:INFOLOG_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参数
Luna 已改为纯前端,需要 Nginx 来运行访问
访问(https://github.com/jumpserver/luna/releases)下载对应版本的 release 包,直接解压,不需要编译
1 解压 Luna
$cd/opt/$wgethttps://github.com/jumpserver/luna/releases/download/1.4.7/luna.tar.gz$tarxfluna.tar.gz$chown-Rroot:rootluna
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
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
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
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 启动 Guacamole
$/etc/init.d/guacdrestart$sh/config/tomcat8/bin/startup.sh
这里所需要注意的是 guacamole 暴露出来的端口是 8081,若与主机上其他端口冲突请自定义一下。
1 安装 Nginx
$apt-get-yinstallnginx$rm-rf/etc/nginx/site-enabled/default
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安装在别的服务器,请填写它的ipproxy_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安装在别的服务器,请填写它的ipproxy_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;}}
3 重启 Nginx
$nginx-t#如果没有报错请继续$nginx-sreload
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”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网精选频道。
--结束END--
本文标题: Ubuntu怎么安装Jumpserver
本文链接: https://www.lsjlt.com/news/346127.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0