Saltar a contenido

Homelab - Next Terminal, un Bastión que soporta múltiples protocolos

Imagen

Next Terminal es una sencilla y práctica pasarela (bastión) que integra una solución de bastión de puerta de enlace de escritorio remoto sin cliente basada en Apache Guacamole. Soporta varios protocolos, como RDP, SSH, VNC, TELNET y Kubernetes, y permite acceder a recursos de la red interna directamente a través de la web con una excelente compatibilidad multiplataforma. También ofrece autenticación de múltiples factores (MFA), funciones de grabación de auditoría y otras capacidades.

Implementación (Docker Compose)

Primero, crea un archivo compose.yaml y pega el siguiente contenido:

compose.yaml
version: "3.3"
services:
  guacd:
    container_name: ${STACK_NAME}_guacd
    image: dushixiang/guacd:${GUACD_VERSION}
    volumes:
      - ${STACK_DIR}/data:/usr/local/next-terminal/data
    restart: always
  next-terminal:
    container_name: ${STACK_NAME}_app
    image: dushixiang/next-terminal:${APP_VERSION}
    environment:
      DB: sqlite
      GUACD_HOSTNAME: ${APP_GUACD_HOSTNAME}
      GUACD_PORT: ${APP_GUACD_PORT}
    ports:
      - ${APP_PORT}:8088
    volumes:
      - /etc/localtime:/etc/localtime
      - ${STACK_DIR}/data:/usr/local/next-terminal/data
    restart: always

(Opcional) Se recomienda crear un archivo .env en el mismo directorio que compose.yaml y personalizar tus variables de entorno. Si no deseas utilizar variables de entorno, también puedes personalizar tus parámetros directamente en compose.yaml (por ejemplo, sustituir ${STACK_NAME} por next-terminal).

.env
STACK_NAME=next-terminal
STACK_DIR=xxx # Ruta personalizada de almacenamiento del proyecto, por ejemplo, ./next-terminal

# next-terminal
APP_VERSION=latest
APP_PORT=xxxx # Puerto de acceso personalizado, elige uno que no esté en uso
APP_GUACD_HOSTNAME=guacd # Predeterminado
APP_GUACD_PORT=4822 # Predeterminado

# guacd
GUACD_VERSION=latest

Finalmente, ejecuta el comando docker compose up -d en el mismo directorio que compose.yaml para iniciar los contenedores programados.

Instrucciones de Configuración

Usuario / Contraseña inicial: admin.

Referencias y Agradecimientos

[por_reemplazar[1]] [por_reemplazar[2]]

Este post está traducido usando ChatGPT, por favor feedback si hay alguna omisión.