miércoles, 27 de diciembre de 2006

CREACION DE USUARIOS EN CONSOLA

introducción.

Linux es un sistema operativo con muchas características y una de estas es el estar diseñado para ser utilizado por múltiples usuarios. Aún cuando se tenga una PC con un único usuario, es importante recordar que no es conveniente realizar el trabajo diario desde la cuenta de root, misma que solo debe utilizarse para la administración del sistema.



Una cuenta de usuario contiene las restricciones necesarias para impedir que se ejecuten comandos que puedan dañar el sistema -programas troyanos, se alteren accidentalmente la configuración del sistema, los servicios que trabajan en el trasfondo, los permisos y ubicación de los archivos y directorios de sistema, etc. Procedimientos.



Generalmente el paso que procede a una instalación de Linux es la creación de cuantas de usuario. Existen distintos métodos, todos son sencillos y permiten crear una cuenta con su propio directorio de trabajo y los archivos necesarios.



Actualmente se existen recursos como el programa instalador de Red Hat, Mandrake y distribuciones basadas sobre esta. Existen programas que funcionan desde un entorno gráfico, como es Linuxconf, y recursos que funcionan en modo de texto o desde una ventana terminal, como son los comandos tradicionales,adduser y passwd, y algunos otros programas, como YaST y la versión correspondiente de Linuxconf.
Creando una cuenta con el programa instalador en Linux
Casi al concluir el proceso de instalación de Linux se proporciona la opción de crear, con opciones predeterminadas, cuentas de usuarios en la misma pantalla en donde se ingresa la contraseña de root. El procedimiento solo requiere que se ingresen los nombres de usuarios o logins y que se teclee, con confirmación, la contraseña correspondiente. Opcionalmente se pueden especificar el nombre completo del usuario y directorio de trabajo -home-.

En algunos casos, una vez que se accede por primera vez al sistema, será necesario hacer ciertas modificaciones o agregar más cuentas. Definitivamente no es práctico re-utilizar el programa de instalación para tal efecto. Puede hacerse todo lo necesario desde un entorno gráfico con Linuxconf o bien desde el modo de texto o una ventana terminal con los comandos adduser y passwd.
Creando una cuenta en el modo de texto: adduser y passwd
Este procedimiento puede realizarse de forma segura tanto fuera de X Window como desde una ventana terminal en el entorno gráfico del que se disponga. Fue el método comúnmente utilizado antes de la aparición de programas como YaST y Linuxconf. Sin embargo aún resulta útil para la administración de servidores, cuando no se tiene instalado X Windows, no se tienen instalados YaST o Linuxconf -o las versiones de estos que se han instalado no trabajan correctamente-, o bien se tienen limitaciones o problemas para utilizar un entorno gráfico.

Lo primero: el comando adduser
{jospagebreak}
El primer paso para crear una nueva cuenta consiste en utilizar el comando adduser del siguiente modo:
adduser nombre_del_usuario

Ejemplo:
Adduser revista
Lo segundo: el comando passwd.

Después de crear la nueva cuenta con adduser o que sigue a continuación es especificar una contraseña para el usuario. Determine una que le resulte fácil de recordar, que mezcle números, mayúsculas y minúsculas y que, preferentemente, no contenga palabras que se encontrarían fácilmente en el diccionario.Aunque el sistema siempre tratará de prevenirlo cuando se escoja una mala contraseña, el sistema no le impedirá que lo haga. Especificar una nueva contraseña para un usuario, o bien cambiar la existente, se puede realizar utilizando el comando passwd del siguiente modo:
passwd nombre_del_usuario

Ejemplo:
passwd revista

El sistema le requerirá entonces que proceda a teclear la nueva contraseña para el usuario y que vuelva a teclearla para confirmar. No verá el echo, por seguridad, el sistema no jostrará los caracteres tecleados, por lo que debe hacerlo con cuidado. Si se considera que tal vez se cometieron errores de tecleado, puede presionarse las veces que sean necesarias la tecla o . De cualquier forma el sistema le informará si coincide o no lo tecleado. Si la operación fue exitosa el sistema no devolverá ningún mensaje, si por el contrario nos hejos equivocado en tipear la contraseña el sistema se las ingeniara para darnos a conocer el error.
Este procedimiento también puede utilizarse para cambiar una contraseña existente.

Opciones avanzadas.
En muchos casos pueden no ser necesarios, pero si se esta administrando un servidor o estación de trabajo, o bien se es un usuario más experimentado, y se quiere crear una cuenta con mayores o menores restricciones, atributos y/o permisos, pueden utilizarse las siguientes opciones de adduser:

{jospagebreak}

Comandos Avanzados
-c comment
Se utiliza para especificar el archivo de comentario de campo para la nueva cuenta.
-d home dir
Se utiliza para establecer el directorio de trabajo del usuario. Es conveniente, a fin de tener un sistema bien organizado, que este se localice dentro del directorio /home.
-e expire date
Se utiliza para establecer la fecha de expiración de una cuenta de usuario. Esta debe ingresarse en el siguiente formato: AAAA-MM-DD.
-g initial group
Se utiliza para establecer el grupo inicial al que pertenecerá el usuario. De forma predeterminada se establece como único grupo 1. Nota: el grupo asignado debe de existir.
-G group,[...]
Se utiliza para establecer grupos adicionales a los que pertenecerá el usuario. Estos deben separarse utilizando una coma y sin espacios. Esto es muy convenietne cuando se desea que el usuario tenga acceso a determinados recursos del sistema, como acceso a la unidad de disquetes, administración de cuentas PPP y POP. Nota: los grupos asignado deben de existir.
-m
Se utiliza para especificar que el directorio de trabajo del usuario debe ser creado si acaso este no existiese, y se copiaran dentro de este los archivos especificados en /etc/skel.
-s shell
Se utiliza para establecer el Shell que podrá utilizar el usuario. De forma predeterminada, se establece bash como Shell predeterminado.
-u uid
Se utiliza para establecer el UID, es decir, la ID del usuario. Este debe ser único. De forma predeterminada se establece como UID el número mínimo mayor a 99 y mayor que el de otro usuario existente. Cuando se crea una cuenta de usuario por primera vez, como ocurre en.x y RedHat generalmente se asignará 500 como UID del usuario. Los UID entre 0 y 99 son reservados para las cuentas de los servicios del sistema.
Ejemplo:
adduser -u 500 -d /home/revista -G floppy,pppusers,popusers revista
Esto creará una cuenta de usuario llamada revista, que se encuentra incluido en los grupos floppy, pppusers y popusers, que tendrá un UID=500, utilizará Bash como shell y tendrá un directorio de trabajo en /home/revista.

Existen más opciones y comentarios adicionales para el comando adduser, estas se encuentran especificadas en los manuales -Man pages-. Para acceder a esta información, utilice el comando man adduser desde una ventana terminal.
{jospagebreak}
Eliminar una cuenta de usuario.
En ocasiones un administrador necesitará eliminar una o más cuentas de usuario. Este es un procedimiento principalmente utilizado en servidores y estaciones de trabajo a los cuales acceden múltiples usuarios. Para tal fin nos valdrejos del comando userdel.

El comando userdel.
La sintaxis básica de este comando es la siguiente:
userdel nombre_del_usuario

Ejemplo:
userdel revista

Si se desea eliminar también todos los archivos y subdirectorios contenidos dentro del directorio de trabajo del usuario a eliminar, se debe agregar la opción -r:
userdel -r nombre_del_usuario

Ejemplo:
userdel -r revista

Comentarios finales acerca de la seguridad.
Cuando, en la mayoría de los casos, un hacker o cracker consigue infiltrarse en un sistema Linux o Unix no es porque estos tengan un hueco de seguridad, sino porque el intruso pudo "hackear" alguna de las contraseñas de las cuentas existentes. Si usted específico durante el proceso de instalación de Linux una mala contraseña de root, algo muy común entre usuarios nuevos, es altamente recomendado cambiarla.

Evite especificar contraseñas fáciles de adivinar. Con esto nos referijos particularmente a utilizar contraseñas que utilicen palabras incluidas en cualquier diccionario de cualquier idioma, datos relacionados con el usuario o empresa , fechas de nacimiento, números telefónicos, y nombres de mascotas, la palabra Linux, nombres de personajes de ciencia ficción, etc.

Evite escribir las contraseñas sobre medios físicos, memorícelas.

Si necesita almacenar contraseñas en un archivo, hágalo utilizando encriptación.

Si se le dificulta memorizar contraseñas complejas, utilice entonces contraseñas fáciles de recordar.

Jamás proporcione una contraseña a personas o instituciones que se la soliciten. Evite proporcionarla en especial a personas que se identifiquen como miembros de algún servicio de soporte o ventas. Este último caso lo menciona con énfasis el man page del comando passwd.
Considerarejos como una buena contraseña aquella se compone de una combinación de números y letras mayúsculas y minúsculas y que contiene al menos 8 caracteres. También es posible utilizar pares de palabras con puntuación insertada y frases o secuencias de palabras, o bien acrónijos de estas.
Observar estas recomendaciones, principalmente en sistemas con acceso a redes locales y/o públicas, como Internet, hará que el sistema sea más seguro.