Gestión del equipo fortaleza construida jumperserver millón de servidores (1)

1 Descripción general del equipo Jumpserver fortaleza - despliegue entorno operativo Jumpserver

Coco conjunto de montaje 2

3 Instalación Web-Terminal -Luna distal montaje - Integración de los componentes dispuestos Nginx

4 jumpserver sistema de plataforma de inicialización

5 de combate: gestionar decenas de miles de servidores que utilizan jumpserver

  Preparación para la implementación:

 

1.1 Visión general de escalones

máquina Springboard es un servidor, el desarrollo o el personal de operación y mantenimiento en el proceso de mantenimiento debe unificado primera entrada a este servidor, y luego iniciar la sesión en los dispositivos de destino para el mantenimiento y operación;

Trampolines Contras: no se han aplicado para el personal de operación y mantenimiento comportamiento operativo de control y de auditoría, proceso o uso de trampolín aparece la máquina al mal uso, abuso accidente causado vez que la operación es difícil de localizar rápidamente la causa del accidente y los responsables;

 

Fortaleza Descripción general de la máquina:

máquina de fortaleza, es decir, en un entorno de red específica, con el fin de proteger contra la red y los datos de los usuarios externos e internos de la invasión y destrucción, y el uso de diversas técnicas para recoger y controlar el entorno de red en tiempo real cada parte componente del sistema estatal, los eventos de seguridad, actividad de la red con el fin de centrarse alarma, y ​​la auditoría serán responsables de procesamiento oportuno.

máquina de fortaleza más de escalones para recoger en tiempo real, entorno de red del monitor, alarma centralizada.

 Jumpserver general:

Jumpserver es un uso de Python, Django trampolín para el desarrollo de sistemas de código abierto para las empresas de Internet proporcionar funciones de autenticación, autorización, auditoría, operación y mantenimiento automatizado.

 

jumpserver instrucciones de montaje fortaleza:

1, Jumpserver:

Ahora se refiere a fondo la gestión Jumpserver, es un componente de núcleo (Core), usando Django Class Based desarrollo al estilo Vista, apoyar API reparador.

2, Coco:

Servidor SSH componentes implementos y Web Terminal Server proporciona SSH y WebSocket interfaz y el uso de desarrollo paramiko frasco.

3, Luna:

Ahora es el front-end web de Terminal, prevista por la primera página del proyecto, Jumpserver sólo proporcionan API, ya no es responsable de la renderización de fondo HTML y así sucesivamente.

1.2 despliegue entorno operativo Jumpserver

Instrucciones de instalación:

Nombre del servidor: K5       IP: 10.27.17.42 contenido: servidor jumpserver     

Nombre del servidor: hero3     IP: 10.27.17.43 contenido: los recursos del cliente jumpserver, el servidor de gestión  

Servidor de listas:

Cargar software para Linux se basan en sistemas de carga "RZ", / opt en

Apagar las reglas de firewall y claros

[Root @ K5 opt] # systemctl parada firewalld

[Root @ K5 opt] # systemctl desactivar firewalld

[Root @ K5 opt] # iptables -F

Cerrar SELINUX

[Root @ K5 opt] # vim / etc / selinux / config

Modificar el juego de caracteres

[root @ K5 opt] # localedef -c -f UTF-8 -i zh_CN zh_CN.UTF-8
[root @ K5 opt] # export LC_ALL = zh_CN.UTF-8
[root @ K5 opt] # echo 'LANG = zh_CN .UTF-8' > /etc/locale.conf

1.3 instalar Python 3 y entorno virtual pitón

(1), las dependencias de instalación

 

[Root @ K5 ~] # yum -y install wget sqlite desa-xz gcc automake zlib-devel openssl-devel git de liberación EPEL

 

(2), compilar e instalar python3.6.1

 

[Root @ K5 ~] # cd / opt

[Root @ K5 ~] # tar xvf Python-3.6.1.tar.xz && cd-Python 3.6.1

[Root @ K5 ~] # ./configure && make -j 4 && make install

 

(3) establecer un entorno virtual de Python

Debido a CentOS 6/7 viene con un python2, mientras que Yum y otras herramientas se basan en la python2 original, con el fin de no perturbar el ambiente original que utilizamos Python entorno virtual

[Root @ K5 ~] # cd / opt

[Root @ K5 ~] # python3 -m Venv AP3

[Root @ K5 ~] # source / opt / AP3 / bin / Activar

Después (AP3) [root @ K5 ~] # # traspaso tiene éxito, hay una identificación AP3 frente

# Véase el siguiente mensaje en nombre del éxito, tienen que correr detrás de instrucción ejecutada fuente Jumpserver anteriormente, todos los siguientes comandos se ejecutan en el entorno virtual

1.4 Instalación Jumpserver 1.0.0

1, descargar o proyecto Clon

Método 1: Cuando el proyecto presentado clon de git más grande, se puede optar por ir directamente a la página del proyecto Github para descargar el paquete postal.

(AP3) [root @ K5 ~] # cd / opt / jumpserver / # Hemos ya se han descargado

Nota: El método de descarga en línea:

Método 2:

(AP3) [root @ ~ k5] #git clon --depth = 1 && cd https://github.com/jumpserver/jumpserver.git jumpserver && git checkout master

Nota: clon de profundidad especifica la profundidad de 1 significa que la última confirmación clonado

 

2, dependiente de la RPM paquete de instalación

(AP3) [root @ K5 jumpserver] # cd / opt / jumpserver / requisitos

(AP3) [root @ K5 requisitos] # yum -y instalar $ (rpm_requirements.txt gato) 

 

3, instalar las dependencias de la biblioteca de Python

(AP3) [root @ K5 requisitos] # cd / opt / jumpserver / requisitos

(AP3) [root @ K5 requisitos] # source / opt / AP3 / bin / Activar

(AP3) [root @ K5 requisitos] # pip -V

pip 9.0.1 de /opt/py3/lib/python3.6/site-packages (pitón 3.6) 

Método 1: instalación fuera de línea:

(AP3) [root @ K5 pitón-paquete] # cd / opt / python-paquete

(AP3) [root @ K5 ~] # pip instalar ./*

 

Método 2: Instalación en línea:

(AP3) [root @ K5 ~] # pip instalar requirements.txt -r 

pip es una instalación y gestión de paquetes de herramientas Python, el equivalente del comando yum

 Seleccione el método recomendado aquí

4, instalar Redis, el uso Jumpserver maquillaje caché Redis y el apio se rompió

(AP3) [root @ K5 requisitos] # rpm -ivh http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

(AP3) [root @ K5 requisitos] # yum -y instalar Redis

(AP3) [root @ K5 requisitos] # systemctl permiten Redis; systemctl comenzar Redis

6, la construcción de la base de datos y autorizar Jumpserver

(AP3) [root @ K5 ~] # mysql

MariaDB [(ninguno)]> crear la base de datos jumpserver juego de caracteres por defecto 'UTF-8';

MariaDB [(ninguno)]> GRANT ALL ON jumpserver * a 'jumpserver'@'127.0.0.1' identificado por '123456'.;

MariaDB [(ninguno)]> privilegios ras;

7, Jumpserver cambiar el archivo de configuración, por lo que se puede conectar a la base de datos de Jumpserver

(AP3) [root @ K5 ~] # cd / opt / jumpserver

(AP3) [root @ K5 jumpserver] config.py # cp config_example.py

(AP3) [root @ K5 jumpserver] # vim config.py

Comentario: 38-43 de la siguiente

# Tenemos la intención de modificar la configuración DevelopmentConfig, ya que por defecto Jumpserver Usando esta configuración, se hereda de la configuración

Nota: El archivo de configuración es un formato de Python, no use TAB, sino más bien utilizar el espacio

34 DB_ENGINE = 'sqlite3'
35 DB_NAME = os.path.join (BASE_DIR, 'datos', 'db.sqlite3')
36
37 # MySQL o postgres escenario como:
38 DB_ENGINE = 'mysql'
39 DB_HOST = '127.0.0.1'
40 DB_PORT = 3,306
41 DB_USER = 'jumpserver'
42 DB_PASSWORD = '123456'
43 DB_NAME = 'jumpserver'

 

8, crear una estructura de tabla de base de datos y los datos de inicialización

(AP3) [root @ K5 jumpserver] # cd / opt / jumpserver / utils

(AP3) [root @ K5 utils] # # Nota make_migrations.sh fiesta, antes de ejecutar un comando que, antes de la garantía seguirá pip instalar ./* órdenes se han terminado.

 

9, ejecute Jumpserver determinado entorno de ejecución en python3

(AP3) [root @ K5 utils] # source / opt / AP3 / bin / Activar

(AP3) [root @ K5 utils] # cd / opt / jumpserver

(AP3) [root @ K5 jumpserver] # chmod + x jms

(AP3) [root @ K5 jumpserver] # ./jms comienzan todos -d # ejecuta en segundo plano usando el parámetro -d

Nota: ./jms comienzan todos los # primer plano

Si usted falla, un error como este:

- Golpe de inicio como programador de tareas periódicas

Error: Error de inicio de apio

Detener servicio: gunicorn 热

apio se detiene

latido se detiene

Solución: reiniciar

prueba:

jumpserver fortaleza de enlace de la máquina de prueba: http: //10.27.17.62: 8080 Usuario: admin password: admin

 

 

 

2 montado Coco conjunto

 

 

 

Descripción general de coco: componentes de coco para lograr el SSH Server y Web Terminal Server proporciona SSH y WebSocket interfaz y el uso de desarrollo paramiko frasco.

 

(AP3) [root @ K5 jumpserver] # cd / opt / Coco # códigos directamente en línea

(AP3) [root @ K5 coco] # source / opt / AP3 / bin / Activar 

Método 1: a: el código de descarga: # git clone https://github.com/jumpserver/coco.git && cd Coco && git checkout master

2, la instalación de coco dependencias, y la principal pitón paquete rpm

(AP3) [root @ K5 coco] # cd / opt / coco / requisitos
(AP3) [root @ K5 requisitos] # yum -y instalar $ (rpm_requirements.txt gato) 
(AP3) [root @ K5 requisitos] # pip instalan -r requirements.txt

Nota: Extended: pip descarga -r # requirements.txt se puede descargar usando el paquete de descarga a una pitón locales

3, ver el archivo de configuración y ejecutan

(AP3) [root @ K5 requisitos] # cd / opt / coco
(AP3) [root @ K5 coco] # cp conf_example.py conf.py 
(AP3) [root @ K5 coco] # chmod + x cocod        

# Si el Coco y jumpserver desplegado por separado, modificar manualmente conf.py


(AP3) [root @ K5 Coco ] # ./cocod reinicio -d # iniciar
(AP3) [root @ K5 Coco ] # netstat -antup | grep 5000 # no tendrá éxito esta vez, cuando se ha activado con éxito, esta vez tendremos éxito.

3 Instalación Web-Terminal -Luna distal montaje - Integración de los componentes dispuestos Nginx

Luna Descripción: Luna es ahora Terminal cliente web, planeada por la primera página del proyecto, Jumpserver sólo proporcionan API, ya no es responsable de la renderización de fondo HTML y así sucesivamente.

Acceso ( https://github.com/jumpserver/luna/releases ) descargar la versión correspondiente del paquete de la versión, extraer directamente, sin necesidad de compilar

 Luna de descompresión

(AP3) [root @ K5 ~] # cd / opt

(AP3) [root @ K5 ~] # tar zxvf luna.tar.gz

(AP3) [root @ K5 ~] # ls / opt / Luna

Nota: Descargar Online

#wget https://github.com/jumpserver/luna/releases/download/v1.0.0/luna.tar.gz

 

3.2 Configuración de la integración de los componentes Nginx

Instalación elija instalar Nginx manera y de acuerdo con la versión de preferencias

(AP3) [root @ K5 jumpserver] # yum -y install nginx

En los perfiles de preparación

(AP3) [root @ K5 opt] # vim /etc/nginx/nginx.conf

Comente la siguiente:

#server {
72 # escuchan 80 default_server;
73 # escuchan [::]: 80 default_server;
74 # nombre_servidor _;
75 # root / usr / share / nginx / html;
76
77 # # archivos de configuración de carga para el bloque de servidor por defecto.
78 # incluyen /etc/nginx/default.d/*.conf;
79
80 # lugar / {
81} #
82
83 # 404 error_page /404.html;
84 # location = /40x.html {
85 #}
86
87 # error_page 500 502 503 504 /50x.html;
88 # Ubicación = /50x.html {
89} #
90 ##}

Agregue la siguiente:

servidor {
    escuchar 80;
 
    proxy_set_header X-real-IP $ remote_addr;
    proxy_set_header anfitrión $ anfitrión;
    proxy_set_header X-reenvía Por $ proxy_add_x_forwarded_for;
 
    lugar / luna / {
        try_files $ uri / index.html;
        alias / opt / luna /;
    }
 
    Ubicación / media / {
        add_header Content-Encoding gzip;
        root / opt / jumpserver / datos /;
    }
 
    lugar / estática / {
        root / opt / jumpserver / datos /;
    }
 
    ubicación /socket.io/ {
        PROXY_PASS http: // localhost: 5000 / socket.io /; # si Coco instalado en otros servidores, por favor llene su ip
        proxy_buffering apagado;
        proxy_http_version 1,1;
        Asciende proxy_set_header $ http_upgrade;
        Conexión proxy_set_header "actualización";
    }
 
    ubicación / {
        PROXY_PASS http: // localhost: 8080; # si jumpserver instalado en otros servidores, por favor llene su ip
    }
}

3.3 corriendo Nginx

(AP3) Perfil [root @ K5 opt] # # nginx -t detección

(AP3) [root @ K5 jumpserver] nginx # systemctl inicio; systemctl permitir nginx

 

3.4 registro de coco aceptado

Entrada: http: //10.27.17.62/ a la gestión de sesiones - gestión de terminales para aceptar el registro de Coco. Punto aceptada.

 

 

 

Y luego actualizar la página:

(AP3) [root @ K5 nginx] # ssh -p2222 [email protected] # Contraseña: admin

 

Supongo que te gusta

Origin www.cnblogs.com/gucb/p/12512647.html
Recomendado
Clasificación