FreeSSHd para Windows, configura un servidor SSH y SFTP fácilmente

FreeSSHd para Windows, configura un servidor SSH y SFTP fácilmente

Sergio De Luz

FreeSSHd es un completo software que nos permitirá montar en nuestro sistema operativo Windows un servidor SSH y SFTP. Este programa es completamente gratuito, y es la forma más fácil y rápida para levantar un servidor SSH en nuestro equipo, además, en el caso de que quieras transferir archivos de forma segura utilizando AES para la transferencia de archivos, podrás usar el servidor SFTP integrado en este software. Hoy en RedesZone os vamos a explicar cómo descargarlo, instalarlo y utilizarlo, ya que tenemos bastantes opciones de configuración avanzadas, ideal para configurar el servidor con todo detalle.

Puedes encontrar todo tipo de opciones de lo más fáciles de instalar y configurar SSH en Windows, sin embargo, hay una alternativa de lo más completa, además de que es gratuita. Nos referimos a FreeSSHd, un sfotware del que te vamos a explicar qué es lo que debes saber, además de cada uno de los pasos durante el proceso de descarga e instalación. Por lo que no te tendrás que perder nada si quieres poner en marcha un servidor SSH con esta herramienta en particular.

Lo bueno de este sfotware es que es muy sencillo de configurar. Y una de sus características es que ofrece buenos resultados. Además de esto, hay que tener en cuenta que tiene un cifrado fuerte y autenticación mediante usuario y contraseña o, si lo prefieres, puedes usar el intercambio de pares de claves públicas y privadas. Incluso, esta herramienta permite el intercambio seguro de ficheros a través de protocolos FTP/FTPS/SFTP y la tunelización de conexiones con la redirección de puertos. 

 

Descarga e instalación

Para comenzar con la configuración de esta herramienta, lo primero que debes hacer es descargar el software FreeSSHd de la página web oficial. Y más si quieres ponerlo en marcha cuanto antes.

Una vez que estés en el menú de descarga del programa, vais a poder ver la versión de FreeSSHd que es la 1.3.1, también podéis descargar el popular servidor FTP muy fácil de instalar y utilizar que se llama FreeFTPd. En la siguiente imagen podéis ver la descarga de ambos software:

En caso de no encontrarlo a través de su página oficial, antes de descargar la herramienta desde otra web, comprobad el enlace de descarga con algún verificador de malware. Sobre todo para no caer en la trampa de los ciberdelincuentes.

Cuando esté instalado, tan solo tendrás que ejecutar para abrir el software. Lo bueno es que el asistente de instalación de este programa es exactamente igual que cualquier otro software. Tenemos que pinchar en «Next», definir la localización de la instalación, si queremos la instalación completa, darle un nombre para la sección de programas, si queremos crear un icono en el escritorio y un resumen de las configuraciones anteriormente realizadas. Finalmente, tenemos que pinchar en la sección de «Install» para proceder con la instalación.

El asistente de instalación nos preguntará si queremos crear las claves privadas para el SSH, pinchamos en «Sí» para crearlas automáticamente y sin que tengamos que hacer nada más. También nos preguntará si queremos utilizar este programa como servicio del sistema, pinchamos en «Sí» para que se inicie con el sistema operativo, de lo contrario, podemos pinchar en «No».

Tal y como podéis ver, la descarga y la instalación de este programa es realmente sencilla. Si no encuentras la versión oficial, puedes recurrir a descargar el software a través de repositorios en los que se almacenan diferentes programas gratis. Pero, antes de instalar nada, es mejor comprobar el enlace si es fiable y escanear el archivo. Una vez completado todo este proceso, es el momento de ver todas las opciones de configuración que tenemos disponibles en este programa tan completo.

 

Opciones de configuración

En el momento de completar con éxito la instalación de esta herramienta, toca ver las diferentes opciones de configuración. Por ejemplo, en el primer menú de FreeSSDd vamos a encontrarnos el estado del servidor SSH y Telnet, de forma predeterminada, el protocolo Telnet se encuentra desactivado por cuestiones de seguridad, y no os recomendamos activarlo bajo ninguna circunstancia, siempre hay que usar SSH porque todo el tráfico va correctamente cifrado y autenticado.

En la pestaña de «Telnet» podemos configurar dónde queremos que escuche el servidor Telnet, el puerto TCP utilizado, el máximo número de conexiones concurrentes, el timeout en caso de no enviar comandos, y también si queremos poner un mensaje de bienvenida. Finalmente, tenemos la posibilidad de elegir la shell, por defecto es cmd.exe pero también podemos elegir Powershell, además, podemos habilitar Telnet al inicio del programa.

En la pestaña de «SSH» es donde tenemos todo lo relacionado con el protocolo SSH, podemos realizar las siguientes configuraciones:

  • Dirección de escucha: por defecto está escuchando en todas las interfaces de red físicas y virtuales, aquí podemos elegir que solamente escuche en una determinada interfaz.
  • Puerto: por defecto el puerto es el TCP 22, pero podemos cambiarlo al puerto que nosotros queramos.
  • Máximo número de conexiones: si lo dejamos en 0 significa número de conexiones ilimitadas.
  • Idle timeout: el tiempo que espera el servidor hasta cortar la conexión si no intercambiamos datos, por defecto es ilimitado (0).
  • Mensaje de banner: podemos poner un mensaje para los clientes SSH que se conecten al servidor.
  • Command Shell: consola de comandos a utilizar, por defecto es cmd.exe aunque también podemos usar Powershell. Otras opciones son las de iniciar el servidor SSH cuando iniciemos freeSSHd.
  • Keys: podemos configurar nuevas claves criptográficas, ya sean RSA, DSA y también ECDSA si así lo queremos. Lo más recomendable es utilizar las claves ECDSA que son las más seguras y rápidas.

En la pestaña de «Authentication» tenemos la ubicación de las claves criptográficas públicas que se intercambiarán con los clientes, también tenemos la posibilidad de configurar la autenticación basada en contraseña (deshabilitada, permitida o requerida), además, también tenemos la posibilidad de configurar la autenticación de clave pública. En «Encryption» tenemos los diferentes cifrados que permitimos a los clientes SSH, lo más seguro es utilizar AES en cualquiera de sus versiones, el resto de algoritmos de cifrado simétrico no os recomendamos usarlo, porque son inseguros o no lo suficientemente seguros para algo tan importante como el protocolo SSH. En la sección de «Tunneling» tenemos la posibilidad de habilitar el local port forwarding y también el remote por forwarding, esto nos permitirá hacer túneles SSH que es como una especie de VPN pero usando el protocolo SSH en lugar de una red privada virtual tipo OpenVPN o Wireguard. En el menú de «SFTP» es donde tenemos la ruta de la carpeta que nos aparecerá al conectarnos con cualquier cliente SFTP como FileZilla.

La gestión de los usuarios es uno de los aspectos más importantes, en este caso, en la sección de «Users» es donde podemos agregar, cambiar o eliminar los diferentes usuarios que tengamos. Al agregar un nuevo usuario, tenemos que introducir el nombre, el tipo de autorización (autenticación NT, contraseña o clave pública para el SSH únicamente). También podemos configurar si queremos que el usuario utilice la shell, use el SFTP o el Tunneling. Generalmente se debe dar permisos de Shell y SFTP, aunque de forma opcional también puedes hacer túneles SSH.

En la sección de «Host restrictions» tenemos la posibilidad de permitir solamente las direcciones IP que tengamos en el listado, podemos configurar wildcard sin problemas. También podemos configurar la lista negra, todas las IP de la lista serán bloqueadas automáticamente. En la pestaña de «Logging» tenemos la posibilidad de configurar los registros del programa freeSSHd, e incluso podemos resolver las direcciones IP en hostnames para facilitar la lectura de los registros. En el menú de «Online Users» tenemos la posibilidad de ver en tiempo real qué usuario o usuarios están actualmente conectados al servidor SSH del programa.

Ahora que ya hemos visto todas las opciones de configuración del programa, y hemos creado un usuario para conectarnos de forma local o remota a nuestro ordenador con el servidor SSH, os vamos a enseñar cómo conectarnos con el popular programa PuTTY.

 

Conexión a SSH y SFTP

PuTTY es uno de los programas más populares y usados para cliente SSH, cliente Telnet e incluso también para conectarnos por consola a un router o switch. En nuestro caso, hemos introducido la dirección IP privada del ordenador donde hemos configurado freeSSHd como servicio del sistema, también hemos introducido el número de puerto, el 22, el puerto predeterminado. El nombre de usuario y clave sí lo hemos tenido que configurar, y proporcionar permisos de «Shell» y también de «SFTP» tal y como os hemos explicado anteriormente.

Al conectarnos nos indicará que debemos aceptar la clave pública, y que no se reconoce dicha clave porque nunca nos hemos conectado, que tengamos cuidado al aceptar la clave. Una vez aceptada, procedemos a introducir el nombre de usuario y contraseña que hemos dado de alta anteriormente en el programa, una vez que nos conectemos, ya podremos ver la terminal (cmd.exe) vía SSH en nuestro cliente PuTTY.

El proceso para conectarnos vía SFTP es similar, en este caso podemos usar un programa como WinSCP que soporta el protocolo SCP y SFTP, o bien utilizar el popular programa FileZilla Client que también soporta SFTP. En este caso, introducimos la dirección sftp://IP, ponemos el nombre de usuario y contraseña que hemos creado anteriormente, el número de puerto 22 y pinchamos en «Conexión rápida». Una vez que nos hemos conectado, podremos ver el árbol de directorios y proceder con la copia de los archivos.

Tal y como habéis visto, la conexión de un cliente SSH y SFTP al servidor configurado con FreeSSHd es muy fácil y rápida, tan solo necesitaremos configurar ciertos parámetros en el servidor para que los clientes se conecten fácilmente y sin problemas.

¡Sé el primero en comentar!