Limitar el Acceso Root por SSH y Cambiar el Puerto de Acceso en Linux

limitar-el-acceso-root-por-ssh-y-cambiar-el-puerto-de-acceso

Normalmente un servidor Linux permite la conexión remota al servidor utilizando el puerto estándar del protocolo SSH (22) bajo el usuario root, ya que este usuario es estándar en Linux y tiene los permisos máximos para controlar el servidor. Esto se corrige limitando el acceso directo al SSH para el usuario root y asignando dicho acceso a otro usuario solo conocido por el verdadero administrador del servidor.

Para limitar el acceso del usuario root por SSH y no hacer uso del puerto estándar (22) debemos:

Vía SSH:

  • Debe haberse creado primero el usuario principal del servidor (adminXX) de acuerdo al punto 2.7 de este curso, asegurando que dicha cuenta tenga acceso SSH y que el usuario pertenece al grupo Wheel como lo indica dicho punto.
  • Debe probarse el acceso por SSH a través del puerto 22 usando el usuario adminXX y luego de ingresar ejecutar su con la contraseña de root para verificar que con dicho usuario es posible ingresar al servidor y convertirlo en root.
  • Si podemos ingresar con dicho usuario sin problemas y pudimos acceder con su como root entonces podemos proceder a cambiar el puerto de acceso y cerrar el acceso directo a SSH por root.

Para esto debemos ejecutar:

nano /etc/ssh/sshd_config

Buscar “Port 22“, y reemplazarlo por “Port XXXXX” (Sin las comillas, cambiando XXXXX por el número del puerto deseado – ej. 39563 – y quitándole el # para que no quede como comentario)

Buscar “PermitRootLogin yes” y reemplazarlo por “PermitRootLogin no” (Sin las comillas y quitándole el # para que no quede como comentario)

Buscar “useDNS yes” y reemplazarlo con “useDNS no“ (Sin las comillas y quitándole el # para que no quede como comentario)

Guardar el archivo

Reiniciar el servicio SSH ejecutando:

service sshd restart

(ó /etc/init.d/sshd restart )

Listo.

Ahora podemos entrar con el usuario adminXX por el puerto XXXXX con su respectiva contraseña y luego ejecutar su y colocar la contarseña de root para convertirlo en root.

 

Otro método, para los servidores de Desarrollo es usando el Webmin de la siguiente forma:

 

Usando Webmin (preferiblemente debe evitarse instalar el webmin):

1. Usar webmin para crear un administrador del servidor (ej. adminXX) con el Password correspondiente.

2. Asignar el usuario al grupo primario wheel y secundarios root y cualquier otro grupo interno que se desee.

3. Entrar al manejador del Módulo de SSH de Webmin y en:

a. Autenticación: Prohibir el acceso al root.

b. Red: Cambiar la IP de escuchar a la IP del servidor y el puerto estándar 22 al XXXXX (según el número de puerto deseado).

c. Control de Acceso: Colocar el acceso sólo al usuario configurado arriba.

d. Buscar useDNS y colocarlo en no

e. Reiniciar el servicio con el botón correspondiente.

Listo.