JumpServer1.0 服务搭建

系统环境配置

setenforce 0
systemctl stop iptables.service
systemctl stop firewalld.service localedef -c -f UTF-8 -i zh_CN zh_CN.UTF-8
export LC_ALL=zh_CN.UTF-8
echo 'LANG=zh_CN.UTF-8' > /etc/sysconfig/i18n

安装python3

wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tar.xz
tar xvf Python-3.6.1.tar.xz && cd Python-3.6.1
./configure --prefix=/usr/local/python3
make
make install
ln -s /usr/local/python3/bin/python3 /usr/bin/python3 yum -y install epel-release wget unzip epel-release nginx sqlite-devel xz gcc automake zlib-devel openssl-devel redis mariadb \
libtiff-devel libjpeg-devel libzip-devel freetype-devel lcms2-devel libwebp-devel tcl-devel tk-devel sshpass openldap-devel mysql-devel \
mariadb-devel mariadb-server supervisor libffi-devel openssh-clients
systemctl restart redis
systemctl restart mariadb
systemctl enable redis
systemctl enable mariadb
cd /opt/
python3 -m venv py3
source /opt/py3/bin/activate

Jumpserver配置

wget https://github.com/jumpserver/jumpserver/archive/1.0.0.zip -O jumpserver.zip
unzip jumpserver.zip && rm -f jumpserver.zip && mv jumpserver* jumpserver
source /opt/py3/bin/activate && pip install --upgrade pip && pip install -i https://pypi.douban.com/simple/ -r /opt/jumpserver/requirements/requirements.txt
cd /opt/jumpserver
cp config_example.py config.py
# 修改数据库配置
vim config.py
mysql -uroot -pMYSQL@2018 -e "create database jumpserver character set utf8"
# 生成数据库表结构和初始化数据
python apps/manage.py makemigrations
python apps/manage.py migrate
# 运行Jumpserver
python run_server.py all

安装SSH Server和WebSocket Server: Coco

cd /opt/
wget https://github.com/jumpserver/coco/archive/1.0.0.zip -O coco.zip
unzip coco.zip && rm -f coco.zip && mv coco* coco
source /opt/py3/bin/activate && pip install --upgrade pip && pip install -i https://pypi.douban.com/simple/ -r /opt/coco/requirements/requirements.txt
# 查看配置文件并运行
cd /opt/coco
cp conf_example.py conf.py
python run_server.py
#Jumpserver管理后台-会话管理-终端管理,接受 Coco 的注册 cd /opt/
wget https://github.com/jumpserver/luna/archive/v1.0.0.zip -O luna.zip
unzip luna.zip && rm -f luna.zip && mv luna* luna

安装docker

#curl -fsSL https://get.docker.com/ | sh
yum install -y -q docker-ce
systemctl start docker
systemctl enable docker # 安装guacamole
host_ip=`python -c "import socket;print([(s.connect(('8.8.8.8', 53)), s.getsockname()[0], s.close()) for s in [socket.socket(socket.AF_INET, socket.SOCK_DGRAM)]][0][1])"` # 将Host_IP换为本机IP后执行
docker run --name jms_guacamole -d \
--restart always \
-p 8081:8080 -v /opt/guacamole/key:/config/guacamole/key \
-e JUMPSERVER_KEY_DIR=/config/guacamole/key \
-e JUMPSERVER_SERVER=http://$host_ip:8080 \
registry.jumpserver.org/public/guacamole:1.0.0

nginx环境配置

cat << EOF > /etc/nginx/conf.d/jumpserver.conf
server {
listen 80; proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; location /luna/ {
try_files $uri / /index.html;
alias /opt/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";
} location /guacamole/ {
proxy_pass http://localhost:8081/;
proxy_buffering off;
proxy_http_version 1.1;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $http_connection;
access_log off;
} location / {
proxy_pass http://localhost:8080;
}
} EOF

其他说明

nginx配置后,通过ip打开jumpserver显示默认的nginx提示页,注释/etc/nginx/nginx.conf的默认80配置项即可

最新文章

  1. 看完SQL Server 2014 Q/A答疑集锦:想不升级都难!
  2. Apache Shiro 使用手册(四)Realm 实现
  3. 3110 PHP常见问题
  4. JS字符串截取
  5. C#高级知识点概要(1) - 委托和事件
  6. TF卡座(外焊、内焊、掀盖式、全塑、简易)
  7. js完美继承代码示例
  8. AC Me
  9. 201521123102 《Java程序设计》第5周学习总结
  10. vue事件綁定
  11. java连接数据库读取数据出现乱码
  12. 在cmd中登录MySQL数据库
  13. DevOps需要的工具
  14. 怎么让链式调用setTimeout停止
  15. 【bzoj1911】[Apio2010]特别行动队
  16. 修改tomcat的Response Hearder 头中的Server信息
  17. 【Python】用文本打印树
  18. js设置下拉框选中后change事件无效解决
  19. python大数据挖掘系列之淘宝商城数据预处理实战
  20. 扩展卢卡斯定理(Exlucas)

热门文章

  1. 使用wepy开发微信小程序01——常用的组件
  2. [.NET] 一步步打造一个简单的 MVC 电商网站 - BooksStore(一)
  3. 【MySQL】MySQL的执行计划及索引优化
  4. 解决将Excel表导入到SQL Server数据库时出现Text was truncated or one or more characters had no match in the target code错误
  5. Chart.js 與 ASP.NET MVC 整合應用
  6. ButterKnife 牛油刀使用
  7. 在 vue cli3 的项目中配置双服务,模拟 ajax 分页请求
  8. MongoDB 基础(2019年开篇)
  9. Windows服务器如何查看共享目录信息
  10. 三分钟明白 Activiti工作流 -- java运用