/etc/passwd El archivo de passwords

Foro para discutir sobre la documentación en linux (libros, ebooks, documentos, editoriales, autores, etc), así como temas publicados en el sitio.
Responder
Avatar de Usuario
jespinal
Forista Nuevo
Forista Nuevo
Mensajes: 7
Registrado: Mié Sep 03, 2008 7:00 am
Ubicación: /dev/rep/dom
Contactar:

/etc/passwd El archivo de passwords

Mensaje por jespinal » Sab Sep 06, 2008 6:39 am

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: Seleccionar todo

    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: Seleccionar todo

    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://www.eSlackware.com
Avatar de Usuario
ExEKieLiTo
Forista Legendario
Forista Legendario
Mensajes: 2107
Registrado: Vie Dic 07, 2007 8:00 am
Ubicación: /dev/Argentina/buenos aires

Re: /etc/passwd El archivo de passwords

Mensaje por ExEKieLiTo » Lun Sep 08, 2008 2:00 am

la verdad nunca tube la necesidad de editar dicho archivo ... pero es bueno tener una referencia de ello.

saludos !
Amd 3600 x2 Dual Core - 2 gb Ram - Nvidia Gforce 7300 GS - Sata2 250 GB
--
Corriendo Slackware 12
Avatar de Usuario
Julito
Forista Medio
Forista Medio
Mensajes: 201
Registrado: Jue Abr 10, 2008 7:00 am

Mensaje por Julito » Lun Sep 08, 2008 3:49 am

Nunca esta de más informarse de algo...Buena info.

Saludos.
------------------------------------------------
Hablar es barato. Enséñame el código.
Linux Torvarlds.
Avatar de Usuario
jespinal
Forista Nuevo
Forista Nuevo
Mensajes: 7
Registrado: Mié Sep 03, 2008 7:00 am
Ubicación: /dev/rep/dom
Contactar:

Re: /etc/passwd El archivo de passwords

Mensaje por jespinal » Lun Sep 08, 2008 4:45 am

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. ::lol:: (El usuario ftp por default es PlcmSpIp )

Es posible que este sea un caso extremo :P , pero, es bueno saberlo.
--
# echo -e "\e[42;5m Jose P. Espinal \e[0m"
# make Linux | more > user_friendly
# http://www.eSlackware.com
Avatar de Usuario
maiku
Moderador
Moderador
Mensajes: 1519
Registrado: Jue Abr 19, 2007 7:00 am
Ubicación: Cojutepeque, El Salvador C. A.
Contactar:

Re: /etc/passwd El archivo de passwords

Mensaje por maiku » Mié Sep 10, 2008 6:10 am

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

Full linux alchemist!!!
Avatar de Usuario
Sagman
Forista Mayor
Forista Mayor
Mensajes: 933
Registrado: Dom Jul 31, 2005 7:00 am
Ubicación: /world/europe/spain/catalonia/girona/figueres
Contactar:

Mensaje por Sagman » Mié Sep 10, 2008 7:41 am

Buena info, espero la explicacion del /etc/shadows :P
Responder
  • Similar Topics
    Respuestas
    Vistas
    Último mensaje