Está en la página 1de 8

Administracin de usuarios en Ubuntu Server

2 respuestas

La administracin de usuarios es una de la partes ms importantes de la configuracin y mantenimiento de un servidor, adems de estar directamente relacionada con la seguridad de un sistema Linux, pues los permisos otorgados a cada uno de los usuarios de un sistema son la clave al momento de establecer unas polticas de seguridad efectivas. El manual que vers a continuacin, es una adaptacin libre y con algunas modificaciones del apartado User Management includo en la documentacin oficial de Ubuntu Serverpublicada por Canonical para la versin para servidores de su distribucin Ubuntu Linux.

Dnde est root? Aadiendo y eliminando usuarios Seguridad de perfil de usuario Polticas de contrasea Otras consideraciones de seguridad

Dnde est root?


Los desarrolladores de Ubuntu han optado por deshabilitar el uso de la cuenta administrativa root por razones de seguridad, y en su lugar, animan a los usuarios de Ubuntu a utilizar sudo para elevar los permisos de los usuarios del sistema hasta un nivel administrativo usando su propia contrasea durante un periodo determinado de tiempo. Esta caracterstica permite al administrador del sistema ejercer un control ms preciso sobre cmo y cuando los usuarios del sistema pueden acceder a ciertas caractersticas del sistema, otorgando responsabilidades a cada una de las acciones llevadas a cabo por cada uno de los usuarios. Si an ests interesado en utilizar la cuenta root en tu servidor, sigue los pasos descritos a continuacin: 1. Ejecuta el siguiente comando para asignar una nueva contrasea a la cuenta root:
sudo passwd

2. sudo preguntar por tu contrasea y posteriormente te pedir que ingreses una nueva contrasea para root como se muestra a continuacin:
[sudo] password for username: (ingresa tu propia contrasea) Enter new UNIX password: (ingresa una nueva contrasea para root) Retype new UNIX password: (repite la nueva contrasea para root) passwd: password updated successfully

3. Para deshabilitar la cuenta root, ejecuta el siguiente comando:


sudo passwd -l root

Para conocer ms acerca de sudo, te recomiendo leer el manual ejecutando el comandosudo man. De forma predeterminada, Ubuntu crear el usuario inicial configurado durante el proceso de instalacin con permisos de administracin gracias a la inclusin de este en el grupo de administradores admin. Si por alguna razn deseas dar permisos de administracin a otro usuario, lo nico que debes hacer es ingresar este nuevo usuario en el grupo admin.

Aadiendo y eliminando usuarios

El proceso para administrar los usuarios locales y los grupos es sencillo y difiere muy poco de las dems distribuciones Linux. Ubuntu y otras distribuciones basadas en Debian animan al usuario a utilizar el paquete adduser para la administracin de cuentas de usuario. Para agregar un usuario nuevo en Ubuntu Server debes utilizar la siguiente sintaxis del paquete adduser y proveer la informacin solicitada para la creacin de la cuenta como el nombre completo del usuario, su nmero telefnico, etc.
sudo adduser usuario

Para eliminar una cuenta de usuario y su grupo primario utiliza el siguiente comando:
sudo deluser usuario

Eliminar una cuenta no elimina su directorio personal ni los archivos almacenados en este. Por lo tanto, otros usuarios pueden ingresar a este directorio y ver el contenido almacenado en el mismo sin restriccin alguna, a menos que hayas tomado las precauciones necesarias con anterioridad. Es recomendable cambiar los valores del UID/GID a algo ms apropiado como la cuentaroot y cambiar la ubicacin del directorio para prohibir el acceso no autorizado a esa informacin y evitar futuros conflictos por medio de los siguientes comandos.
sudo chown -R root:root /home/usuario/ sudo mkdir /home/usuarios_archivados/ sudo mv /home/usuario /home/usuarios_archivados/

Si por el contrario, desea eliminar el usuario y el directorio personal asociado a este, utilice la siguiente sintaxis:
sudo userdel -r usuario

Para bloquear o desbloquear una cuenta de usuario temporalmente utilice la siguiente sintaxis respectivamente:
sudo passwd -l usuario sudo passwd -u usuario

Para aadir o eliminar un grupo personalizado utilice la siguiente sintaxis respectivamente:


sudo addgroup grupo sudo delgroup grupo

Para aadir un usuario a un grupo especfico utilice la siguiente sintaxis:


sudo adduser usuario grupo

Para aadir a un usuario a varios grupos al mismo tiempo utilice la siguiente sintaxis:
sudo usermod -a -G grupo1,grupo2,grupo3 usuario

Seguridad de perfil de usuario


Cuando se crea un nuevo usuario, la utilidad adduser crea un nuevo directorio nombrado/home/usuario. El perfil predeterminado es modelado a partir del contenido del directorio/etc/skel, el cual incluye las caractersticas bsicas del perfil. Si tu servidor va a albergar varios usuarios, debes poner especial atencin a los permisos de los directorios personales con la intencin de mantener la confidencialidad. Por defecto, los directorios personales en Ubuntu son creados con permisos de lectura y ejecucin globales . Esto significa que a los usuarios se les permite navegar y acceder a los directorios y archivos almacenados en los directorios personales de cada uno de los usuarios en el servidor, lo cual puede llegar a ser contraproducente para tus necesidades especficas. Para verificar los permisos de los directorios personales de cada uno de los usuarios utiliza la siguiente sintaxis:
ls -ld /home/usuario

La siguiente salida muestra que el directorio /home/usuario posee permisos de lectura globales:
drwxr-xr-x 2 usuario usuario 4096 2007-10-02 20:03 usuario

Puedes eliminar los permisos de escritura globales utilizando la siguiente sintaxis:


sudo chmod 0750 /home/usuario

Algunas personas tienden a utilizar la opcin recursiva (-R) de forma indiscriminada, la cual modifica todos los directorios hijos y los archivos ubicados en estos, pudiendo llevar a resultados indeseados y problemas adicionales. Modificar los permisos del directorio padre solamente, es suficiente evitar el acceso no autorizado a todo el contenido que se encuentre dentro de este. Una forma ms eficiente de realizar esta tarea, es modificando los valores predeterminados de la aplicacin adduser para que establezca los permisos de lectura y ejecucin de los directorios personales al momento de la creacin de un nuevo usuario. Para lograr esto, debemos modificar la variable DIR_MODE en el archivo /etc/adduser.conf a algo ms apropiado para las necesidades

especficas de nuestro sistema y que todos los nuevos directorios reciban los permisos correctos.
DIR_MODE=0750

Despus de haber corregidos los permisos de los directorios habiendo utilizado cualquiera de los anteriores mtodos, utiliza la siguiente sintaxis para verificar los resultados obtenidos:
ls -ld /home/usuario

El resultado obtenido muestra que los permisos de lectura y ejecucin globales han sido eliminados:
drwxr-x--2 usuario usuario 4096 2007-10-02 20:03 usuario

Polticas de contrasea
Una poltica de contraseas fuerte es uno de los aspectos ms importantes en cuanto a seguridad se trata. La mayora de los ataques exitosos involucran simples ataques de fuerza bruta o ataques de diccionario contra contraseas dbiles. Si planeas ofrecer algn tipo de acceso remoto a tu sistema que involucre el uso de tu sistema local de contraseas, asegrate de contar con requerimiento para la complejidad de las contraseas, vida til mxima de las contraseas, y auditoras frecuentes de tus sistemas de autenticacin.

Longitud mnima de la contrasea


De forma predeterminada, Ubuntu requiere un mnimo de 6 caracteres para la creacin de una contrasea, adems de algunas verificaciones de entropa. Estos valores son controlados por el archivo /etc/pam.d/commonpassword que se describe a continuacin:
password sha512 [success=2 default=ignore] pam_unix.so obscure

Si por ejemplo quieres cambiar el mnimo de caracteres para la contrasea de 6 a 8, entonces cambia el valor de la variable correspondiente a min=8 como se muestra en el siguiente ejemplo:
password sha512 min=8 [success=2 default=ignore] pam_unix.so obscure

Las verificaciones bsicas de entropa y las reglas de longitud mnima no aplican al administrador que est usando sudo para la creacin de un nuevo usuario.

Caducidad de las contraseas


Cuando creas nuevos usuarios, deberas establecer una poltica que indique un mnimo y un mximo de tiempo para la duracin de las contraseas, obligando al usuario a cambiarla una vez este tiempo se haya agotado. Para conocer fcilmente el estado actual de una cuenta de usuario, utiliza la siguiente sintaxis:
sudo chage -l usuario

La salida obtenida presenta interesantes datos acerca de la cuenta de usuario, observando que no existen polticas aplicadas:
Last password change Password expires Password inactive Account expires Minimum number of days between password change Maximum number of days between password change Number of days of warning before password expires : : : : : : : Jan 20, 2008 never never never 0 99999 7

Para establecer cualquiera de estos valores, utiliza la siguiente sintaxis, y sigue cada uno de los mensajes interactivos:
sudo chage usuario

El siguiente es un ejemplo de cmo puedes cambiar manualmente la fecha de expiracin (-E) a 01/31/2008, una duracin mnima de la contrasea ( -m) de 5 das, una duracin mxima de la contrasea (-M) de 90 das, un periodo de inactividad (-I) de 5 das despus de la fecha de expiracin de la contrasea, y una advertencia con (-W) 14 das de anticipacin antes de la expiracin de la contrasea:
sudo chage -E 01/31/2011 -m 5 -M 90 -I 30 -W 14 usuario

Para verificar los cambios realizado utiliza la misma sintaxis mencionada anteriormente:
sudo chage -l usuario

La salida presentada a continuacin muestra las nuevas polticas que han sido establecidas para la cuenta de usuario:
Last password change Password expires Password inactive Account expires Minimum number of days between password change Maximum number of days between password change Number of days of warning before password expires : : : : : : : Jan Apr May Jan 5 90 14 20, 19, 19, 31, 2008 2008 2008 2008

Otras consideraciones de seguridad


Algunas aplicaciones utilizan mtodos de autenticacin alternativos que pueden ser fcilmente pasados por alto incluso por administradores de sistemas con experiencia. Por lo tanto, es importante entender y controlar cmo los usuarios se autentican y obtiene acceso a los servicios y aplicaciones en tu servidor.

Acceso SSH por usuarios deshabilitados


Deshabilitar o bloquear una cuenta de usuario no necesariamente previene que un usuario se conecte de forma remota a tu servidor si previamente ha configurado una autenticacin de clave pblica RSA. Ellos an podrn acceder al servidor a travs del shell sin necesidad de una contrasea. Recuerda verificar los directorios principales de los usuarios en busca de archivos que permitan este tipo de autenticacin SSH tales como/home/username/.ssh/authorized_keys. Elimina o renombra el directorio /.ssh en el directorio principal del usuario para evitar posibles capacidades de autenticacin SSH en un futuro. Asegrate de verificar si existe cualquier conexin SSH establecida por el usuario deshabilitado, ya que es posible que este tenga conexiones de salida o entrada preexistentes y mata cualquiera que encuentres. Para conocer el PID las conexiones SSH existentes y posteriormente matarlas utiliza la siguiente sintaxis:
sudo ps -ef|grep pts/0

Restringe el acceso SSH a solo las cuentas de usuario que deberan tenerlo. Por ejemplo, puedes crear un grupo llamado sshlogin y aadir el nombre del grupo como valor asociado a la variable AllowGroups localizada en el archivo /etc/ssh/sshd_config.

AllowGroups sshlogin

Luego aade los usuarios con permiso de conexin SSH al grupo sshlogin y reinicia el servidor SSH:
sudo adduser username sshlogin sudo service ssh restart

Autenticacin de usuario con base de datos externa


La mayora de las redes empresariales requieren autenticacin centralizada y control de acceso para todos los recursos del sistema. Si tienes configurado tu servidor para autenticar usuarios en bases de datos externas, asegurate de deshabilitar las cuentas de usuario externa y localmente, as te aseguras que la autenticacin de forma local no es posible. Espero que con estas indicaciones aprendas a controlar los usuarios en tu servidor y gestionar correctamente unas polticas de usuario que lleven a un sistema seguro.

http://emslinux.com/usuarios-en-ubuntu-server/