2 de noviembre de 2025

SSH vía Web en Gentoo Linux: Accede a tu consola desde cualquier navegador (incluyendo tu TV)

 ¿Necesitas monitorear tu servidor Gentoo desde el navegador de tu TV o desde cualquier dispositivo en tu red local sin instalar un cliente SSH completo? La solución es wssh (WebSSH), un proyecto de Python que expone una interfaz SSH a través de una página web.

Esta guía te mostrará cómo configurarlo de forma segura usando un entorno virtual de Python en Gentoo.

Requisitos Previos
  • Un sistema Gentoo Linux funcional.
  • Python 3 instalado.
  • Acceso a un navegador web (como Google Chrome en tu TV) en la misma red local.

Paso 1: Configurar el Entorno Virtual de Python
Gentoo Linux bloquea las instalaciones directas de pip en el sistema global para evitar conflictos con emerge. La solución recomendada es usar un entorno virtual (venv), que aísla wssh del resto del sistema.
1.1 Instalar las herramientas necesarias:
Asegúrate de que tienes pip y las herramientas para crear entornos virtuales instalados usando emerge:
sudo emerge --ask dev-python/pip dev-python/virtualenv
1.2 Crear un directorio de proyecto y el entorno virtual:
Crea una carpeta para organizar tu proyecto y luego inicializa el entorno virtual dentro de ella:
mkdir webssh_project
cd webssh_project
python3 -m venv venv_webssh
1.3 Activar el entorno virtual:
Debes activar el entorno virtual en cada sesión de terminal que uses. Observa cómo tu prompt cambiará para confirmar que está activo (mostrará (venv_webssh) al principio):
source venv_webssh/bin/activate

Paso 2: Instalar WebSSH (wssh)
Ahora que el entorno virtual está activo, puedes usar pip para instalar el paquete webssh. La instalación se realizará localmente dentro de la carpeta venv_webssh:
pip install webssh

Paso 3: Ejecutar el Servidor WebSSH
El comando para iniciar el servidor es wssh. Usaremos los parámetros --address y --port para indicarle que escuche en todas las interfaces de red (0.0.0.0) y en un puerto específico (8888).
¡Importante! El comando correcto es wssh, no webssh.
wssh --address="0.0.0.0" --port=8888
Si todo es correcto, verás mensajes de registro indicando que el servidor se está iniciando y escuchando.

Paso 4: Acceder a la Consola Web
¡Ya está listo! El servidor está corriendo. Ahora, ve al navegador web de tu TV o cualquier otro dispositivo:
  1. Abre Google Chrome (o tu navegador preferido).
  2. En la barra de direcciones, ingresa la IP de tu máquina Gentoo seguida del puerto:
    http://[DIRECCION_IP_DE_TU_GENTOO]:8888
Serás recibido por una interfaz web simple donde puedes ingresar las credenciales de tu servidor SSH (usuario, contraseña, etc.) y conectarte directamente a tu terminal.

Consejos Adicionales
  • Para salir del entorno: Cuando hayas terminado de usar la terminal y quieras cerrar el entorno virtual, simplemente escribe deactivate.
  • Para reiniciar el servidor más tarde: Vuelve al directorio del proyecto (cd webssh_project), activa el entorno (source venv_webssh/bin/activate) y ejecuta wssh de nuevo.
  • Seguridad: Para producción, considera configurar SSL/HTTPS para cifrar la conexión, aunque para una red local básica suele ser suficiente.

No hay comentarios:

Publicar un comentario

📝 Guía Rápida: Cómo extender un volumen LVM en Linux (sin reiniciar)

¿Te ha pasado esto? Aumentas el tamaño de un disco virtual (en VMware, Proxmox, AWS, etc.), pero cuando entras a tu servidor Linux, el siste...