ssh-chat: haga un chat grupal/privado con otros usuarios de Linux a través de SSH


ssh-chat es una utilidad de línea de comandos multiplataforma escrita en GoLang, que le permite chatear de forma segura con un número relativamente pequeño de usuarios a través de una conexión ssh. Está especialmente diseñado para convertir su servidor SSH en un servicio de chat. Una vez que lo inicie, obtendrá un mensaje de chat en lugar de un shell habitual.

  1. Permite a los usuarios chatear en una sala a través de ssh.
  2. Admite mensajes privados entre usuarios.
  3. Admite la personalización del tema de color si lo admite su cliente ssh.
  4. Puede examinar la huella digital de la clave pública de cualquier usuario por motivos de identificación.
  5. Permite a los usuarios establecer un apodo.
  6. Compatibilidad con la inclusión o el bloqueo de usuarios en listas blancas y con la expulsión de usuarios.
  7. Admite la lista de todos los usuarios conectados.

En este artículo, explicaremos cómo configurar y usar fácilmente ssh-chat en el sistema Linux para chatear con otros usuarios en el mismo servidor.

Como dije, ssh-chat está escrito en GoLang, así que si no tiene GoLang instalado en su sistema, siga esta guía para instalarlo.

  1. Cómo instalar GoLang (lenguaje de programación Go) en Linux

Instalación de ssh-chat en sistemas Linux

Comience por descargar la última versión de ssh-chat desde su página de lanzamiento y extraiga el archivo tar y muévase al directorio del paquete para ejecutarlo como se muestra.

# cd Downloads
# wget -c https://github.com/shazow/ssh-chat/releases/download/v1.6/ssh-chat-linux_amd64.tgz
# tar -xvf ssh-chat-linux_amd64.tgz
# cd ssh-chat/
# ./ssh-chat

Ahora los miembros de su equipo pueden conectarse usando el comando ssh y comenzar a chatear en una sala de chat sencilla a través de una conexión de shell segura.

Para demostrar cómo funciona todo, usaremos un servidor ssh-chat con IP: 192.168.56.10 y tres usuarios (root, tecmint y aaronkilik) conectados a través de ssh a este servidor como se muestra a continuación.

Importante: Notará que los tres usuarios no ingresan ninguna contraseña mientras se conectan al servidor, esto se debe a que hemos configurado el inicio de sesión sin contraseña para las conexiones ssh. Este es el método recomendado de autenticación para conexiones ssh en Linux.

$ ssh [email protected]
$ ssh [email protected]
$ ssh [email protected]

Mientras están conectados al servidor a través de ssh, todos los usuarios del sistema anterior pueden unirse a la sala de chat usando el comando ssh como este (deben usar el puerto en el que está escuchando el servidor de chat):

$ ssh localhost -p 2022

Para ver todos los comandos del indicador de chat, el usuario debe escribir el comando /help .

[tecmint] /help 

Para enviar un mensaje privado, por ejemplo; si el usuario tecmint quiere enviar un mensaje secreto a aaronkilik, necesitará usar el comando /msg de la siguiente manera.

[tecmint] /msg aaronkilik Am a hacker btw!
[aaronkilik] /msg tecmint Oh, that's cool

Notará que root no ve los mensajes anteriores como se muestra a continuación.

Para ver la información de un usuario, use el comando /whois como este.

[aaronkilik]/whois tecmint

Para ver todos los usuarios conectados en la sala de chat, use el comando /names de la siguiente manera.

[tecmint] /names

Hay varias opciones para usar con ssh-chat antes de iniciar el servidor. Para configurar un archivo de mensaje del día, use la opción --motd como esta.

$ ssh-chat --motd ~/motd_file  

Para definir un archivo de registro de chat, use la opción --log como se muestra a continuación.

$ ssh-chat --motd ~/motd_file --log /var/log/ssh-chat.log         

Opcionalmente, puede probar con el servidor de desarrolladores.

$ ssh chat.shazow.net

Finalmente, para ver todas las opciones de uso del servidor, escriba:

$ssh-chat -h

Usage:
  ssh-chat [OPTIONS]

Application Options:
  -v, --verbose    Show verbose logging.
      --version    Print version and exit.
  -i, --identity=  Private key to identify server with. (default: ~/.ssh/id_rsa)
      --bind=      Host and port to listen on. (default: 0.0.0.0:2022)
      --admin=     File of public keys who are admins.
      --whitelist= Optional file of public keys who are allowed to connect.
      --motd=      Optional Message of the Day file.
      --log=       Write chat log to this file.
      --pprof=     Enable pprof http server for profiling.

Help Options:
  -h, --help       Show this help message

Repositorio de Github de ssh-chat: https://github.com/shazow/ssh-chat

No olvide revisar:

  1. 5 mejores prácticas para asegurar y proteger el servidor SSH
  2. Configure "Autenticación de claves SSH sin contraseña" con PuTTY en servidores Linux
  3. Proteja los inicios de sesión SSH con mensajes de banner SSH y MOTD
  4. Cómo bloquear el acceso SSH y FTP a una IP y un rango de red específicos en Linux

ssh-chat es un servicio de chat seguro realmente simple y fácil de usar para usuarios de Linux. ¿Tiene alguna idea que compartir? En caso afirmativo, utilice el formulario de comentarios a continuación.