De forma predeterminada, SSH permitirá que cualquier cuenta de usuario válida inicie sesión en el sistema remoto y eso también incluye al usuario root. Aunque el usuario raíz está configurado con una contraseña segura, solo puede limitar su exposición a los ataques de fuerza bruta. Pero como se dijo, solo limita, aún es posible un acceso malicioso a la cuenta raíz. Por lo tanto, siempre es una buena práctica deshabilitar el inicio de sesión del usuario raíz a través de SSH y usar una cuenta de usuario sin privilegios para acceder al sistema remoto. Una vez que obtenga acceso al sistema remoto como usuario sin privilegios, su -
se puede utilizar para cambiar a la cuenta raíz. Este tutorial explicará cómo deshabilitar el inicio de sesión de usuario raíz a través de SSH en CentOS 7.
Los pasos mencionados en este tutorial requieren acceso de root. La cuenta de ejemplo utilizada es "administrador", que debe reemplazarse con un nombre de usuario de su elección.
root
usuario. No se preocupe, usará root
cuenta para inicio de sesión remoto solo en este paso.
administrator
.
[root@root ~]# adduser administrator
Paso 3: Establezca una contraseña segura para la cuenta de usuario creada en el paso 2.
[root@root ~]# passwd administrator
Paso 4: Abra otra terminal e inicie sesión en el sistema como el nuevo usuario creado en el paso 2. Este paso le permitirá probar si la nueva cuenta funciona correctamente.
[administrator@administrator ~]$ su -
Introduzca root
contraseña de la cuenta y verifique si obtuvo acceso de root.
[root@root ~]# whoami root
Paso 6: Deshabilitar root
inicio de sesión de usuario a través de SSH.
[root@root ~]# vi /etc/ssh/sshd_config
Paso 7: Busque '#PermitRootLogin yes'
. Por defecto, root
el inicio de sesión está permitido por SSH.
Paso 8: Cambie '#PermitRootLogin yes' to 'PermitRootLogin no'
Paso 9: Guarde el archivo y salga
Paso 10: Asegúrese de que sshd_config
no tiene ningún error de sintaxis.
[root@root ~]# /usr/sbin/sshd -t [root@root ~]# echo $? 0
El resultado anterior sugiere, sshd_config
no tiene ningún error de sintaxis. En caso de que haya un error, verá una salida distinta de cero.
Paso 11: Reinicie SSH para leer el nuevo cambio de configuración.
# service sshd restart
Paso 12: Asegúrese de root
el inicio de sesión a través de SSH está deshabilitado.
ssh root@<ip-address>
El acceso debe ser denegado a pesar de ingresar una contraseña válida para root
usuario. Significa que SSH ha denegado el acceso a la root
cuenta.
Paso 13: Inicie sesión como cuenta de usuario sin privilegios creada en el Paso 2.
Paso 14: Cuando sea necesario, cambie a root
cuenta de la siguiente manera:
[administrator@administrator ~]$ su -
¡Eso es todo! Has deshabilitado con éxito root
inicie sesión en el sistema remoto a través de SSH.
Los comandos anteriores se probaron en CentOS 7 y con OpenSSH_6.6.1p1