SSH es un protocolo de red que se utiliza para comunicarse de forma remota y segura con un sistema Linux. Por defecto, el servicio SSH utiliza el puerto 22. Puede añadir una capa de seguridad adicional cambiando el puerto SSH a su servidor y reducir el riesgo de ataques de hackers y bots. En este tutorial, usted aprenderá cómo cambiar el puerto SSH en los sistemas Linux.
Cambiar el puerto SSH
indice
Los siguientes son los pasos para cambiar el puerto SSH en los sistemas Linux:
Paso 1 – Seleccione un nuevo puerto
Los sistemas Linux reservan números de puerto por debajo de 1024 para sus servicios. También puede utilizar un puerto dentro del rango 1-1024 para el servicio SSH, pero se recomienda elegir un puerto superior a 1024 para evitar futuros problemas. Puede elegir un número de puerto máximo de hasta 65535 para el servicio SSH.
Nosotros vamos a utilizar el puerto 4567 para el servicio SSH en este tutorial, puede elegirlo según su elección.
Paso 2 – Configuración del Firewall
Si su servidor tiene habilitado el firewall entonces necesita ajustarlo con el nuevo puerto SSH antes de cambiarlo. Así permitirá el tráfico en el nuevo puerto SSH.
FirewallD es la herramienta de gestión de cortafuegos por defecto en los sistemas CentOS. Puede abrir un nuevo puerto utilizando el siguiente comando en las máquinas CentOS:
sudo firewall-cmd --permanent --zone=public --add-port=4567/tcp sudo firewall-cmd --reload
En las distribuciones basadas en CentOS o RHEL Linux otro requisito es ajustar las reglas de SELinux para permitir el nuevo puerto SSH. Puedes hacerlo escribiendo
sudo semanage port -a -t ssh_port_t -p tcp 4567
En los sistemas Ubuntu, la herramienta de firewall por defecto es UFW. Ejecute el siguiente comando para permitir la conexión utilizando el nuevo puerto SSH:
sudo ufw allow 4567
Si ha instalado iptables y lo utiliza como cortafuegos en su servidor Linux, puede abrir el puerto ejecutando el siguiente comando:
sudo iptables -A INPUT -p tcp --dport 4567 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
Paso 3 – Configuración de SSH
En Linux, los puertos por defecto del servicio SSH están almacenados en el archivo /etc/ssh/sshd_config. En primer lugar, es necesario abrir el archivo principal de configuración de SSH para editarlo con su editor de texto favorito emitiendo el siguiente comando:
sudo nano /etc/ssh/sshd_config
Ahora busque la línea dentro del archivo que comienza con el Puerto 22. La mayoría de las veces, esta línea está comentada con un signo de almohadilla #. Elimine el hash # e introduzca su nuevo número de puerto SSH que se utilizará en lugar del puerto 22 estándar de SSH. Así que debería verse como abajo:
Puerto 4567
Después de haber hecho los cambios anteriores, reinicie el servicio SSH para reflejar los cambios.
sudo systemctl restart ssh
En las distribuciones basadas en CentOS o RHEL Linux el servicio ssh se llama sshd, por lo que debe ejecutar el siguiente comando para reiniciar el servicio SSH:
sudo systemctl restart sshd
Puede verificar que el demonio SSH está escuchando en el nuevo puerto 4567 emitiendo el siguiente comando:
ss -an | grep 4567
Se mostrará una salida como esta:
tcp LISTEN 0 128 0.0.0.0:4567 0.0.0.0:* tcp LISTEN 0 128 [::]:4567 [::]:*
Paso 4 – Conexión SSH usando el nuevo puerto
Ahora, usted ha cambiado con éxito el puerto para el servicio SSH. Para hacer la conexión usando el nuevo puerto tiene que mencionar el número de puerto -p con el comando SSH como abajo:
ssh -p 4567 username@remote_ip_address
En Resumen:
Usted aprendió cómo cambiar el puerto SSH en su sistema Linux. Si tiene alguna pregunta o sugerencia puede dejar un comentario abajo.