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 Un usuario se conecta con el móvil a su aplicación de empresa. Si es la primera vez que lo hace ésta le pide autorización para recabar su localización. La aplicación manda la localización al servidor y desde el servidor se informa a una página de monitorización. Dicha página está conectada por websocket con el…
Escenario: Servidor NAS4Free (9.1.0.1 – Sandstorm) con el cliente de torrents, transmission (2.73) pre-instalado. Necesidad: Configurar y levantar una nueva instancia de transmission que cohabite con la ya existente.
É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 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…
Si utilizas Codeigniter te habrás dado cuenta que, por defecto, index.php va estar incluido en tu URL, lo cual no queda muy bonito. Afortunadamente se puede quitar fácilmente de modo que la URL de Codeigniter quede de este modo: http://predatum.com/edit/contact
Escenario Una aplicación symfony 4.4 con el framework Sonata Admin 3.78.1 cuenta con una página de login para que los administradores del sitio puedan gestionar sus clientes. Ahora queremos que los clientes puedan usar la misma página de login para acceder a sus datos personales como, por ejemplo, sus facturas. Para la gestión de usuarios…