Creación de usuarios. Pablo Sanz Mercado. 1 1. Entorno gráfico. A la hora de crear usuarios, las diferentes distribuciones de Linux nos suministran herramientas sencillas con entorno gráfico, como por ejemplo system-configusers, que nos permiten realizar estas tareas administrativas sin mayor complicación. Figura 1: Aspecto de la herramienta system-config-users, para la creación de usuarios. Estas herramientas además aunan tanto la creación de grupos, como la creación de usuarios y la asignación de contraseñas, de tal forma que son ampliamente utilizadas por los administradores. 2. Lı́nea de comandos. El uso de este tipo de herramientas gráficas no debe dejar de lado la necesidad que tiene un administrador de utilizar sus equivalentes no gráficos (comandos), ya que muchas veces los administradores no disponen de terminales gráficos para poder realizar sus tareas, o bien muchas veces no se dispone del tiempo suficiente para utilizarlas a golpe de ratón, y se necesita realizar algún script para la automatización de las mismas (por ejemplo si habitualmente tenemos que crear varias decenas de cuentas para usuario). Los tres comandos utilizados entonces en este sentido son useradd groupadd passwd 2 que nos permiten crear usuarios, grupos y establecer contraseñas respectivamente. Lo primero que tendremos que hacer por tanto es crear un grupo, si es que no lo tenemos ya creado, en el que incluiremos al usuario. El comando groupadd lo invocaremos con la opción -g con el fin de asignar un número identificador al grupo que creemos. Este número debe ser único, es decir, no debe existir ningún grupo que tenga asignado este número. groupadd -g 510 nombregrupo Una vez hayamos creado el grupo correspondiente (que nos servirá para aunar a los usuarios que tengan un perfil equivalente), podremos crear el usuario mediante el comando useradd. Este comando tiene más opciones que groupadd, algunas de las más importantes son: -c A~ nade una descripción a la cuenta creada. -d Especifica el directorio HOME del usuario. -g Indica el grupo principal en el que se incluirá el usuario. -G Indica, separados por comas, los grupos secundarios del usuario. -s Especifica la shell por defecto que tendrá el usuario. -u Asigna el valor numérico del usuario. Por lo tanto una tı́pica ejecución de este comando serı́a: useradd -c "Usuario de calculo" -d /home/usuario -g 510 -G 501,502 -s /bin/bash -u 561 usuario Finalmente especificar que el comando passwd lo utilizaremos para especificar la contraseña de un usuario. El usuario root puede cambiar la contraseña de cualquier usuario, pero un usuario no root sólo podrá cambiar la suya propia. Además, cuando root ejecuta el comando, el sistema no le pedirá la contraseña previa de la cuenta en la que quiere cambiar esta. Sin embargo la ejecución de este comando por otro usuario necesitará, para su correcta ejecución, que le introduzcamos la contraseña previa. Una de las opciones más desconocidas de este comando es –stdin, que permite que la contraseña sea introducido mediante la entrada estándar sin la necesidad de que esta sea el teclado. Esta utilidad es muy utilizada en la creación de scripts que automatizan la creación de cientos de usuarios por ejemplo. El introducir en estos casos la contraseña mediante el teclado harı́a impracticable el script, ya que se demorarı́a de forma alarmante la ejecución del mismo. Si las contraseñas las tenemos escritas en 3 algún fichero (o base de datos por ejemplo), siempre las podremos pasar al comando passwd mediante la entrada estándar sin necesidad por tanto de escribirlas. No obstante comentar que también podrı́amos realizar una automatización de este tipo sin la utilización del comando passwd, pues el propio comando useradd incluye una opción (-p), que permite indicar la contraseña que tendrá este usuario. Esta contraseña tendrá que estar previamente encriptada mediante crypt, por lo tanto muchas veces es más complicado implementar un script mediante la llamada a crypt que utilizando el comando passwd con la opción –stdin. 4