Para aumentar la seguridad, recomendamos tomar una serie de medidas que aumentarán significativamente la seguridad del servicio SSH.
1. Hagamos ajustes en el archivo de configuración del servicio SSH
nano /etc/ssh/sshd_config
1.1 Cambiar el puerto predeterminado
El servicio SSH usa el puerto 22 por defecto, se accede a él con frecuencia, cambiémoslo, por ejemplo, a 2203
Port 2203
1.2 Denegar el acceso al usuario root
Primero crea un usuario normal:
useradd user1
passwd user1
Verifiquemos la configuración de ssh para que la línea se vea así.
PermitRootLogin no
1.3 Autorización como root solo con 2FA
La contraseña puede ser interceptada, etc. Es mejor implementar la autenticación de dos factores para autenticarse como usuario root, como describimos en un artículo aparte: Configuración de la autenticación de dos factores en ssh para root en Debian 12
Después de todos los pasos, no olvide aplicar la configuración reiniciando el servicio:
service ssh restart
2. Configurar iptables
Insistimos en que el acceso a nuestro puerto ssh está disponible sólo para una IP específica.
iptables -A INPUT -p tcp --dport 2203 ! -s 89.xxx.186.xxx -j DROP
o
iptables -A INPUT -p tcp --dport 2203 -s 89.xxx.186.xxx -j ACCEPT
iptables -A INPUT -p tcp --dport 2203 -j DROP
Asegúrese de que las reglas se guarden durante los reinicios:
apt install iptables-persistent
iptables-save > /etc/iptables/rules.v4
Estos pasos aumentarán significativamente la seguridad y funcionarán con el protocolo SSH.
Recomendamos utilizar un servidor VPS como dirección IP estática ya que su IP siempre será la misma sin importar dónde te encuentres. Esto es conveniente porque cuando se conecta desde casa, oficina, vacaciones, utilizando Internet móvil, siempre tendrá direcciones IP diferentes y en la mayoría de los casos dinámicas.