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 software 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.
Ventajas y desventajas de FreeSSHd
Ventajas:
- Precio: es completamente gratuito, por lo que no tendremos que pagar nada por probarlo y por su posterior uso si nos convence.
- Fácil de instalar: su instalación es muy simple y no necesitaremos ser unos expertos para llevarla a cabo, aunque posiblemente tengamos que seguir algún tutorial como el de hoy.
- SSH y SFTP: Ofrece soporte tanto para conexiones SSH (Secure Shell) como para SFTP (SSH File Transfer Protocol)
- Seguridad: Al utilizar SSH, FreeSSHd proporciona una capa de seguridad mediante la encriptación de las comunicaciones, lo que protege contra intercepciones y accesos no autorizados.
- Creación de diferentes usuarios: Podrás tener distintos perfiles, por lo que los permisos y acceso podrá estar controlado.
Desventajas
- Limitaciones de rendimiento: Puede no ser la mejor opción para entornos que requieren un alto rendimiento o una gestión de un gran número de conexiones simultáneas. Por tanto, solo es una buena opción a nivel usuario.
- Actualizaciones y soporte: Al no ser una opción comercial, y no pagar nada por ella, no tendremos un soporte y actualizaciones como sí podríamos ver en otras de pago, aunque exista una comunidad detras que, pese a ser pequeña, nos puede ayudar a resolver algún problema típico.
- Funcionalidades limitadas: Al igual que el soporte, el hecho de ser gratuita hace que esta herramienta puede tener ciertas limitaciones en algunos casos, teniendo que recurrir a opciones de pago diferentes.
- Seguridad: Aunque ofrece seguridad básica mediante SSH, podría no cumplir con los estándares de seguridad más rigurosos, algo a tener en cuenta, aunque no debería preocuparnos en exceso.
- Interfaz de usuario: Pese a que depende de gusto, la interfaz no es la mejor que podremos tener, y debería estar un poco más actualizada.
Esperemos que te haya quedado un poco más claro y que te sirva para dedicirte a usarlo, o no.