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
Para un nuevo proyecto en PHP que estamos empezando, hemos decidido utilizar la plataforma symfony2. En el pasado he tenido la suerte de trabajar, disfrutar y aprender con symfony 1.x, gracias a su coherente organización, buen uso del PHP y unos robustos cimientos fundados en una extensa documentación y una vasta comunidad de activos desarrolladores.
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 Un buen día nuestra instalación de GitLab dejó de funcionar por culpa de escasez de espacio en disco duro. Problema Alguien tuvo la brillante idea de crear un enlace simbólico a un disco de red y, después de copiar con un sudo todos los archivos a una carpeta del susodicho disco, borró la carpeta…
Escenario Estoy en el proceso de separar la parte API de una web de la del frontend. Para ello he creado un nuevo proyecto que solo atenderá peticiones del API. Ambos proyectos comparten la base de datos; en el proyecto API (PA) instalé Laravel Passport para gestionar la autenticación. El proyecto web (PW) necesita por…
Este año me he matriculado de nueve asignaturas, una de ellas anual de modo que me ha tocado preparar diez exámenes. A diferencia de convocatorias anteriores este segundo cuatrimestre he decido estudiarlo a base de hacer tests, muchos tests. No he leído de antemano los manuales, ni siquiera he utilizado apuntes. También he prescindido de…
Escenario Hemos contratado un servidor dedicado en 1and1 (ubuntu 14.04) y al acceder por ssh constatamos que no disponemos de todo el espacio en disco disponible:
$df-hFilesystem Size Used Avail Use%Mounted onudev3.9G4.0K3.9G1%/devtmpfs798M592K797M1%/run/dev/md14.0G990M3.0G25%/none4.0K04.0K0%/sys/fs/cgroupnone5.0M05.0M0%/run/locknone3.9G03.9G0%/run/shmnone100M0100M0%/run/user/dev/mapper/vg00-usr4.8G1.3G3.3G28%/usr/dev/mapper/vg00-var4.8G812M3.8G18%/var/dev/mapper/vg00-home4.8G10M4.6G1%/home Objetivo Aumentar el espacio disponible para dar cabida a nuestros recursos. Solución Nota: sólo aplicable a sistemas linux Primer paso Comprobamos el espacio en disco real:
~$sudo fdisk-lDisk/dev/sda:240.1GB,240057409536bytes255 heads,63sectors/track,29185cylinders,total468862128sectorsUnits=sectors of1*512=512bytesSector size(logical/physical):512bytes/4096bytesI/Osize(minimum/optimal):4096bytes/4096bytesDisk identifier:0x24e3fc12Device Boot Start EndBlocks Id System/dev/sda1204883906554194304fd Linux raid autodetect/dev/sda2839065612584959209715282Linux swap/Solaris/dev/sda312584960468862127228138584fd Linux raid autodetect Segundo…