centos7.4 instalación y despliegue jumpserver (base de datos externa) para configurar todo el proceso - no hay problema

A, jumpserver visión general
jumpserver es el mundo es la primera máquina fortaleza fuente completamente abierta, usando Python / Django desarrollo, siga la GNU GPL v2.0 licencia de código abierto, está de acuerdo con el funcionamiento del sistema de auditoría profesional y 4A mantenimiento, siguiendo la especificación Web 2.0, con líderes en la industria el terminal web, interactivo y hermosa, con el apoyo arquitectura distribuida que puede ser desplegado en toda la región por más de la habitación. círculos jumpserver militares como una navaja suiza, pueden mejorar nuestra operación y gestión de mantenimiento a un nivel profesional, si sigue utilizando CRT o Xshell también administrar su lote, es jumpserver ayuda oportuna.

1, descripción de la arquitectura jumpserver
centos7.4 instalación y despliegue jumpserver (base de datos externa) para configurar todo el proceso - no hay problema
Componente Descripción:
(1), Jumpserver: jumpserver es un fondo de gestión, es un componente de núcleo (Core), utilizando el desarrollo de estilo vista basada Django Class, apoyar API reparador, es el núcleo de la jumpserver terminal de gestión de sistema

(2), Coco: para lograr el montaje SSH Server y Web Terminal Server proporciona SSH y WebSocket interfaz mediante el desarrollo paramiko y el frasco, es una página web para lograr componente clave SSH en la versión más reciente, aprobada Coco Koko reemplazado , pero su papel es consistente

(3), Guacamole: Jumpserver uso de sus componentes implementar la funcionalidad de RDP, Jumpserver no modificó su código, pero añade plug-ins adicionales, apoyo Jumpserver llamadas. Papel aquí es que la información de activos a cobro revertido Windows, si no implican ventanas de gestión de activos puede ser ignorada (instalación recomendada)

(4), Luna: Terminal de cliente web está planeado por la primera página del proyecto, Jumpserver sólo proporcionan API, ya no es responsable para el fondo con el procesamiento HTML, etc., utilizando simple y hermosa página de Luna

(5), Nginx: software de servicio WEB, utilizando estático y dinámico de la separación del pensamiento, Nginx sí expertos en el manejo de los recursos estáticos (Luna), así como interfaces para lograr WebSocket proxy inverso, es un potente software de servidor web

(6), DB: con una función de yum instalar MySQL, que proceso de construcción no se refleja en el artículo para el periódico para construir jumpserver, de hecho, utiliza la información de conexión db


En segundo lugar, el entorno de instalación:
Sistema: CentOS 7.4
IP: 172.16.29.80 (comprados Ali nube ECS)
establecieron un cortafuegos y SELinux

1, desactive el firewall
$ parada systemctl firewall
configuración de arranque no se inicia el servidor de seguridad
$ systemctl desactivar firewalld

2,关闭selinux
$ setenforce 0
$ sed -i "s / SELINUX = reforzando / SELINUX = desactivado / g" / etc / selinux / config

centos7.4 instalación y despliegue jumpserver (base de datos externa) para configurar todo el proceso - no hay problema

3, # modificar el juego de caracteres, o puede informar de un error de entrada / salida del problema.
El localedef UTF -. C $ -f -i 8. 8-zh_CN zh_CN.UTF
. $ 8-exportación zh_CN.UTF la LC_ALL =
$ echo ' "8-zh_CN.UTF" = LANG> /etc/locale.conf

4, el medio ambiente Python listos
$ yum -y install wget SQLite gcc automake la XZ-devel zlib-devel OpenSSL-devel-EPEL lanzamiento git
$ wget https://www.python.org/ftp/python/3.6.1/Python-3.6 .1.tar.xz
$ mv Python-3.6.1.tar.xz / usr / src && cd / usr / src / && xvf Python-3.6.1.tar.xz && cd-Python 3.6.1 alquitrán
$ ./ configure && make && make install
fuente superior a través de la instalación son Python3.6 instalación puede ser instalado ambiente Python3.6 yum, de la siguiente manera:
$ yum instalar el python36 python36 -Y-devel

Si la velocidad de descarga es muy lenta, se puede cambiar la fuente doméstica
$ wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
$ yum -y instalar python36 python36 -devel
listo Python entorno virtual
$ cd / opt
$ python3.6 -m Venv AP3
$ source / opt / AP3 / bin / de activar
ver el siguiente mensaje en nombre del éxito, tienen que correr después de ejecutar comando anterior Jumpserver fuente, la siguiente todos los comandos se ejecutan en el entorno virtual
(AP3) [root @ localhost AP3 ]


En tercer lugar, la instalación jumpserver

configuración de la instalación en línea jumpserver más, pero este artículo es una referencia a la página web oficial, pero el sitio web oficial a través de la implementación, hay algunos problemas de acceso a github, lento lento. Por lo tanto ser resuelto antes problemas de GitHub completos, las soluciones son más, pero el tránsito más fiable recomendación espejo, se recomienda la nube yardas tránsito.
documentación de la instalación de direcciones web oficial: https://jumpserver.readthedocs.io/zh/master/setup_by_localcloud.html, direcciones artículo jumpserver el tracto gastrointestinal utilizado para https://github.com/jumpserver/jumpserver.git , toman esto como un ejemplo resolver el problema de la lenta git clone
1, código para resolver el problema de la lenta git clone tránsito nube
registrar un código de cuenta en la nube: https://gitee.com/
la figura es la dirección jumpserver en github, y copiarlo dirección https
centos7.4 instalación y despliegue jumpserver (base de datos externa) para configurar todo el proceso - no hay problema
el código de trabajo en la nube Taiwán, haga clic en Nuevo almacén de
centos7.4 instalación y despliegue jumpserver (base de datos externa) para configurar todo el proceso - no hay problema
la importación de almacén existente que jumpserver dirección de github de
centos7.4 instalación y despliegue jumpserver (base de datos externa) para configurar todo el proceso - no hay problema
la parte posterior al instalar dirección jumpserver github será modificado a la dirección del espejo interno, que jumpserver tránsito público en el código de dirección de la nube: https://gitee.com/yunwen_1_hlzhang /jumpserver.git

2, jumpserver instalación de
referencia del proceso de instalación jumpserver el documento oficial, no once aquí

(1) El siguiente procedimiento puede ser ejecutado directamente

&& yum update -y \
&& ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
&& yum -y install kde-l10n-Chinese \
&& 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 \
&& yum -y install wget gcc epel-release git \
&& yum install -y yum-utils device-mapper-persistent-data lvm2 \
&& yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo \
&& yum makecache fast \
&& rpm --import https://mirrors.aliyun.com/docker-ce/linux/centos/gpg \
&& echo -e "[nginx-stable]\nname=nginx stable repo\nbaseurl=http://nginx.org/packages/centos/\$releasever/\$basearch/\ngpgcheck=1\nenabled=1\ngpgkey=https://nginx.org/keys/nginx_signing.key" > /etc/yum.repos.d/nginx.repo \
&& rpm --import https://nginx.org/keys/nginx_signing.key \
&& yum -y install redis mariadb mariadb-devel mariadb-server MariaDB-shared nginx docker-ce \
&& systemctl enable redis mariadb nginx docker \
&& systemctl start redis mariadb \
&& yum -y install python36 python36-devel \
&& python3.6 -m venv /opt/py3

(2), la dirección de reemplazo github, jumpserver instalación, guacamole koko y montaje, y en el que koko guacamole montados utilizando ventana acoplable

  && cd /opt \
  && if [ ! -d "/opt/jumpserver" ]; then git clone --depth=1 https://gitee.com/yunwen_1_hlzhang/jumpserver.git; fi \
  && if [ ! -f "/opt/luna.tar.gz" ]; then wget https://demo.jumpserver.org/download/luna/1.5.6/luna.tar.gz; tar xf luna.tar.gz; chown -R root:root luna; fi \
  && yum -y install $(cat /opt/jumpserver/requirements/rpm_requirements.txt) \
  && echo -e "[easy_install]\nindex_url = https://mirrors.aliyun.com/pypi/simple/" > ~/.pydistutils.cfg \
  && source /opt/py3/bin/activate \
  && pip install wheel -i https://mirrors.aliyun.com/pypi/simple/ \
  && pip install --upgrade pip setuptools -i https://mirrors.aliyun.com/pypi/simple/ \
  && pip install -r /opt/jumpserver/requirements/requirements.txt -i https://mirrors.aliyun.com/pypi/simple/ \
  && mkdir /etc/docker \
  && wget -O /etc/docker/daemon.json http://demo.jumpserver.org/download/docker/daemon.json \
  && systemctl restart docker \
  && docker pull wojiushixiaobai/jms_koko:1.5.6 \
  && docker pull wojiushixiaobai/jms_guacamole:1.5.6 \
  && rm -rf /etc/nginx/conf.d/default.conf \
  && wget -O /etc/nginx/conf.d/jumpserver.conf https://demo.jumpserver.org/download/nginx/conf.d/jumpserver.conf

Cuando se informó de error de instalación MarkupSafe pip de la siguiente manera:
centos7.4 instalación y despliegue jumpserver (base de datos externa) para configurar todo el proceso - no hay problema
Desde las setuptools python3 se ha actualizado a más de 46, es generales necesarias pip pip instalación de red --upgrade setuptools Modificar pip pip instalar --upgrade setuptools == 45.2.0 lata, este artículo ha sido ajustado, este es el sitio oficial del proceso de instalación de error
relacionados con la PI plug-in versión de la secuencia de comandos anterior también existen problemas, como se muestra a continuación:
centos7.4 instalación y despliegue jumpserver (base de datos externa) para configurar todo el proceso - no hay problema
puede utilizar PIP instalar pyasn1 módulos == número de versión a solas
centos7.4 instalación y despliegue jumpserver (base de datos externa) para configurar todo el proceso - no hay problema
(3), después de la configuración de la instalación de tratamiento , utilizando la siguiente configuración jumpserver oficial, pero para los detalles directos de ejecución de la misma no es muy clara, por lo que esta configuración usada para manualmente, de la siguiente página web jumpserver oficial, se refieren a la configuración manual documento de referencia: http://www.51niux.com/?id = 234 o https://segmentfault.com/a/1190000015086911 , ambos de los cuales referencia es el autor del blog más, después de que varios de combate señalado.

 && source ~/.bashrc \
  && if [ "$DB_PASSWORD" = "" ]; then DB_PASSWORD=`cat /dev/urandom | tr -dc A-Za-z0-9 | head -c 24`; fi \
  && if [ "$SECRET_KEY" = "" ]; then SECRET_KEY=`cat /dev/urandom | tr -dc A-Za-z0-9 | head -c 50`; echo "SECRET_KEY=$SECRET_KEY" >> ~/.bashrc; fi \
  && if [ "$BOOTSTRAP_TOKEN" = "" ]; then BOOTSTRAP_TOKEN=`cat /dev/urandom | tr -dc A-Za-z0-9 | head -c 16`; echo "BOOTSTRAP_TOKEN=$BOOTSTRAP_TOKEN" >> ~/.bashrc; fi \
  && if [ "$Server_IP" = "" ]; then Server_IP=`ip addr | grep 'state UP' -A2 | grep inet | egrep -v '(127.0.0.1|inet6|docker)' | awk '{print $2}' | tr -d "addr:" | head -n 1 | cut -d / -f1`; fi \
  && if [ ! -d "/var/lib/mysql/jumpserver" ]; then mysql -uroot -e "create database jumpserver default charset 'utf8';grant all on jumpserver.* to 'jumpserver'@'127.0.0.1' identified by '$DB_PASSWORD';flush privileges;"; fi \
  && if [ ! -f "/opt/jumpserver/config.yml" ]; then cp /opt/jumpserver/config_example.yml /opt/jumpserver/config.yml; 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; fi

(4), ajustar la entrada de inicio relevante

 if [ ! -f "/usr/lib/systemd/system/jms.service" ]; then wget -O /usr/lib/systemd/system/jms.service https://demo.jumpserver.org/download/shell/centos/jms.service; chmod 755 /usr/lib/systemd/system/jms.service; systemctl enable jms; fi

(5) para iniciar los servicios relacionados

A. Inicio Nginx: nginx
B. inicio jumpserver:

  #  ./jms start all 
  # ./jms start all -d    -d参数为后台运行jumpserver

3, Entrar jumpserver
los pasos anteriores, introduzca la dirección IP, puede introducir jumpserver página de acceso web, la contraseña de la cuenta por defecto: admin / admin
centos7.4 instalación y despliegue jumpserver (base de datos externa) para configurar todo el proceso - no hay problema
Después de iniciar sesión, puede ver los siguientes antecedentes
centos7.4 instalación y despliegue jumpserver (base de datos externa) para configurar todo el proceso - no hay problema
servicios de back office jumpserver bien básico, pero se encontrará con algunos problemas :
(. 1), en el terminal de web está vacía, como se muestra a continuación, e incluso con la adición de la configuración del host es OK, el terminal no muestra la web, nota que: visualizar el terminal activo web deseada configurado de acuerdo con la gestión de los derechos de autorización. Esa es la asignación de activos a tiempo así que no hay problema, sigue vacía no se muestran en la terminal web de razones
centos7.4 instalación y despliegue jumpserver (base de datos externa) para configurar todo el proceso - no hay problema
(2), gestión de documentos 502
centos7.4 instalación y despliegue jumpserver (base de datos externa) para configurar todo el proceso - no hay problema
servicio de Koko no puede ser levantado y la necesidad de garantizar la normalidad del servicio
de inicio ventana acoplable: systemctl inicio ventana acoplable
ventana acoplable unirse entrada de inicio interior: systemctl permitirá ventana acoplable
Koko comenzó y la bota está provista de inicio estibador, añadir parámetros: - la reanudación siempre =
parámetros -p: la asignación de puertos
jumpserver CORE_HOST para comenzar IP y el puerto
/op/jumpserver/config.yml referencia BOOTSTRAP_TOKEN

docker run --name jms_koko -d -p 2222:2222 -p 5000:5000 -e CORE_HOST=http://172.16.29.80:8080  -e BOOTSTRAP_TOKEN=BLkJcpJooqdwXixq  --restart=always  wojiushixiaobai/jms_koko:1.5.6

(3), soporte para plug-ins de Windows: guacamole
servicios de contenedores guacamole inicio y configurar el arranque:

docker run --name jms_guacamole -d -p 127.0.0.1:8081:8080 -e JUMPSERVER_SERVER=http://172.16.29.80:8080 -e BOOTSTRAP_TOKEN=BLkJcpJooqdwXixq --restart=always wojiushixiaobai/jms_guacamole:1.5.6

Pueden ser vistos por ventana acoplable -a ps dos servicios se han iniciado
centos7.4 instalación y despliegue jumpserver (base de datos externa) para configurar todo el proceso - no hay problema
en el despliegue de jumpserver charla ha terminado, utilice la configuración en jumpserver se describirá en la siguiente sección de combate

Supongo que te gusta

Origin blog.51cto.com/1864156/2478808
Recomendado
Clasificación