Cambiar el puerto SSH en Ubuntu 24.04 y Debian Bookworm
Introducción
Cada un tiempo salen cambios, y en la época que vivimos son muy a menudo, y alguno, incluso olvidamos los tiempos de Slackware o mas duro aun, una Gentoo o un Linux From Scratch.
Uno de esos cambios que viene en las ultimas estables de Debian y derivados es uno que puede despistarte con el cambio de puerto para SSH.
En el caso de Redhat/CentOs y derivadas el lío sería otro pero también existe.
Cambiar el puerto SSH en Ubuntu 24.04 /Debian Bookworn
Debian puede variar algo, pero la idea es la misma.
La cuestión esta en que al margen de el cambio de la clave Port
al puerto deseado en el fichero /etc/ssh/sshd_config
necesitamos unos pasos adicionales.
Si echamos una vista al systemd
de nuestra distro Ubuntu vemos dos entradas para ssh
siendo la interesante /etc/systemd/system/ssh.service.requires
Editemos /etc/systemd/system/ssh.service.requires/ssh.socket
Y despues editemos /etc/ssh/sshd_config
Port 0000 # 0000 es el número del puerto deseado y libre
Así que se trata de editar la clave ListenStream
con el mismo puerto que hemos puesto en la configuración de SSHD.
No olvides que esto es después de que al cambiar el valor de
Port
no te funcione 😊
Después es lo habitual en systemd
por que hay que hacer un reload tras los cambios en systemd
systemctl daemon-reload
systemctl restart ssh
No olvides el firewall 😊😊😊
Cambiar también en SSHD (Editado: 6/3/25)
Algunos me han preguntado, y si es cierto que también hay que cambiar el puerto en el fichero /etc/ssh/sshd_conf
Port XXXXX
Compatibilidad con Ubuntu 22.04 (Editado: 18/07/25)
Ubuntu 22.04 incluye soporte completo para ambos métodos pero usa el servicio tradicional por defecto.
Verificar tu configuración actual
systemctl status ssh.socket
Si muestra "inactive (dead)": Usas el método tradicional
En este caso solo necesitas:
# Editar configuración SSH
sudo nano /etc/ssh/sshd_config
# Cambiar: Port 2222
# Reiniciar servicio
sudo systemctl restart ssh.service
# Verificar
sudo ss -tlnp | grep :2222
Para migrar a formato socket (recomendado para consistencia)
# Verificar archivos disponibles
ls -la /lib/systemd/system/ssh*
# Migrar a socket systemd
sudo systemctl stop ssh.service
sudo systemctl disable ssh.service
# Configurar socket con puerto personalizado
sudo systemctl edit ssh.socket
Añadir en el editor:
[Socket]
ListenStream=
ListenStream=2222
# Editar configuración SSH
sudo nano /etc/ssh/sshd_config
# Port 2222
# Activar socket
sudo systemctl daemon-reload
sudo systemctl enable ssh.socket
sudo systemctl start ssh.socket
# Verificar migración exitosa
sudo systemctl status ssh.socket
sudo ss -tlnp | grep :2222
Ventaja de la migración: Consistencia con Ubuntu 24.04+ y mejor gestión de recursos.
Agradecimientos
Aviso
Esta documentación y su contenido, no implica que funcione en tu caso o determinados casos. También implica que tienes conocimientos sobre lo que trata, y que en cualquier caso tienes copias de seguridad. El contenido el contenido se entrega, tal y como está, sin que ello implique ningún obligación ni responsabilidad por parte de Castris
Si necesitas soporte profesional puedes contratar con Castris soporte profesional.