Publicado: Vie Sep 05, 2008 10:39 pmAsunto: /etc/passwd El archivo de passwords
En ocasiones, cuando uno es nuevo en Linux, se le ocurre abrir el archivo /etc/passwd; pero inmediatamente lo hacemos y vemos el formato de ‘eso’ (asi le llamamos en ese momento), lo cerramos rapido con intención de no volver a abrirlo y con la esperanza de nunca tener que editarlo manualmente.
Hoy estaremos estudiando ese archivo de forma detenida, y esperando que la próxima vez que lo abran, sea una experiencia menos traumática.
Dirijanse al directorio /etc/ y abran su archivo ‘passwd’.
Mi /etc/passwd luce algo como así:
Código:
root:x:0:0::/root:/bin/bash
bin:x:1:1:bin:/bin:/bin/false
daemon:x:2:2:daemon:/sbin:/bin/false
adm:x:3:4:adm:/var/log:/bin/false
lp:x:4:7:lp:/var/spool/lpd:/bin/false
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/:/bin/false
news:x:9:13:news:/usr/lib/news:/bin/false
uucp:x:10:14:uucp:/var/spool/uucppublic:/bin/false
operator:x:11:0:operator:/root:/bin/bash
games:x:12:100:games:/usr/games:/bin/false
ftp:x:14:50::/home/ftp:/bin/false
smmsp:x:25:25:smmsp:/var/spool/clientmqueue:/bin/false
mysql:x:27:27:MySQL:/var/lib/mysql:/bin/false
rpc:x:32:32:RPC portmap user:/:/bin/false
sshd:x:33:33:sshd:/:/bin/false
gdm:x:42:42:GDM:/var/state/gdm:/bin/bash
apache:x:80:80:User for Apache:/srv/httpd:/bin/false
messagebus:x:81:81:User for D-BUS:/var/run/dbus:/bin/false
haldaemon:x:82:82:User for HAL:/var/run/hald:/bin/false
pop:x:90:90:POP:/:/bin/false
nobody:x:99:99:nobody:/:/bin/false
jespinal:x:500:100:Jose P. Espinal:/home/jespinal:/bin/bash
…a primera vista, ‘espantoso’.
Este archivo incluye varias piezas de información para cada cuenta de usuario en el sistema.
Cada ‘pieza’ de información esta separada de la siguiente por ‘:‘ (dos puntos).
Evaluemos la siguiente línea de mi archivo para que entiendan mejor:
Código:
jespinal:x:500:100:Jose P. Espinal:/home/jespinal:/bin/bash
1) Primera pieza (’jespinal’):
Esta corresponde al ‘login name’ o nombre de usuario correspondiente al usuario que describe dicha linea. En este caso es ‘jespinal‘, pues ese es mi usuario , simple, no?.
2) La segunda pieza (’x'):
Corresponde al ‘password’ encriptado; sin embargo, esta ‘x‘ no es mi password, sino que asi se coloca porque el verdadero password no se almacena ahi , sino en ‘/etc/shadow’ (luego estudiaremos ese archivo, calma ). Toma en cuenta que si se esta haciendo uso de ‘/etc/shadow’ para almacenar los passwords, entonces en ese campo del /etc/passwd NO DEBE haber nada excepto la ‘x’.
3) Tercera pieza (’500′):
Corresponde al ID numérico del usuario. Como sabrás (y si no lo sabias, pues ya si), a cada usuario del sistema se le asigna, ademas del login-name, un ID numerico para identificarlo. Ese campo de /etc/passwd es el que se usa para registrar el ID numerico del usuario en cuestion.
4) Cuarta pieza (’100′):
Corresponde al ID numérico del grupo al cual pertenece el usuario. En mi caso, el usuario ‘jespinal’ tiene como grupo principal el grupo ‘users’, y ese es el ID numerico de ese grupo (luego estudiaremos /etc/group , que es ahi que se manejan los grupos y el ID que le otorgamos a cada grupo).
5) Quinta pieza (’Jose P. Espinal’):
Nombre del usuario, o Comentario; por ejemplo, en el caso del usuario de MySQL, usamos algo como ‘Usuario de MySQL’, aunque si quieres puedes usar ‘Pepito Perez’, el hecho es que sepas para que se usa este campo, el cual tambien puedes dejar vacio (’root’ usa este campo vacio, por lo general).
6) Sexta pieza (’/home/jespinal’):
Aqui se indica el directorio de trabajo inicial de cada usuario (o sea, su ‘home’).
7) Septima pieza (’/bin/bash’):
Indica el interprete de comandos que usara el usuario por default o el primer comando que ejecutara (ej. el usuario shutdown, y halt).
Fijate que en el caso de usuarios que solo se usan para ejecutar ciertos procesos (mail, uucp, news), el shell es ‘/bin/false’, el cual es un shell nulo para que este usuario no tenga otra utilidad mas que servir para que un proceso se ejecute a nombre suyo.
Ya, eso es todo; ves!? no muerde :>>.
Eso es practicamente todo lo relacionado a este archivo. Realmente facil de entender y de editar (si quieres cambiar algo).
Hasta luego; ya sabes: ‘man’ es tu mejor amigo en Linux. _________________ --
# echo -e "\e[42;5m Jose P. Espinal \e[0m"
# make Linux | more > user_friendly
# http://blog.slackware-es.com
Publicado: Dom Sep 07, 2008 8:45 pmAsunto: Re: /etc/passwd El archivo de passwords
Este tipo de info es importante en el caso de uno querer agregar un usuario manualmente.
Tal vez preguntaran "Y para que manualmente ??". Pues, por ejemplo, las versiones nuevas del comando 'useradd' no permiten agregar usuarios con letras mayusculas, ej. Juan , o, PedRo.
Una vez me tope con la necesidad de agregar usuarios con letras mayusculas. Dicho usuario seria agregado utilizando un shellscript, y ya que 'useradd' no lo permite, pues hubo que hacerlo manualmente por medio del mismo script, editando este archivo, y /etc/shadow
Ese usuario lo utilizaria luego para permitir acceso a unos telefonos VoIP marca Polycom via FTP a una PBX Asterisk para descargar sus archivos de configuracion. (El usuario ftp por default es PlcmSpIp )
Es posible que este sea un caso extremo , pero, es bueno saberlo. _________________ --
# echo -e "\e[42;5m Jose P. Espinal \e[0m"
# make Linux | more > user_friendly
# http://blog.slackware-es.com
Miembro No. 20814 Registrado: Apr 19, 2007 Mensajes: 497 Ubicación:
Cojutepeque, El
Salvador C. A.
Publicado: Mar Sep 09, 2008 10:10 pmAsunto: Re: /etc/passwd El archivo de passwords
hum, pos la verdad no me gusta mucho tocar ese tipo de archivos, pero bueno, a veces se necesita. Ojala continues con info acerca de /etc/group y /etc/shadow, gracias por compartir _________________ Grüße...
Maiku
No puedes publicar nuevos temas en este foro No puedes responder a temas en este foro No puedes editar tus mensajes en este foro No puedes borrar tus mensajes en este foro No puedes votar en encuestas en este foro