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 El bunde de SonataAdmin para Symfony te permite crear listados exportables sin apenas esfuerzo. Por defecto, ofrece la posibilidad de exportar a csv, xls, json y xml. Basta con crear el fichero Admin correspondiente a la entidad. Por ejemplo si quisiéramos que un listado de facturas de nuestra aplicación pueda ser exportado a Excel,…
Introducción El objetivo de este tutorial es describir una solución para sincronizar la autenticación de symfony2 (sf2) con los foros de Simple Machines Forums (SMF). A día de hoy no hay ningún bundle de foros para symfony listo para producción. CCDNForumForumBundle es lo mejor que he encontrado pero lamentable su desarrollador no lo mantiene ya….
Escenario Nos encontramos ante una biblioteca de decenas de miles de archivos fotográficos, de los cuales un porcentaje considerable está corrupto. Objetivo Depurar las imágenes corruptas a fin de organizar como es debido nuestra biblioteca. Solución Nota: sólo aplicable a sistemas linux Vamos a necesitar la aplicación ImageMagick:
$sudo apt-get install imagemagick y rsync, que debería venir instalado…
Escenario Tenemos montado un acceso remoto al escritorio de una máquina de la oficina usando el protocolo VNC y el cliente web Guacamole. Queremos permitir que los usuarios puedan pegar contenido en el portapapeles del escritorio remoto, pero no puedan llevarse el contenido del portapapeles remoto a su propia máquina. O, dicho de otra manera,…
Escenario En el trabajo usamos Apache Guacamole para conectarnos a nuestros escritorios de la oficina desde casa. Apache Guacamole proporciona una puerta de entrada HTML5 para conectar con servicios de acceso remoto, como pueden ser VNC o RDP. Consta de dos : el servidor y el cliente que no tienen por qué correr en la…