En esta entrada voy a explicaros como podemos cambiar el puerto por defecto de conexión a nuestro servidor Linux por SSH en CentOS. Esta es una práctica muy recomendable desde el punto de vista de seguridad.
En primer lugar abriremos un terminal en nuestro linux con privilegios de root, nos dirigeremos a /etc/ssh y editaremos el fichero sshd_config.
Descomentaremos la línea que pone Port 22 y pondremos el puerto que queramos utilizar.
Tal y como pone en el fichero de configuración tendremos que informar a SELinux (módulo de seguridad para el kernel de Linux) de este cambio.
Para ello primero, en el caso que no lo tengamos ya instalado, tendremos que instalar el comando semanage tal y como explico a continuación.
Ejecutaremos la siguiente instrucción para realizar la instalación del comando.
CentOS 7 yum install policycoreutils-python CentOS 8 yum install policycoreutils-python-utils
Una vez instalado el comando lo ejecutaremos con la siguiente instrucción.
semanage port -a -t ssh_port_t -p tcp numero_puerto
Por último abriremos el puerto en el firewall de CentOS ejecutando el siguiente comando.
firewall-cmd --zone=public --add-port=numero_puerto/tcp --permanent firewall-cmd --reload
Por último reiniciamos el servicio de SSH para que coja los cambios de configuración.
systemctl restart sshd
Y listo ya estará cambiado el puerto por el que nos podremos conectar a nuestro servidor Linux vía SSH.
Espero os haya servido de utilidad.
Me dedico a la Administración de Sistemas y he creado este blog para compartir mis conocimientos con toda la comunidad y así aportar mi granito de arena y ayudar a todo el que lo necesite.
Muchas gracias, me sirvió de gran ayuda, ya que pensaba que solo con cambiar en el conf de ssh serviría.
Me alegro Chema 🙂
Saludos.
Muchas gracias, gran aporte.
Me alegro que te haya sido de utilidad Rio.
Saludos.
Gracias me funciono. Yo lo habia hecho antes sin tener que correr el semanage, pienso que aqui se requiere porque el SELinux esta enforcing. Lo pueden validar con la instruccion getenforce.