lightbulb_outline

5 Tips para mejorar la seguridad SSH

Lees en 2 Min.

2768 visitas

29/06/20

SSH (Secure SHell) es, desde mi punto de vista, el protocolo ideal para nosotros poder trabajar de forma remota con servidores. Si bien es cierto existen otras alternativas, creo que la facilidad, seguridad y flexibilidad que SSH no permite no tiene comparación

Es por ello que, para este post, me gustaría listas 5 tips los cuales considero no serán de mucha utilidad al nosotros trabajar con servidores remotos. Esto principalmente en el área de seguridad.

No me malinterpreten, SSH es sin duda uno de los protocolo más seguros actualmente, si embargo creo que no está de más reforzar la seguridad.

Para nosotros poder implementar estos tips será necesario trabajar el archivo /etc/ssh/sshd_config, ya que modificaremos las configuraciones por default.

Si no te encuentras familiarizado con este protocolo, no te preocupes, te comparto un post donde te enseñamos como poder autenticarte con servidores remotos de una forma segura.

Bien, sin más que decir comencemos. 🤖

Autenticación solo con contraseña

Por una mala configuración es posible autenticarse sin contraseña. Sí, así como lo lees. Si este es tu caso lo que debes hacer, de forma inmediata, es deshabilitar esta opción.

PermitEmptyPasswords no

Así, siempre que un usuarios desee autenticarse deberá hacerlo mediante una contraseña. 🔓

Puerto por default

Por default el protocolo SSH utiliza el puerto 22. Tú, yo y los atacantes lo sabemos. Es por ello que una muy buena idea es cambiar de puerto.

Debemos seleccionar un puerto que solo nosotros y nuestro equipo de trabajo conozcamos.

Port 5001

Root Login

Este es quizás el tip "más conocido" al nosotros comenzar autenticarnos con servidores remotos. No hacerlo utilizando el usuario root.

Para este tip hay que hacer dos cosas.

1.- Creamos un nuevo usuarios.

adduser <username>

2.- Asignamos nuevos permisos.

usermod -aG sudo username

3.- Modificamos el archivo sshd_config (Esto con el usuario root).

PermitRootLogin no

4.- Antes de cerrar sesión con root será necesario probar que podemos autenticarnos con el nuevo usuario.

ssh <useranme>@<IP>

Usuarios autorizados

Siguiendo con el tema de usuarios, otra excelente idea es solo permitir a usuarios muy específicos poder autenticarse de forma remota.

Esto nos viene perfecto cuando en nuestro sistema existe una gran cantidad de usuarios y no deseamos que todos puedan tomar control del servidor.

AllowUsers User1 User2

Timeout ⏰

Ya para finalizar hay que recordar que el tiempo se sesión es importante. Si un usuario autenticado permanece una gran cantidad de tiempo sin actividad, puede suponer un riesgo a la seguridad.

ClientAliveInterval 300

En este caso modificó el tiempo máximo de espera. 5 min. creo es un tiempo tolerable.

Conclusión

Listo, estos son algunos tips que he podido recabar con mi poca experiencia en la mundo de los servidores y la seguridad informatica. Son principalmente configuraciones, pero al realizar los cambios suponen un mayor refuerzo en la seguridad. 🍻

Otros artículos del blog

Comentarios