澳门新萄京官方网站-www.8455.com-澳门新萄京赌场网址

的安装详解,跳板机服务

2019-06-29 作者:澳门新萄京官方网站   |   浏览(61)

CentOS 7 提议在三个纯净的 centos7上海展览中心开上边包车型大巴装置配置

 本文收音和录音在Linux运行公司架构实战种类

一步一步安装(CentOS)

标签(linux): jumpserver

1、jumpserver安装

关闭 selinux 和防火墙

条件准备

  • 系统:CentOS 7
  • IP:192.168.10.101
  • 关闭selinux 和防火墙

    # CentOS 7 $ setenforce 0 # 能够安装配置文件永世关闭 $ systemctl stop iptables.service $ systemctl stop firewalld.service

    # CentOS6 $ setenforce 0 $ service iptables stop

 


作者Q:972581034 沟通群:605799367。有其余难题可与小编或加群沟通

1.1、情形介绍

系统: CentOS 7.4.1708
IP: 192.168.56.110

[root@linux-node1 ~]# uname -r
3.10.0-693.el7.x86_64
[root@linux-node1 ~]# cat /etc/redhat-release 
CentOS Linux release 7.4.1708 (Core) 
[root@jumpserver ~]# setenforce 0
[root@jumpserver ~]# systemctl stop firewalld.service
# 修改字符集,否则可能报 input/output error的问题,因为日志里打印了中文
[root@jumpserver ~]# localedef -c -f UTF-8 -i zh_CN zh_CN.UTF-8
[root@jumpserver ~]# export LC_ALL=zh_CN.UTF-8
[root@jumpserver ~]# echo 'LANG="zh_CN.UTF-8"' > /etc/locale.conf

一、谋算 Python3 和 Python 虚构蒙受

环境

首先是采纳Jumpserver前要掌握精通那四个用户关系:

1.2、关闭 selinux 和防火墙

[root@linux-node1 ~]# setenforce 0  # 可以设置配置文件永久关闭
[root@linux-node1 ~]# systemctl stop firewalld.service
[root@linux-node1 ~]# systemctl disable firewalld.service
[root@linux-node1 ~]# iptables -F
[root@linux-node1 ~]# iptables-save

预备 Python3 和 Python 虚构情形

新颖的jumpserver情况正视于Python3

安装注重包

[root@jumpserver ~]# yum -y install wget sqlite-devel xz gcc automake zlib-devel openssl-devel epel-release git
# 下载python3 编译 安装
[root@jumpserver ~]# wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tar.xz
[root@jumpserver Python-3.6.1]# tar xf Python-3.6.1.tar.xz  && cd Python-3.6.1
[root@jumpserver Python-3.6.1]# ./configure && make && make install
# 这里必须执行编译安装,否则在安装 Python 库依赖时会有麻烦...

树立 Python 虚构景况

CentOS 7 自带的是 Python2,而 yum 等工具信赖原本的 Python,为了不搅扰原本的条件大家来采纳 Python 虚构意况

[root@jumpserver Python-3.6.1]# cd /opt
[root@jumpserver opt]# python3 -m venv py3
[root@jumpserver opt]# source /opt/py3/bin/activate
# 看到下面的提示符代表成功,以后运行 Jumpserver 都要先运行以上 source 命令,以下所有命令均在该虚拟环境中运行
(py3) [root@jumpserver opt]# 

自动载入 Python 虚拟情况计划

此项仅为懒癌后期的人手运用,幸免运转 Jumpserver 时忘记载入 Python 设想遭遇导致程序不大概运营。使用autoenv

(py3) [root@jumpserver ~]# cd /opt
(py3) [root@jumpserver opt]# git clone git://github.com/kennethreitz/autoenv.git
(py3) [root@jumpserver opt]# echo 'source /opt/autoenv/activate.sh' >> ~/.bashrc
(py3) [root@jumpserver opt]# source ~/.bashrc

1、安装信赖包

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

 

-  系统: CentOS 7

-  IP: 192.168.244.144

-  关闭 selinux 和防火墙

1.用户:

是指你在web上创立的用户,会在跳板机上创立这些用户,成效就是用来登陆跳板机

1.3、企图 Python3 和 Python 虚构情形

(1)安装依赖包
[root@linux-node1 ~]# yum -y install wget sqlite-devel xz gcc automake zlib-devel openssl-devel epel-release git

(2)编译安装pyhton3.6.1
[root@linux-node1 ~]# wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tar.xz
[root@linux-node1 ~]# tar xvf Python-3.6.1.tar.xz  && cd Python-3.6.1
[root@linux-node1 ~]# ./configure && make && make install

(3)建立 Python 虚拟环境

因为 CentOS 6/7 自带的是 Python2,而 Yum 等工具依赖原来的 Python,为了不扰乱原来的环境我们来使用 Python 虚拟环境

[root@linux-node1 ~]# cd /opt
[root@linux-node1 ~]# python3 -m venv py3
[root@linux-node1 ~]# source /opt/py3/bin/activate

# 看到下面的提示符代表成功,以后运行 Jumpserver 都要先运行以上 source 命令,以下所有命令均在该虚拟环境中运行
(py3) [root@linux-node1 ~]# 

安装 Jumpserver

下载或 Clone 项目

品类交由较多 git clone 时相当的大,你能够采纳去 Github 项目页面向来下载zip包

澳门新萄京官方网站 1

(py3) [root@jumpserver opt]# git clone https://github.com/jumpserver/jumpserver.git && cd jumpserver && git checkout master
(py3) [root@jumpserver jumpserver]# echo "source /opt/py3/bin/activate" > /opt/jumpserver/.env    # 进入 jumpserver 目录时将自动载入 python 虚拟环境
(py3) [root@jumpserver jumpserver]# cd requirements/

# 首次进入 jumpserver 文件夹会有提示,按 y 即可
# Are you sure you want to allow this? (y/N) y

澳门新萄京官方网站 2

 安装正视 RPM 包

(py3) [root@jumpserver requirements]# yum -y install $(cat rpm_requirements.txt)
安装 Python 库依赖
(py3) [root@jumpserver requirements]# pip install -r requirements.txt

安装 Redis, Jumpserver 使用 Redis 做 cache 和 celery broke

(py3) [root@jumpserver requirements]# yum -y install redis
(py3) [root@jumpserver requirements]# systemctl enable redis
Created symlink from /etc/systemd/system/multi-user.target.wants/redis.service to /usr/lib/systemd/system/redis.service.
(py3) [root@jumpserver requirements]# systemctl start redis

安装 MySQL

(py3) [root@jumpserver requirements]# yum -y install mariadb mariadb-devel mariadb-server
(py3) [root@jumpserver requirements]# systemctl enable mariadb
Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.
(py3) [root@jumpserver requirements]# systemctl start mariadb

成立数据库 Jumpserver 并授权

澳门新萄京官方网站 3

(py3) [root@jumpserver requirements]# mysql
Welcome to the MariaDB monitor.  Commands end with ; or g.
Your MariaDB connection id is 2
Server version: 5.5.56-MariaDB MariaDB Server

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

MariaDB [(none)]> create database jumpserver default charset 'utf8';
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> grant all on jumpserver.* to 'jumpserver'@'127.0.0.1' identified by 'somepassword';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)

澳门新萄京官方网站 4

修改 Jumpserver 配置文件

澳门新萄京官方网站 5

(py3) [root@jumpserver requirements]# cd /opt/jumpserver
(py3) [root@jumpserver jumpserver]# cp config_example.py config.py
(py3) [root@jumpserver jumpserver]# vim config.py 

# 注意对其缩进,不要直接复制本文档的内容  
# 配置文件是 Python 格式,不要用 TAB,而要用空格 内容以实际文件为准 本文仅供参考
"""
    jumpserver.config
    ~~~~~~~~~~~~~~~~~

    Jumpserver project setting file

    :copyright: (c) 2014-2017 by Jumpserver Team
    :license: GPL v2, see LICENSE for more details.
"""
import os

BASE_DIR = os.path.dirname(os.path.abspath(__file__))


class Config:
    # Use it to encrypt or decrypt data

    # Jumpserver 使用 SECRET_KEY 进行加密,请务必修改以下设置
    # SECRET_KEY = os.environ.get('SECRET_KEY') or '2vym ky!997d5kkcc64mnz06y1mmui3lut#(^wd=%s_qj$1%x'
    SECRET_KEY = '请随意输入随机字符串(推荐字符大于等于 50位)'

    # Django security setting, if your disable debug model, you should setting that
    ALLOWED_HOSTS = ['*']

    # DEBUG 模式 True为开启 False为关闭,默认开启,生产环境推荐关闭
    # 注意:如果设置了DEBUG = False,访问8080端口页面会显示不正常,需要搭建 nginx 代理才可以正常访问
    DEBUG = os.environ.get("DEBUG") or False

    # 日志级别,默认为DEBUG,可调整为INFO, WARNING, ERROR, CRITICAL,默认INFO
    LOG_LEVEL = os.environ.get("LOG_LEVEL") or 'WARNING'
    LOG_DIR = os.path.join(BASE_DIR, 'logs')

    # 使用的数据库配置,支持sqlite3, mysql, postgres等,默认使用sqlite3
    # See https://docs.djangoproject.com/en/1.10/ref/settings/#databases

    # 默认使用SQLite3,如果使用其他数据库请注释下面两行
    # DB_ENGINE = 'sqlite3'
    # DB_NAME = os.path.join(BASE_DIR, 'data', 'db.sqlite3')

    # 如果需要使用mysql或postgres,请取消下面的注释并输入正确的信息,本例使用mysql做演示(mariadb也是mysql)
    DB_ENGINE = os.environ.get("DB_ENGINE") or 'mysql'
    DB_HOST = os.environ.get("DB_HOST") or '127.0.0.1'
    DB_PORT = os.environ.get("DB_PORT") or 3306
    DB_USER = os.environ.get("DB_USER") or 'jumpserver'
    DB_PASSWORD = os.environ.get("DB_PASSWORD") or 'somepassword'
    DB_NAME = os.environ.get("DB_NAME") or 'jumpserver'

    # Django 监听的ip和端口,生产环境推荐把0.0.0.0修改成127.0.0.1,这里的意思是允许x.x.x.x访问,127.0.0.1表示仅允许自身访问
    # ./manage.py runserver 127.0.0.1:8080
    HTTP_BIND_HOST = '127.0.0.1'
    HTTP_LISTEN_PORT = 8080

    # Redis 相关设置
    REDIS_HOST = os.environ.get("REDIS_HOST") or '127.0.0.1'
    REDIS_PORT = os.environ.get("REDIS_PORT") or 6379
    REDIS_PASSWORD = os.environ.get("REDIS_PASSWORD") or ''
    REDIS_DB_CELERY = os.environ.get('REDIS_DB') or 3
    REDIS_DB_CACHE = os.environ.get('REDIS_DB') or 4

    def __init__(self):
        pass

    def __getattr__(self, item):
        return None


class DevelopmentConfig(Config):
    pass


class TestConfig(Config):
    pass


class ProductionConfig(Config):
    pass


# Default using Config settings, you can write if/else for different env
config = DevelopmentConfig()

澳门新萄京官方网站 6

扭转数据库表结商谈开端化数据

(py3) [root@jumpserver jumpserver]# cd /opt/jumpserver/utils
(py3) [root@jumpserver utils]# bash make_migrations.sh

运行 Jumpserver

(py3) [root@jumpserver utils]# cd /opt/jumpserver
(py3) [root@jumpserver jumpserver]# ./jms start all
# 新版本更新了运行脚本,使用方式./jms start|stop|status|restart all  后台运行请添加 -d 参数

浏览器访问   暗许账号: admin 密码: admin 

页面显示不正规先不用管理 ,前面搭建 nginx 代理就可以正常访问了

2、编写翻译安装

[root@centos7-1 opt]# wget

[root@centos7-1 opt]# tar xvf Python-3.6.1.tar.xz  && cd Python-3.6.1

[root@centos7-1 opt]# ./configure && make && make install

 

    # CentOS 7

2.管理用户:

是指客户端上的如root等高权限账号(或普通用户具有NOPASSWD: ALL sudo权限), 成功能于推送系统用户

1.4、 安装 Jumpserver 1.0.0

澳门新萄京官方网站 7澳门新萄京官方网站 8

(1)下载或 Clone 项目

项目提交较多 git clone 时较大,你可以选择去 Github 项目页面直接下载zip包。

[root@linux-node1 ~]# cd /opt/
[root@linux-node1 ~]# git clone --depth=1 https://github.com/jumpserver/jumpserver.git && cd jumpserver && git checkout master

(2) 安装依赖 RPM 包

[root@linux-node1 ~]# cd /opt/jumpserver/requirements
[root@linux-node1 ~]# yum -y install $(cat rpm_requirements.txt)  # 如果没有任何报错请继续

(3)安装 Python 库依赖
[root@linux-node1 ~]# pip install -r requirements.txt  # 不要指定-i参数,因为镜像上可能没有最新的包,如果没有任何报错请继续

(4)安装 Redis, Jumpserver 使用 Redis 做 cache 和 celery broke
[root@linux-node1 ~]# yum -y install redis
[root@linux-node1 ~]# systemctl start redis

(5)安装 MySQL
[root@linux-node1 ~]# yum -y install mariadb mariadb-devel mariadb-server 
[root@linux-node1 ~]# systemctl start mariadb

(6)创建数据库 Jumpserver 并授权
[root@linux-node1 ~]# mysql
> create database jumpserver default charset 'utf8';
> grant all on jumpserver.* to 'jumpserver'@'127.0.0.1' identified by 'jumpserver';

(7)修改 Jumpserver 配置文件

[root@linux-node1 ~]# cd /opt/jumpserver
[root@linux-node1 jumpserver]# cp config_example.py config.py
[root@linux-node1 ~]# vim config.py  # 我们计划修改 DevelopmentConfig中的配置,因为默认jumpserver是使用该配置,它继承自Config
注意: 配置文件是 Python 格式,不要用 TAB,而要用空格

class DevelopmentConfig(Config):
    DEBUG = True
    DB_ENGINE = 'mysql'
    DB_HOST = '127.0.0.1'
    DB_PORT = 3306
    DB_USER = 'jumpserver'
    DB_PASSWORD = 'somepassword'
    DB_NAME = 'jumpserver'
...

config = DevelopmentConfig()  # 确保使用的是刚才设置的配置文件

(8)生成数据库表结构和初始化数据

[root@linux-node1 ~]#  cd /opt/jumpserver/utils
[root@linux-node1 ~]#  bash make_migrations.sh

(9) 运行 Jumpserver

[root@linux-node1 ~]#  cd /opt/jumpserver
[root@linux-node1 ~]#  python run_server.py all
运行不报错,请浏览器访问 http://192.168.56.110:8080/ (这里只是 Jumpserver, 没有 Web Terminal,所以访问 Web Terminal 会报错)

账号: admin 密码: admin

View Code

安装 SSH Server 和 WebSocket Server: Coco

新开二个极限,别忘了 source /opt/py3/bin/activate

澳门新萄京官方网站 9

[root@DaMoWang ~]# cd /opt
[root@DaMoWang opt]# source /opt/py3/bin/activate
(py3) [root@DaMoWang opt]# git clone https://github.com/jumpserver/coco.git && cd coco && git checkout master
(py3) [root@DaMoWang coco]# echo "source /opt/py3/bin/activate" > /opt/coco/.env    # 进入 coco 目录时将自动载入 python 虚拟环境

# 首次进入 coco 文件夹会有提示,按 y 即可
# Are you sure you want to allow this? (y/N) y

安装依赖
(py3) [root@DaMoWang coco]# cd requirements/
(py3) [root@DaMoWang requirements]# yum -y  install $(cat rpm_requirements.txt)
(py3) [root@DaMoWang requirements]# pip install -r requirements.txt -i https://pypi.org/simple

澳门新萄京官方网站 10

修改配置文件

澳门新萄京官方网站 11

(py3) [root@DaMoWang requirements]# cd /opt/coco
(py3) [root@DaMoWang coco]# cp conf_example.py conf.py
(py3) [root@DaMoWang coco]# vim conf.py 


#!/usr/bin/env python3
# -*- coding: utf-8 -*-
#

import os

BASE_DIR = os.path.dirname(__file__)


class Config:
    """
    Coco config file, coco also load config from server update setting below
    """
    # 项目名称, 会用来向Jumpserver注册, 识别而已, 不能重复
    # NAME = "localhost"
    NAME = "coco"

    # Jumpserver项目的url, api请求注册会使用, 如果Jumpserver没有运行在127.0.0.1:8080,请修改此处
    # CORE_HOST = os.environ.get("CORE_HOST") or 'http://127.0.0.1:8080'
    CORE_HOST = 'http://127.0.0.1:8080'

    # 启动时绑定的ip, 默认 0.0.0.0
    # BIND_HOST = '0.0.0.0'

    # 监听的SSH端口号, 默认2222
    # SSHD_PORT = 2222

    # 监听的HTTP/WS端口号,默认5000
    # HTTPD_PORT = 5000

    # 项目使用的ACCESS KEY, 默认会注册,并保存到 ACCESS_KEY_STORE中,
    # 如果有需求, 可以写到配置文件中, 格式 access_key_id:access_key_secret
    # ACCESS_KEY = None

    # ACCESS KEY 保存的地址, 默认注册后会保存到该文件中
    # ACCESS_KEY_STORE = os.path.join(BASE_DIR, 'keys', '.access_key')

    # 加密密钥
    # SECRET_KEY = None

    # 设置日志级别 ['DEBUG', 'INFO', 'WARN', 'ERROR', 'FATAL', 'CRITICAL']
    # LOG_LEVEL = 'INFO'
    LOG_LEVEL = 'WARN'

    # 日志存放的目录
    # LOG_DIR = os.path.join(BASE_DIR, 'logs')

    # Session录像存放目录
    # SESSION_DIR = os.path.join(BASE_DIR, 'sessions')

    # 资产显示排序方式, ['ip', 'hostname']
    # ASSET_LIST_SORT_BY = 'ip'

    # 登录是否支持密码认证
    # PASSWORD_AUTH = True

    # 登录是否支持秘钥认证
    # PUBLIC_KEY_AUTH = True

    # 和Jumpserver 保持心跳时间间隔
    # HEARTBEAT_INTERVAL = 5

    # Admin的名字,出问题会提示给用户
    # ADMINS = ''
    COMMAND_STORAGE = {
        "TYPE": "server"
    }
    REPLAY_STORAGE = {
        "TYPE": "server"
    }


config = Config()

澳门新萄京官方网站 12

运行coco

(py3) [root@DaMoWang coco]# ./cocod start -d

# 新版本更新了运行脚本,使用方式./cocod start|stop|status|restart  后台运行请添加 -d 参数

运行成功后去Jumpserver 会话管理-终端处理(

3、建立 Python 虚构遭逢

因为 CentOS 6/7 自带的是 Python2,而 Yum 等工具信赖原来的 Python,为了不震憾原本的情状大家来使用 Python 虚构境况

[root@centos7-1 opt]# cd /opt

[root@centos7-1 opt]# python3 -m venv py3

[root@centos7-1 opt]# source /opt/py3/bin/activate

注:看到下边包车型大巴唤醒符代表成功,将来运营 Jumpserver 都要先运营以上 source 命令,以下有所命令均在该虚构境况中运作

(py3) [root@centos7-1 opt]#

 

    $ setenforce 0  # 可以设置配置文件长久关闭

    $ systemctl stop iptables.service

    $ systemctl stop firewalld.service

    # 修改字符集,不然或许报 input/output error的难题,因为日志里打字与印刷了华语

    $ 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/locale.conf

3.种类用户:

是指要在客户端上成立那一个系统用户,通过推送来完结,成效正是登入客户端

1.5、安装 SSH Server 和 WebSocket Server: Coco

澳门新萄京官方网站 13澳门新萄京官方网站 14

(1)下载或 Clone 项目

新开一个终端,连接测试机,别忘了 source /opt/py3/bin/activate

$ cd /opt
$ git clone https://github.com/jumpserver/coco.git && cd coco && git checkout master

(2)安装依赖

$ cd /opt/coco/requirements
$ yum -y  install $(cat rpm_requirements.txt)
$ pip install -r requirements.txt

(3)查看配置文件并运行

$ cd /opt/coco
$ cp conf_example.py conf.py
$ python run_server.py
这时需要去 Jumpserver 管理后台-会话管理-终端管理(http://192.168.56.110:8080/terminal/terminal/)接受 Coco 的注册

Coco version 0.4.0, more see https://www.jumpserver.org
Starting ssh server at 0.0.0.0:2222
Quit the server with CONTROL-C.

View Code

澳门新萄京官方网站 15

安装 Web Terminal 前端: Luna

Luna 已改为纯前端,要求 Nginx 来运作访问

访问()下载对应版本的 release 包,间接解压,无需编写翻译

澳门新萄京官方网站 16

(py3) [root@DaMoWang coco]# cd /opt
(py3) [root@DaMoWang opt]# wget https://github.com/jumpserver/luna/releases/download/1.3.3/luna.tar.gz
(py3) [root@DaMoWang opt]# tar xf luna.tar.gz
(py3) [root@DaMoWang opt]# ll
总用量 5224
drwxr-xr-x  4 root root      154 8月   5 21:37 autoenv
drwxr-xr-x  9 root root      296 8月   5 22:15 coco
drwxr-xr-x 12 root root      301 8月   5 22:03 jumpserver
drwxr-xr-x  5  501 games    8192 7月  19 12:27 luna
-rw-r--r--  1 root root  5335554 7月  19 12:32 luna.tar.gz
drwxr-xr-x  6 root root      120 8月   5 21:49 py3
(py3) [root@DaMoWang opt]# chown -R root.root luna

澳门新萄京官方网站 17

二、安装 Jumpserver 1.0.0

    # CentOS6

4.管制用户和系统用户的涉及:

两边都以客户端上的用户,后面一个提到到叁个推送动作,

比如推送test系统用户,也就是在客户端上创建test用户,那么创建用户需要有权限,

有没有权限创建就要看你是用客户端的root用户还是普通用户做为管理用户,

如果后者做为管理用户就需要添加sudo权限又是NOPASSWD: ALL,

这样推送系统用户,就可以成功在客户端上创建test用户

1.6、测量检验连接

#命令行远程连接跳板机
[root@linux-node1 ~]#  ssh -p2222 admin@192.168.56.110
The authenticity of host '[192.168.56.110]:2222 ([192.168.56.110]:2222)' can't be established.
RSA key fingerprint is SHA256: OT2q1lPHGXKkfKOeZiNaoHx5LPMBAa48MWsmqwaHKE.
RSA key fingerprint is MD5:3c:37:c3:20:ca:17:f9:c0:3e:92:dc:d9:b0:08:1a:7f.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[192.168.56.110]:2222' (RSA) to the list of known hosts.
admin@192.168.56.110's password: 密码: admin
如图所示:

澳门新萄京官方网站 18

只假设用在 Windows 下,Xshell Terminal 登陆语法如下
$ssh admin@192.168.56.110 2222
密码: admin
假设能登入代表陈设成功

安装 Windows 支持组件

1、下载或 Clone 项目

品种交付较多 git clone 时十分的大,你能够选拔去 Github 项目页面一贯下载zip包。

(py3) [root@centos7-1 opt]# cd /opt/

(py3) [root@centos7-1 opt]# git clone --depth=1 && cd jumpserver && git checkout master

 

    $ setenforce 0

    $ service iptables stop

    # 修改字符集,否则大概报 input/output error的主题素材,因为日志里打字与印刷了普通话

    $ 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

环境

[root@jumpserver ~]# cat /etc/redhat-release 
CentOS Linux release 7.3.1611 (Core)

1.7、安装 Web Terminal 前端: Luna

卢纳 已改为纯前端,须要 Nginx 来运维访问
访问(https://github.com/jumpserver/luna/releases)下载对应版本的 release 包,直接解压,无需编写翻译

(1)解压 Luna

[root@linux-node1 ~]# pwd
/opt/

[root@linux-node1 ~]# tar xvf luna.tar.gz
[root@linux-node1 ~]# ls /opt/luna

假诺无需管理 windows 资金财产,能够平昔跳过这一步

因为手动安装 guacamole 组件比较复杂,这里提供打包好的 docker 使用, 运维 guacamole

 

安装Docker

 

澳门新萄京官方网站 19

(py3) [root@DaMoWang opt]# yum remove docker-latest-logrotate  docker-logrotate  docker-selinux dockdocker-engine
(py3) [root@DaMoWang opt]# yum install -y yum-utils   device-mapper-persistent-data   lvm2
# 添加docker官方源
(py3) [root@DaMoWang opt]# yum-config-manager     --add-repo     https://download.docker.com/linux/centos/docker-ce.repo
(py3) [root@DaMoWang opt]# yum makecache fast
(py3) [root@DaMoWang opt]# yum install docker-ce

# 国内部分用户可能无法连接docker官网提供的源,这里提供阿里云的镜像节点供测试使用
(py3) [root@DaMoWang opt]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
(py3) [root@DaMoWang opt]# rpm --import http://mirrors.aliyun.com/docker-ce/linux/centos/gpg
(py3) [root@DaMoWang opt]# yum makecache fast
(py3) [root@DaMoWang opt]# yum -y install docker-ce

(py3) [root@DaMoWang opt]# systemctl start docker
(py3) [root@DaMoWang opt]# systemctl status docker

澳门新萄京官方网站 20

 

启动 Guacamole

澳门新萄京官方网站 21

# 注意:这里需要修改下 http://<填写jumpserver的url地址> 例: http://192.168.1.23, 否则会出错
# 不能使用 127.0.0.1 ,可以更换 registry.jumpserver.org/public/guacamole:latest

(py3) [root@DaMoWang opt]# docker run --name jms_guacamole -d 
  -p 8081:8080 -v /opt/guacamole/key:/config/guacamole/key 
  -e JUMPSERVER_KEY_DIR=/config/guacamole/key 
  -e JUMPSERVER_SERVER=http://<填写jumpserver的url地址>:8080 
  registry.jumpserver.org/public/guacamole:1.0.0

澳门新萄京官方网站 22

 

此地所须要小心的是 guacamole 映射出来的端口是 8081,若与主机上任何端口争论请自定义

起步成功后去Jumpserver 会话管理-终端管理(

2、安装信赖 RPM 包

(py3) [root@centos7-1 jumpserver]# cd /opt/jumpserver/requirements

(py3) [root@centos7-1 jumpserver]# yum -y install $(cat rpm_requirements.txt)  # 若无别的报错请继续

 

一. 策动 Python3 和 Python 设想境遇

一. 准备Python3和Python设想蒙受

1.8、 配置 Nginx 整合各组件

澳门新萄京官方网站 23澳门新萄京官方网站 24

(1)安装 Nginx 根据喜好选择安装方式和版本
[root@linux-node1 ~]# yum -y install nginx

(2)准备配置文件 修改 /etc/nginx/nginx.conf

[root@linux-node1 conf.d]# cat /etc/nginx/nginx.conf
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;

# Load dynamic modules. See /usr/share/nginx/README.dynamic.
include /usr/share/nginx/modules/*.conf;

events {
    worker_connections 1024;
}

http {
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile            on;
    tcp_nopush          on;
    tcp_nodelay         on;
    keepalive_timeout   65;
    types_hash_max_size 2048;

    include             /etc/nginx/mime.types;
    default_type        application/octet-stream;

    # Load modular configuration files from the /etc/nginx/conf.d directory.
    # See http://nginx.org/en/docs/ngx_core_module.html#include
    # for more information.
    include /etc/nginx/conf.d/*.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;
    }
}
}

(3)运行 Nginx
[root@linux-node1 ~]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@linux-node1 ~]# systemctl reload nginx

(4)访问 http://192.168.56.110,如图:

View Code

澳门新萄京官方网站 25

合法文书档案:

 

 

设置 Nginx 依据喜好选用安装格局和版本

(py3) [root@DaMoWang opt]# yum -y install nginx

安不忘危布置文件 修改 /etc/nginx/nginx.conf

澳门新萄京官方网站 26

(py3) [root@DaMoWang opt]# vim /etc/nginx/nginx.conf
# 把默认server配置块改成这样,原有的内容请保持不动

server {
    listen 80;  # 代理端口,以后将通过此端口进行访问,不再通过8080端口

    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/;  # 如果coco安装在别的服务器,请填写它的ip
        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 /guacamole/ {
        proxy_pass       http://localhost:8081/;  # 如果guacamole安装在别的服务器,请填写它的ip
        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;
        client_max_body_size 100m;  # Windows 文件上传大小限制
    }

    location / {
        proxy_pass http://localhost:8080;  # 如果jumpserver安装在别的服务器,请填写它的ip
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
} 

(py3) [root@DaMoWang opt]# nginx -t 

开启nginx服务  (py3) [root@DaMoWang opt]# systemctl start nginx  (py3) [root@DaMoWang opt]# systemctl enable nginx  Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service.

澳门新萄京官方网站 27

开始运用 Jumpserve

检查采纳是或不是曾经见惯不惊运营

澳门新萄京官方网站 28

(py3) [root@DaMoWang opt]# cd jumpserver/
(py3) [root@DaMoWang jumpserver]# ./jms status    # 确定jumpserver已经运行,如果没有运行请重新启动jumpserver
gunicorn is running: 18443
celery is running: 18462
beat is running: 18465
(py3) [root@DaMoWang jumpserver]# cd /opt/coco    # 确定jumpserver已经运行,如果没有运行请重新启动coco
(py3) [root@DaMoWang coco]# ./cocod status
Coco is running: 18749
# 如果安装了 Guacamole
(py3) [root@DaMoWang coco]# docker ps    # 检查容器是否已经正常运行,如果没有运行请重新启动Guacamole
CONTAINER ID        IMAGE                         COMMAND             CREATED             STATUS              PORTS                    NAMES
a4572da64996        jumpserver/guacamole:latest   "/init"             10 minutes ago      Up 10 minutes       0.0.0.0:8081->8080/tcp   jms_guacamole

澳门新萄京官方网站 29

劳动整个起步后,访问 

默许账号: admin 密码: admin

测量试验连接

如果登录客户端是 macOS 或 Linux ,登录语法如下
$ ssh -p2222 admin@192.168.1.23
$ sftp -P2222 admin@192.168.1.23密码: admin

如果登录客户端是 Windows ,Xshell Terminal 登录语法如下
$ ssh admin@192.168.1.23 2222
$ sftp admin@192.168.1.23 2222
密码: admin
如果能登陆代表部署成功

# sftp默认上传的位置在资产的 /tmp 目录下
# windows拖拽上传的位置在资产的 Guacamole RDP上的 G 目录下

        

            

                                                 

 

3、安装 Python 库依赖

(py3) [root@centos7-1 requirements]# pip install -r requirements.txt  # 不要钦命-i参数,因为镜像上大概未有流行的包,若无任何报错请继续

打响如下图:

澳门新萄京官方网站 30

 

**1.1 安装重视包**

1.1 安装重视包

yum -y install wget sqlite-devel xz gcc automake zlib-devel openssl-devel

4、安装 Redis, Jumpserver 使用 Redis 做 cache 和 celery broke

(py3) [root@centos7-1 requirements]# yum -y install redis

(py3) [root@centos7-1 requirements]# systemctl start redis

 

    $ yum -y install wget sqlite-devel xz gcc automake zlib-devel openssl-devel epel-release git

1.2 编译安装

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 && make && make install

5、安装 MySQL

本课程使用 Mysql 作为数据库,假如不行使 Mysql 可以跳过相关 Mysql 安装和布署

(1)# centos7

(py3) [root@centos7-1 requirements]# yum -y install mariadb mariadb-devel mariadb-server  # centos7下安装的是mariadb

(py3) [root@centos7-1 requirements]# systemctl start mariadb.service

(2)# centos6

$ yum -y install mysql mysql-devel mysql-server

$ service mysqld start

 

**1.2 编写翻译安装**

1.3 创建python虚构意况

6、创立数据库 Jumpserver 并授权

(py3) [root@centos7-1 requirements]# mysql

MariaDB [(none)]>  create database jumpserver default charset 'utf8';

Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]>  grant all on jumpserver.* to 'jumpserver'@'127.0.0.1' identified by 'along';

Query OK, 0 rows affected (0.00 sec)

 

    $ wget

    $ tar xvf Python-3.6.1.tar.xz  && cd Python-3.6.1

    $ ./configure && make && make install

    # 这里不可不施行编写翻译安装,否则在装置 Python 库注重时会有麻烦...

因为CentOS 6/7自带的是Python2,而Yum等工具正视原本的Python,为了不惊扰原本的条件我们来选取Python虚构境况

cd /opt
python3 -m venv py3
source /opt/py3/bin/activate

7、修改 Jumpserver 配置文件

(py3) [root@centos7-1 requirements]# cd /opt/jumpserver

(py3) [root@centos7-1 jumpserver]# cp config_example.py config.py

(py3) [root@centos7-1 jumpserver]# vim config.py   # 我们布署修改 DevelopmentConfig中的配置,因为暗中认可jumpserver是行使该配置,它一连自Config

class DevelopmentConfig(Config):    #找到这一段,进行下面的配置
    DEBUG = True
    DB_ENGINE = 'mysql'
    DB_HOST = '127.0.0.1'
    DB_PORT = 3306
    DB_USER = 'jumpserver'
    DB_PASSWORD = 'along'
    DB_NAME = 'jumpserver'

注意: 配置文件是 Python 格式,不要用 TAB,而要用空格

 

**1.3 创建 Python 设想情形**

看到上边的提醒符代表成功,现在运营jumpserver都要先运转以上source命令,以下有所命令均在该虚构情形中运营

(py3) [root@localhost py3]#

8、生成数据库表结构和初阶化数据

(py3) [root@centos7-1 jumpserver]# cd /opt/jumpserver/utils

(py3) [root@centos7-1 utils]# bash make_migrations.sh

成功如下图:

澳门新萄京官方网站 31

 

因为 CentOS 6/7 自带的是 Python2,而 Yum 等工具正视原本的 Python,为了不纷扰原本的条件我们来利用 Python 虚构处境

二. 安装Jumpserver 0.4.0

9、运行 Jumpserver

(1)老版本运维方法

(py3) [root@centos7-1 utils]# cd /opt/jumpserver

(py3) [root@centos7-1 jumpserver]# python run_server.py all

 (2)新本子运维方法

(py3) [root@centos7-1 jumpserver]# ./jms start all     # 后台运转使用-d 如:参数./jms start all -d

# 新本子更新了运营脚本,使用形式./jms start|stop|status|restart all 后台运转请加多 -d 参数

 

    $ cd /opt

    $ python3 -m venv py3

    $ source /opt/py3/bin/activate

    # 看到上面包车型大巴提醒符代表成功,以往运行 Jumpserver 都要先运转以上 source 命令,以下有所命令均在该设想情形中运作

    (py3) [root@localhost py3]

2.1 下载或clone项目

10、浏览器访问http://192.168.10.101:8080/

注意:

① 第叁次运营时或然报错,(这里只是 Jumpserver, 未有 Web Terminal,所以访问 Web Terminal 会报错)

② 终止程序,再度奉行,就足以登陆了

(py3) [的安装详解,跳板机服务。root@centos7-1 jumpserver]# ./jms start all 

账号: admin 密码: admin

③ 登陆成功

澳门新萄京官方网站 32

 

二. 安装 Jumpserver 1.0.0

品类交由较多git clone时极大,你能够选用去github项目页面一直下载 zip包,笔者的网速好,作者直接clone了
 cd /opt/
 git clone https://github.com/jumpserver/jumpserver.git

三、安装 SSH Server 和 WebSocket Server: Coco

**2.1 下载或 Clone 项目**

2.2 安装依赖rpm包

 cd /opt/
 cd jumpserver/requirements
 yum -y install epel-release
 yum -y install $(cat rpm_requirements.txt)  # 如果没有任何报错请继续

1、下载或 Clone 项目

新开一个终极,连接测量检验机,别忘了 source /opt/py3/bin/activate

[root@centos7-1 ~]# source /opt/py3/bin/activate

(py3) [root@centos7-1 ~]# cd /opt/

(py3) [root@centos7-1 opt]# git clone && cd coco && git checkout master

 

花色交由较多 git clone 时非常的大,你能够挑选去 Github 项目页面一直下载zip包。

2.3 安装python库依赖

 pip install -r requirements.txt  # 如果没有任何报错请继续

2、安装重视

(py3) [root@centos7-1 coco]# cd /opt/coco/requirements

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

(py3) [root@centos7-1 requirements]# pip install -r requirements.txt

中标如下图:

澳门新萄京官方网站 33

 

    $ cd /opt/

    $ git clone --depth=1 && cd jumpserver && git checkout master

的安装详解,跳板机服务。2.4 安装Redis, jumpserver使用celery依赖

 yum -y install redis
 systemctl start redis

3、查看配置文件并运营

(1)运行

(py3) [root@centos7-1 requirements]# cd /opt/coco

(py3) [root@centos7-1 coco]# cp conf_example.py conf.py

(py3) [root@centos7-1 coco]# ./cocod start   # 后台运转使用 -d 参数./cocod start -d

# 新本子更新了运转脚本,使用方式./cocod start|stop|status|restart 后台运维请增加 -d 参数

 

(2)那时急需去 Jumpserver 处理后台-会话管理-终端管理(http://192.168.10.101:8080/terminal/terminal/)接受 Coco 的注册澳门新萄京官方网站 34

 

(3)命令行终端展现三回九转成功

澳门新萄京官方网站 35

 

**2.2 安装注重 RPM 包**

2.5 安装MySQL

本文使用mysql作为数据库,若是不选拔mysql能够跳过有关mysql安装和布署

 yum -y install mariadb mariadb-devel mariadb-server # centos7下安装的是mariadb,阿里云默认源的/etc/my.cnf可能导致不能启动
 systemctl  start mariadb
service mariadb start

4、测量检验连接

(1)linux 连接

[root@centos7-1 ~]# ssh -p2222 admin@192.168.10.101   #新开三个巅峰去老是密码: admin

(2)假诺是用在 Windows 下,Xshell Terminal 登入语法如下

$ssh admin@192.168.244.144 2222

密码: admin

若是能登入代表安插成功

(3)登陆成功如下图:

澳门新萄京官方网站 36

 

    $ cd /opt/jumpserver/requirements

    $ yum -y install $(cat rpm_requirements.txt) 

     # 如果未有任何报错请继续

2.6 创立数据库 jumpserver并授权

mysql> create database jumpserver default charset 'utf8';
mysql> grant all on jumpserver.* to 'jumpserver'@'127.0.0.1' identified by 'somepassword';

四、安装 Web Terminal 前端: Luna

**2.3 安装 Python 库依赖**

2.7 安装 python3 mysql驱动: mysqlclient

#由于MySQLdb库不支持 python3.5 ,所以选择了mysqlclient作为驱动,pymysql使用python写的,速度较慢
 pip install mysqlclient

1、下载 Luna

Luna 已改为纯前端,须要 Nginx 来运营访问

访问()下载对应版本的 release 包,直接解压,没有须求编写翻译

[root@centos7-1 ~]# cd /opt/

[root@centos7-1 opt]# wget

 

    $ pip install -r requirements.txt 

2.8 修改jumpserver配置文件

 cd /opt/jumpserver
 cp config_example.py config.py
 vi config.py  # 我们计划修改 DevelopmentConfig中的配置,因为默认jumpserver是使用该配置,它继承自Config
class DevelopmentConfig(Config):
    DEBUG = True
    DISPLAY_PER_PAGE = 20
    DB_ENGINE = 'mysql'
    DB_HOST = '127.0.0.1'
    DB_PORT = 3306
    DB_USER = 'jumpserver'
    DB_PASSWORD = 'somepassword'
    DB_NAME = 'jumpserver'
    EMAIL_HOST = 'smtp.exmail.qq.com'
    EMAIL_PORT = 465
    EMAIL_HOST_USER = 'a@jumpserver.org'
    EMAIL_HOST_PASSWORD = 'somepasswrd'
    EMAIL_USE_SSL = True
    EMAIL_USE_TLS = False
    EMAIL_SUBJECT_PREFIX = '[Jumpserver] '
    SITE_URL = 'http://192.168.244.144:8080'

2、解压 Luna

[root@centos7-1 opt]# tar xvf luna.tar.gz

[root@centos7-1 opt]# ls /opt/luna

澳门新萄京官方网站 37

 

 # 不要内定-i参数,因为镜像上只怕未有新型的包,若无此外报错请继续

2.9 生成多少库表结谈判开首化数据

 cd /opt/jumpserver/utils
 bash make_migrations.sh
 bash init_db.sh

五、安装 Windows 协理组件(如若没有须求管理 windows 资金财产,能够一向跳过这一步)

因为手动安装 guacamole 组件比较复杂,这里提供打包好的 docker 使用, 运营guacamole

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

2.10 运行Jumpserver

source /opt/py3/bin/activate
cd /opt/jumpserver
python run_server.py

运作不报错,请浏览器访问 账号: admin 密码: admin

1、Docker安装 (仅针对CentOS7,CentOS6,安装Docker绝相比较复杂)

① 安装依赖
[root@centos7-1 ~]# yum remove docker-latest-logrotate  docker-logrotate  docker-selinux dockdocker-engine
[root@centos7-1 ~]# yum install -y yum-utils  device-mapper-persistent-data   lvm2

② 安装docker
添加docker官方源
[root@centos7-1 ~]# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
[root@centos7-1 ~]# yum makecache fast
[root@centos7-1 ~]# yum install docker-ce

③ 国内部分用户可能无法连接docker官网提供的源,这里提供阿里云的镜像节点供测试使用
[root@centos7-1 ~]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
[root@centos7-1 ~]# rpm --import http://mirrors.aliyun.com/docker-ce/linux/centos/gpg
[root@centos7-1 ~]# yum makecache fast
[root@centos7-1 ~]# yum -y install docker-ce

④ 启动docker
[root@centos7-1 ~]# systemctl start docker
[root@centos7-1 ~]# systemctl status docker

 

    $ yum -y install redis

    $ systemctl start redis

    # centos6

    $ service redis start

三. 安装 SSH Server: Coco

2、启动 Guacamole

① 这里所供给注意的是 guacamole 暴表露来的端口是 8081,若与主机上别的端口抵触请自定义

修改 JUMPSERVER_SEEvoqueVEHaval 情状变量的配备,填上 Jumpserver 的内网地址

# 注意:这里一定要改写一下本机的IP地址, 否则会出错, 带宽有限, 下载时间可能有点长,可以喝杯咖啡,撩撩对面的妹子
docker run --name jms_guacamole -d 
  -p 8081:8080 -v /opt/guacamole/key:/config/guacamole/key 
  -e JUMPSERVER_KEY_DIR=/config/guacamole/key 
  -e JUMPSERVER_SERVER=http://<填写本机的IP地址>:8080 
  registry.jumpserver.org/public/guacamole:1.0.0 

② 试行进度截图

澳门新萄京官方网站 38

 

**2.5 安装 MySQL**

3.1 下载clone项目

新开二个终极,连接测验机,别忘了 source /opt/py3/bin/activate

 source /opt/py3/bin/activate
 cd /opt
 git clone https://github.com/jumpserver/coco.git

3、在jumpserver 接受登记

起步成功后去 Jumpserver 会话管理-终端管理( 澳门新萄京官方网站 39

 

本学科使用 Mysql 作为数据库,如若不选择 Mysql 能够跳过相关 Mysql 安装和安顿

3.2 安装依赖

 cd /opt/coco/requirements
 yum -y  install $(cat rpm_requirements.txt)
 pip install -r requirements.txt

六、配置 Nginx 整合各组件

    # centos7

3.3 查看配置文件并运转

 cd /opt/coco
 cat config.py
 python run_server.py

ERROR:root:Load access key failed
Using access key 311d0e77-5ec9-4c46-a131-7409e1daf271:***
WARNING:/opt/coco/coco/service.py:App auth failed, Access key error or need admin active it

1、安装 Nginx 依照喜好选拔安装格局和版本

nginx 官网

澳门新萄京官方网站 40

(1)安装前打算

① 下载版本包,笔者以nginx-1.12.2为例

[root@centos7-1 nginx]# wget -c

[root@centos7-1 nginx]# tar -xvf nginx-1.12.2.tar.gz

② 下载依赖包

[root@centos7-1 nginx]# yum install gc gcc gcc-c pcre-devel zlib-devel openssl-devel

③ 创建nginx用户、组

[root@centos7-1 nginx-1.12.2]# groupadd nginx

[root@centos7-1 nginx-1.12.2]# useradd -s /sbin/nologin -g nginx -M nginx

 

(2)编写翻译安装

[root@centos7-1 nginx-1.12.2]# ./configure --user=nginx --group=nginx --prefix=/mnt/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module

[root@centos7-1 nginx-1.12.2]# make && make install

[root@centos7-1 nginx-1.12.2]# cd /mnt/nginx/    # 完成

澳门新萄京官方网站 41

注释:#点名运营权限的用户

--user=nginx

#点名运营的权限用户组

--group=nginx

#点名安装路线

--prefix=/usr/local/nginx

#援助nginx状态查询

--with-http_stub_status_module

#开启ssl支持

--with-http_ssl_module

#开启GZIP功能

--with-http_gzip_static_module

 

(3)使systemctl 控制nginx 服务

[root@centos7-1 nginx]# vim /usr/lib/systemd/system/nginx.service

[Unit]
Description=nginx - high performance web server
Documentation=http://nginx.org/en/docs/
After=network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/mnt/nginx/logs/nginx.pid
ExecStartPre=/mnt/nginx/sbin/nginx -t -c /mnt/nginx/conf/nginx.conf
ExecStart=/mnt/nginx/sbin/nginx -c /mnt/nginx/conf/nginx.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

 

    $ yum -y install mariadb mariadb-devel mariadb-server # centos7下安装的是mariadb

    $ systemctl enable mariadb

    $ systemctl start mariadb

那时须求去 jumpserver管理后台-应用程序-终端(http://192.168.244.144:8080/applications/terminal/)接受coco的注册接受coco的注册)

Coco version 0.4.0, more see https://www.jumpserver.org
Starting ssh server at 0.0.0.0:2222
Quit the server with CONTROL-C.

此时达成安装

2、企图安顿文件

[root@centos7-1 ~]# vim /mnt/nginx/conf/nginx.conf   清除已部分server段

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;
    }
}

 

    # centos6

3.4 测量检验连接

 ssh -p2222 admin@192.168.244.144

密码: admin
澳门新萄京官方网站,若是是用Xshell登陆语法如下

ssh admin@192.168.244.144 2222

密码: admin
假定能登录代表布署成功

3、运行 Nginx

[root@centos7-1 ~]# /mnt/nginx/sbin/nginx -t   # 检查陈设文件

[root@centos7-1 ~]# service nginx start

 

    $ yum -y install mysql mysql-devel mysql-server

    $ chkconfig mysqld on

    $ service mysqld start

四. 安装 Web Terminal: Luna

新开贰个终极,连接测验机,别忘了 source /opt/py3/bin/activate

4、访问 http://192.168.10.101

澳门新萄京官方网站 42

 

**2.6 创设数据库 Jumpserver 并授权**

4.1 下载clone项目

source /opt/py3/bin/activate
 cd /opt
 git clone https://github.com/jumpserver/luna.git

    $ mysql

    > create database jumpserver default charset 'utf8';

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

4.2 安装重视

 cd /opt/luna/requirements
 yum -y install $(cat rpm_requirements.txt)
 pip install -r requirements.txt

**2.7 修改 Jumpserver 配置文件**

4.3 查看配置文件并运营

 cd /opt/luna
 cat config.py
 python run_server.py

ERROR:root:Load access key failed
Using access key 5bfdbf63-bef5-4cfb-9e31-2d873bdddb03:***
WARNING:luna.service:App auth failed, Access key error or need admin active it

    $ cd /opt/jumpserver

    $ cp config_example.py config.py

    $ vi config.py

4.4 同样去jumpserver管理后台接受luna注册

应用程序-终端 接受

Luna version 0.4.0, more see https://www.jumpserver.org
Starting web server at 0.0.0.0:5000
Quit the server with CONTROL-C.

    # 大家安排修改 DevelopmentConfig 中的配置,因为私下认可 Jumpserver 使用该配置,它继续自 Config

4.5 测试

访问 http://192.168.244.144:5000

**只顾: 配置文件是 Python 格式,不要用 TAB,而要用空格**

    class DevelopmentConfig(Config):

        DEBUG = True

        DB_ENGINE = 'mysql'

        DB_HOST = '127.0.0.1'

        DB_PORT = 3306

        DB_USER = 'jumpserver'

        DB_PASSWORD = 'somepassword'

        DB_NAME = 'jumpserver'

    ...

    config = DevelopmentConfig() 

 # 确认保证使用的是刚刚设置的配置文件

**2.8 生成数据库表结会谈开首化数据**

    $ cd /opt/jumpserver/utils

    $ bash make_migrations.sh

**2.9 运行 Jumpserver**

    $ cd /opt/jumpserver

    $ ./jms start all 

# 后台运维使用 -d 参数./jms start all -d

    # 新本子更新了运行脚本,使用形式./jms start|stop|status|restart all  后台运维请增添 -d 参数

运营不报错,请浏览器访问   页面展现不正规先不用管理,搭建 nginx 代理就足以日常访问了

依赖重启的措施

    $ ./jms restart

三. 安装 SSH Server 和 WebSocket Server: Coco

**3.1 下载或 Clone 项目**

新开一个巅峰,连接测验机,别忘了 source /opt/py3/bin/activate

    $ cd /opt

    $ source /opt/py3/bin/activate

    $ git clone && cd coco && git checkout master

**3.2 安装注重**

    $ cd /opt/coco/requirements

    $ yum -y  install $(cat rpm_requirements.txt)

    $ pip install -r requirements.txt

**3.3 查看配置文件并运营**

    $ cd /opt/coco

    $ cp conf_example.py conf.py  # 如若 coco 与 jumpserver 分开计划,请手动修改 conf.py

    $ ./cocod start  # 后台运营使用 -d 参数./cocod start -d

    # 新本子更新了运维脚本,使用格局./cocod start|stop|status|restart  后台运转请加多 -d 参数

    Coco version 1.0.0, more see

    Starting ssh server at 0.0.0.0:2222

    Quit the server with CONTROL-C.

四. 安装 Web Terminal 前端: Luna

Luna 已改为纯前端,必要 Nginx 来运作访问

访问( release 包,直接解压,无需编写翻译

4.1 解压 Luna

    $ pwd

    /opt/

    $ wget

    $ tar xvf luna.tar.gz

    $ ls /opt/luna

    ...

五. 安装 Windows 帮忙组件(假设无需管理 windows 资金财产,可以直接跳过这一步)

因为手动安装 guacamole 组件比较复杂,这里提供打包好的 docker 使用, 启动guacamole

5.1 Docker安装 (仅针对CentOS7,CentOS6装置Docker绝相比较复杂)

    $ yum remove docker-latest-logrotate  docker-logrotate  docker-selinux dockdocker-engine

    $ yum install docker-ce

    $ yum install -y yum-utils  device-mapper-persistent-data  lvm2

    $ yum-config-manager    --add-repo   

    $ yum-config-manager --enable docker-ce-edge

    $ yum-config-manager --enable docker-ce-test

    $ yum-config-manager --disable docker-ce-edge

    $ yum install docker-ce

    $ systemctl start docker

    $ systemctl status docker

5.2 启动 Guacamole

此地所要求注意的是 guacamole 暴揭露来的端口是 8081,若与主机上别样端口争论请自定义

修改 JUMPSERVER_SE途睿欧VEEscort 情况变量的安排,填上 Jumpserver 的内网地址, 运转成功后去

Jumpserver 会话管理-终端管理(

.. code:: shell

    # 注意:这里一定要改写一下本机的IP地址, 不然会出错, 带宽有限, 下载时间可能有一点长,能够喝杯咖啡,撩撩对面包车型地铁妹子

    $ docker run --name jms_guacamole -d

      -p 8081:8080 -v /opt/guacamole/key:/config/guacamole/key

      -e JUMPSERVER_KEY_DIR=/config/guacamole/key

      -e JUMPSERVER_SERVER=

      registry.jumpserver.org/public/guacamole:1.0.0

六. 安顿 Nginx 整合各组件

6.1 安装 Nginx 根据喜好选择设置方式和本子

    $ yum -y install nginx

6.2 计划安顿文件 修改 /etc/nginx/conf.d/jumpserver.conf

剧情如下:

    $ vim /etc/nginx/nginx.conf

    ... 省略

    # 把暗许server配置块改成那样

    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      ;  # 假若coco安装在其他服务器,请填入它的ip

            proxy_buffering off;

            proxy_http_version 1.1;

            proxy_set_header Upgrade $http_upgrade;

            proxy_set_header Connection "upgrade";

        }

        location /guacamole/ {

            proxy_pass      ;  # 请修改成运转docker服务的服务器IP,windows资金财产连接白屏的标题诸多是出现在那边

            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 ;  # 假使jumpserver安装在别的服务器,请填入它的ip

        }

    }

    ... 省略

6.3 运行 Nginx

    nginx -t  # 确定保证布局没不符合规律, 不通常请先消除

    # CentOS 7

    $ systemctl start nginx

    $ systemctl enable nginx

    # CentOS 6

    $ service nginx start

    $ chkconfig nginx on

6.4 访问

暗中认可账号: admin 密码: admin

到会话管理-终端管理 接受 Coco Guacamole 等利用的注册

** 测试连接**

    $ ssh -p2222 admin@192.168.244.144

    密码: admin

    假设是用在 Windows 下,Xshell Terminal 登陆语法如下

    $ssh admin@192.168.244.144 2222

    密码: admin

    假诺能登入代表安顿成功

本文由澳门新萄京官方网站发布于澳门新萄京官方网站,转载请注明出处:的安装详解,跳板机服务

关键词: