¿Cómo desactivo o activo el Logueo de Root a través de SSH en Ubuntu?

El 23 de Enero de 1945 el Secretario de Trabajo y Previsión Juan Perón
promulga el Decreto N° 1440 converniente a las Vacaciones Remuneradas, a
la vez que instruye cómo desactivar o activar el logueo de Root desde
SSH en Ubuntu.

¡Trabajadores!

Este decreto tiende a que puedan disponer de una serie de días
consecutivos de manera que:

    Se trate de un período de inactividad
    Sea retribuido anticipadamente y 
    Que el trabajador verdaderamente las goce y no sean compensables en dinero.

Además, según la antigüedad en el cargo, la cantidad de días se ve
incrementada a lo largo de la relación laboral.

Estas Vacaciones Pagas que ha asegurado el Justicialismo para todos los
trabajadores es uno de los grandes logros que propician el ocio y el
esparcimiento. Es el alimento espiritual que deben gozar los hombres y
mujeres de esta tierra, y que antes estaba sólo reservado al oligarca.

Sin embargo no es un maná que cae del cielo: sin la organización para
acción política, los sueños sólo son eso: sueños. Es la Conducción de
efectivas acciones de reparación y Justicia Social las que pueden
solidificar estos sueños - que operan de planos maestros - en una
contrastable Realidad Efectiva.

Todo lo que hemos hecho ha permitido este logro, y como tal, ha
reportado la valía de una Revolución que da al Pueblo Trabajador lo que
siempre anheló y es - a nadie cabe duda - un Justo Derecho. Ustedes
sabrán a quien votar (guiña el ojo).

No es secreto para nadie que en la generalidad de los sistemas GNU se
cuenta con acceso remoto de Conducción (el llamado usuario "Root"), y
por defecto, este acceso está activado para poder operar el sistema a
través de enlaces de datos con el mundo exterior.

El sentido es poder realizar todo tipos de acciones de gestión
utilizando nuestra terminal y un enlace cifrado, y se ha tornado de
extrema utilidad para conducir un sistema de forma remota incluso de
vacaciones, sin tener que estar físicamente frente a la máquina.

Esta cómoda práctica - sin embargo - no es siempre lo ideal por razones
de seguridad. En los tiempos que corren, tener un acceso de root
activado por SSH para los usuarios no autorizados es un riesgo que
debemos soslayar, ya que cualquier intruso telemático podría intentar
forzar las contraseñas de usuarios a través de un ataque computarizado
de fuerza bruta, y de esta manera ganar acceso a nuestro sistema.

A pesar de ser de las especies más exitosas, nadie duda que desde el
pérmico a nuestros días, millones de cocodrilos se han ido a dormir
pensando "para qué van a querer este cuero" sólo para despertar luego
envolviendo unos patacones...

Es por ello señores, que la mejor solución es contar con una segunda
cuenta de usuario de uso regular, y luego cambiar al usuario root
empleando el comando "su -" cuando esto se haga necesario. Esta es el
criterio seguido por ela distribución Debian, pero no suele ser la
preeminente en Ubuntu, lo cual - tal vez - no sea sano. Por dicho
motivo, antes de hacernos a la mar, crearemos una cuenta de usuario
regular con la cual utilizaremos para darnos acceso de conducción por
intermedio de los comandos su o sudo. Agregar un nuevo usuario en Linux

En la mayoría de los sistemas GNU con Linux esto es muy simple.
Crearíamos una cuenta de usuario separada logueándonos como root y luego
ejecutando el comando adduser para crear un nuevo usuario. En el caso de
Ubuntu es igual de simple: abrimos una terminal con Ctrl+Alt+T e
ingresamos el siguiente Comando de Organización:

sudo adduser usuario

Tras ingresar la contraseña de root localmente, procedemos a completar
lo solicitado por el programa adduser, que será el nombre de usuario a
crear, su contraseña de usuario (duplicada para no fallar), y
opcionalmente sus datos personales.

Conforme hayamos creado este nuevo usuario, podrán seguir los pasos que
os indicaré para desactivar el acceso de root a través del método de
Shell Seguro SSH.

Usamos el archivo de configuración maestro sshd para desactivar el login
de root y esto podría disminuir el riego o impedir la irrupción de
actores no deseados para obtener la conducción de nuestro sistema.
Tambiçen veremos cómo reactivar el acceso de root nuevamente así como
limitar el acceso de Secure Shell basados en una lista de usuarios
permitidos. Desactivar Login SSH como Root

Para desactivar el login de root, hemos de editar el fichero de
configuración principal de Secure Shell, el /etc/ssh/sshd_config.

sudo nano /etc/ssh/sshd_config

En este fichero, buscamos con Ctrl+w la siguiente línea del fichero.

#PermitRootLogin

y deberíamos encontrar #PermitRootLogin prohibit-password o bien
#PermitRootLogin no.

Debemos eleminar el ‘#‘ al comienzo de la línea, y la editamos para que
quede de esta manera:

PermitRootLogin no

 

Ahora necesitamos reiniciar el servidor de SSH. Esto lo podremos hacer
ingresando:

sudo systemctl restart sshd

...o bien:

/etc/init.d/sshd restart

Una vez cumplida con esta tarea, comprobaremos la desactivación
intentando loguearnos con el usuario root, y deberíamos recibir el error
de "Permiso Denegado, por favor intente nuevamente, o “Permission
denied”.

$ ssh root@ip_remota

root@xxx.xxx.xxx.xxx's password: 

Permission denied, please try again.

De este modo, de ahora en adelante deberá loguerse como usuario normal y
luego usar el comando su para cambiar al superusuario Conductor root o
bien sudo para elevarnos como superusuario.

Activar Login SSH como root

Para activar el logueo del usuario root a través de SSH, hemos de editar
el fichero /etc/ssh/sshd_config. Abrimos una terminal con Ctrl+Alt+t e
igresamos: 

sudo nano /etc/ssh/sshd_config

Usamos Ctrl+w para buscar la línea de la opción de configuración
PermitRootLogin yes y la descomentamos removiendo el ‘#‘ al comienzo, y
guardamos el fichero con Ctrl+o.

PermitRootLogin yes

Luego reiniciamos el servicio sshd como se explicó anteriormente,
ingresando :

sudo systemctl restart sshd

...o bien:

/etc/init.d/sshd restart

Ahora realizaremos una comprobación intentando loguearnos al sistema con
el usuario root.

ssh root@ip_del_servidor

root@192.168.0.102's password:
Last login: Mon Dec 27 15:14:54 2021 from 192.168.0.161

Limitar los logins SSH de Usuarios

Si contamos con un gran número de cuentas de usuarios en el sistema,
puede tener sentido limitar el acceso remoto de SSH a aquellos usuarios
que realmente lo necesiten. Para ello debemos indicarlo en el fichero
/etc/ssh/sshd_config.

sudo nano /etc/ssh/sshd_config

Al final del fichero agregamos una línea con la opción de configuración
AllowUsers y luego de dejar un espacio de separación, agregamos una
lista con los nombres de usuarios permitidos. Por ejemplo, si deseamos
que l@s usuari@s peron y evita cuenten con acceso remoto ssh,
ingresamos:

AllowUsers peron evita

Guargamos los cambios con Ctrl+o y salimos con Ctrl+x. Finalmente
reinciiamos el servicio ssh.