Si dispones de una máquina con acceso remoto por ssh, uno de los agujeros de seguridad más grandes es permitir al usuario root logarse directamente. Este pequeño tutorial muestra cómo añadir un usuario nuevo a tu máquina de modo que pueda logarse por ssh y, luego, obtener priveligios root (con su o sudo).
Vamos a empezar por eseñar cómo añadir un nuevo usuario al servidor, y después cómo deshabilitar logarse como root, habilitando en su lugar el sudo.
Para empezar abre tu terminal y, como root, teclea los siguientes comandos:
adduser usuariossh
passwd usuariossh
Después añade el usuario creado al fichero sudo, abre el fichero
/etc/sudoers en tu editor preferido, por ejemplo:
nano/etc/sudoers o
vi/etc/sudoers
y añade la línea para el nuevo usuario debajo de la del root:
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
usuariossh ALL=(ALL) ALL
Por cuestiones de seguridad es aconsejable deshabilitar al usuario root el login directo por ssh. Para ello, abre el fichero
sshd_config en tu editor de texto.
nano/etc/ssh/sshd_config o
vi/etc/ssh/sshd_config, cambia
#PermitRootLogin yes
por
PermitRootLogin no
y,como root, reinicia el demonio sshd:
service sshd restart
Para más seguridad, es aconsejable también cambiar el puerto ssh por defecto (22) por uno más discreto, del tipo 4756 o 30113. (Si no sabes cuál elegir, aquí tienes una lista los puetos más comunes, escoge uno que no esté asignado). Para ello, de nuevo en el fichero
ssh_config, cambia
#Port 22
por
Port 30113
Tampoco está de más cambiar el valor de LoginGraceTime. Dicho parámetro configura el servidor para desconectar al usuario después de un tiempo establecido si no ha conseguido logarse con éxito, para ello, siempre en el
fichero sshd_config:
LoginGraceTime 30s
PermitRootLogin no
#StrictModes yes
MaxAuthTries 6
Por último reinicia ssh. Como root ejecuta el comando:
/etc/init.d/sshd restart
Ahora tienes tu sshd un poco más seguro, haciendo un poco más difícil a extraños colarse en tu servidor
Escenario Cloudatcost es una empresa canadiense que, entre otras cosas, ofrece un servicio de hosting que, en vez de pagar todos los meses, lo compras con un único pago. Te permiten comprar un número de CPUs, espacio en disco y cantidad de memoria RAM para que la gestiones como mejor te convenga, distribuyendo los recursos…
Escenario Seguro que no somos los primeros a quien les pasa que una actualización obligatoria de Ubuntu 18.04 al 20.04 acarrea una actualización no deseada de MySql a la versión 8.x. Problema En la versión 8.0.30 MySql no cuenta con la utilidad
mysql_upgrade para dejar las tablas preparadas para una actualización de versión. En esta…
Escenario Estoy trabajando en una aplicación multi-lenguaje desarrollada con la plataforma spring boot. Para quien no conozca esta plataforma de desarrollo, spring boot te permite gestionar varios lenguajes gracias a un sistema que utiliza ficheros de tipo propiedades para almacenar las traducciones. Los nombres de estos ficheros han de respetar la siguiente convención, messages_{código ISO…
Escenario En mi trabajo usamos gpg para cifrar los documentos con información sensible. Problema Resulta que, en su día, di de alta la clave con una esperanza de vida de dos años. Y dos años pasan muy rápido. Solución Estos son los comandos que hay que ejecutar para extender la fecha de caducidad. Para listar…
Ésta va a ser rápida. Es solo un recordatorio personal de cómo configurar varias instancias de gunicorn en una máquina con systemd. De modo que si no sabes qué es unicorn o systemd es muy posible que no te vaya interesar nada de lo que vaya a contar. Si aun sigues ahí a pesar de…
Escenario Cuál fue mi sorpresa cuando la semana pasada al intentar acceder a este blog me encontré que estaba bloqueado por Firefox. Probé con Chrome, misma situación. En vez de cargar la página, el navegador mostraba una pantalla en rojo avisando que el sitio puede contener programas dañinos para mi ordenador. Problema Aunque los dos…