IMPORTANT: Per accedir als fitxer de subversion: http://acacha.org/svn (sense password). Poc a poc s'aniran migrant els enllaços. Encara però funciona el subversion de la farga però no se sap fins quan... (usuari: prova i la paraula de pas 123456)

NOTA: Login és un paquet que forma parts de les shadow-utils. Vegeu també LPI_107.1. Gestió d'usuaris i comptes de grup i els fitxers de sistema relacionats

Paquet login

A sistemes de la família Debian com Ubuntu el paquet login forma part de les shadow-utils. L'altre paquet de les eines shadow és passwd.

ordre login

El camí complet és:

/bin/login

I la proporciona el paquet login:

$ dpkg -L login | grep bin
/usr/sbin
/usr/sbin/nologin
/usr/bin
/usr/bin/faillog
/usr/bin/lastlog
/usr/bin/newgrp
/bin
/bin/login
/bin/su
/usr/bin/sg

nologin

Serveix per refusar el login a certs usuaris:

$ nologin
This account is currently not available.

Us podeu trobar alguns exemples en usuaris de sistema:

$ cat /etc/passwd | grep nologin
sshd:x:113:65534::/var/run/sshd:/usr/sbin/nologin

Encara que la majoria utilitzant /bin/false.

faillog

Mostra el log de logins incorrectes (si està activat al fitxer /etc/login.defs, paràmetres FAILLOG_ENAB i LOG UNKFAIL ENAB). El fitxer de log és:

/var/log/faillog

I es pot consultar amb l'ordre:

$ faillog

També serveix per gestionar els errors de login. Consulteu:

$ man faillog

Per consultar el faillog d'un usuari:

$ sudo faillog -a | grep sergi
sergi           0        0   01/01/70 01:00:00 +0100  

Consulteu també ulimit.

Per defecte aquest log no s'activa per qüestions de seguretat (sovint els usuaris s'equivoquen i escriuen la paraula de pas en comptes de l'usuari).

lastlog

Mostra els últims logins dels usuaris:

$ lastlog
Usuari           Port     Des de           Últim
root                                       **No ha entrat mai**
daemon                                     **No ha entrat mai**
bin                                        **No ha entrat mai**
sys                                        **No ha entrat mai**
sync                                       **No ha entrat mai**
games                                      **No ha entrat mai**
man                                        **No ha entrat mai**
lp                                         **No ha entrat mai**
mail                                       **No ha entrat mai**
news                                       **No ha entrat mai**
uucp                                       **No ha entrat mai**
proxy                                      **No ha entrat mai**
www-data                                   **No ha entrat mai**
backup                                     **No ha entrat mai**
list                                       **No ha entrat mai**
irc                                        **No ha entrat mai**

Per consultar el lastlog d'un usuari:

$ lastlog -u sergi
Usuari           Port     Des de           Últim
sergi            tty1                      dc mar 31 05:18:00 +0200 2010

last

Mostra els últims logins:

$  last
sergi    pts/7        :0.0             Mon Apr  5 21:09   still logged in   
sergi    pts/6        :0.0             Mon Apr  5 20:06   still logged in   
sergi    pts/5        :0.0             Mon Apr  5 19:55   still logged in   
sergi    pts/1        :0.0             Mon Apr  5 06:58   still logged in   
sergi    pts/1        :0.0             Mon Apr  5 06:08 - 06:08  (00:00)    
sergi    pts/1        :0.0             Mon Apr  5 05:42 - 06:06  (00:23)    
sergi    pts/5        :0.0             Mon Apr  5 05:23 - 05:39  (00:15)    
sergi    pts/4        :0.0             Fri Apr  2 10:50   still logged in   
sergi    pts/4        :0.0             Fri Apr  2 06:42 - 10:50  (04:07)    
sergi    pts/3        :0.0             Fri Apr  2 06:42   still logged in   
sergi    pts/2        :0.0             Fri Apr  2 06:40   still logged in   
sergi    pts/1        :0.0             Fri Apr  2 05:47 - 05:39 (2+23:52)   
sergi    pts/0        :0.0             Fri Apr  2 05:13   still logged in   
sergi    tty7         :0               Fri Apr  2 05:12   still logged in   
reboot   system boot  2.6.31-20-generi Fri Apr  2 05:12 - 22:07 (3+16:55)   
sergi    pts/4        :0.0             Thu Apr  1 21:10 - 23:40  (02:29)    
sergi    pts/10       :0.0             Thu Apr  1 19:31 - 23:40  (04:08)    
sergi    pts/9        :0.0             Thu Apr  1 18:07 - 23:40  (05:32)    
sergi    pts/8        :0.0             Thu Apr  1 18:07 - 20:41  (02:34)    
sergi    pts/7        :0.0             Thu Apr  1 07:59 - 20:41  (12:42)    

wtmp begins Thu Apr  1 07:22:31 2010

newgrp

NOTA: Per entrar temporalment com un altre usuari vegeu l'ordre su i sg. També podeu consultar sudo

Aquesta ordre permet iniciar un interpret d'ordres nou al qual el grup per defecte de l'usuari és un de diferent al per defecte. Aquest ordre és útil per crear carpetes o fitxers que siguin propietat d'un grup privat de l'usuari (User Private Group (UPG)]]). Per tornar al grup per defecte només cal sortir del nou interpret d'ordres.

NOTA: Només funciona si l'usuari pertany a més d'un grup

També s'utilitza per canviar el grup associat a un fitxer:

$ newgrp group-name file-name 

Per poder-ho fer cal ser un membre del grup o ser superusuari. Si el grup té una paraula de pas aleshores es demanarà la paraula de pas.

L'ordre funciona canviant l'identificador de grup efectiu (effective GID). Si no indiquem cap opció és torna al GID per defecte.

Finalment es pot simular un login com a membre d'un grup amb:

$ newgrp - cada

Si el grup té paraula de pas i l'usuari no és membre del grup li demanarà una paraula de pas:

$ newgrp casa 
Contrasenya: 

Vegem un exemple complet:

Aneu a la vostra HOME i consulteu quins són els vostres grups amb l'ordre groups:

$ cd
$ groups
sergi adm dialout cdrom plugdev lpadmin admin sambashare bsf profes

Ara creeu una carpeta de prova i comproveu que és propietat del vostre grup per defecte (a l'exemple el grup per defecte és sergi):

$ mkdir prova
$ ls -la | grep prova
drwxr-xr-x   2 sergi sergi       4096 2010-04-10 16:42 prova

Abans de continuar apunteu-vos el PID de l'interpret d'ordres que esteu utilitzant:

$ echo $$
9542

Anem a canviar-nos temporalment el grup per defecte:

$ newgrp profes

Comproveu que el que s'ha fet és iniciar una nova shell (diferent PID)

$ echo $$
6296

Ara creeu una carpeta nova de prova:

$ mkdir prova1
$ ls -la | grep prova
drwxr-xr-x   2 sergi sergi        4096 2010-04-10 16:42 prova
drwxr-xr-x   2 sergi profes       4096 2010-04-10 16:43 prova1

Observeu com canvia el grup de la carpeta creada.

Sortiu de l'interpret d'ordres temporal:

$ exit

Netegeu les proves:

$ sudo rm -rf prova
$ sudo rm -rf prov1

sg

Executa un ordre amb un GID diferent.

$ sg ordre

Comanda germana de su. Vegeu també newgrp.

su

Permet canviar d'usuari (canviar el UID) o canviar a superusuari. Sense opcions:

$ su

Canvia a superusuari.

NOTA: El entorn però no és el del nou usuari i/o root. Heu d'executar:

$ su -

Per obtenir el entorn del superusuari (variables d'entorn...)

Per canviar a un altre usuari:

$ su - usuari

En sistemes com Ubuntu on el superusuari root està bloquejat es pot utilitzar;

$ sudo su -

Al fitxer /etc/login.defs us podeu trobar els valors

SYSLOG_SU_ENAB		yes
SYSLOG_SG_ENAB		yes

Que activant els missatges d'activitat de su al syslog.

També es pot utilitzar per executar una ordre com un altre usuari:

$ su usuari -c "ls -la"

Vegeu també:

sudo

I la ordre germana per a grups:

sg

su i PAM

Al fitxer de configuració /etc/pam.d/su:

$ cat /etc/pam.d/su | more

Podeu trobar opcions interessants de configuració de su. Consulteu també PAM.

Fitxer /etc/login.defs

Consulteu /etc/login.defs

DELAYLOGIN

És un paràmetre que es troba al fitxer /etc/default/rcS i que permet indicar si es vol fer un delay del login.

Modificar el missatge previ al login. Fitxer /etc/issue

Es pot modificar el missatge previ modificant el fitxer

/etc/issue

Per exemple, amb una màquina virtual amb Virtual Box, executant un IPCOP, volem mostrar als usuaris quin usuari i paraula de pas necessiten per entrar:

$ sudo nano /etc/issue

El fitxer issue és un dels fitxers bàsics del sistema:

$ dpkg -S /etc/issue
base-files: /etc/issue

MOTD. Message Of The Day

Modificar el missatge que surt després del login però abans de la shell

Cal modificar el fitxer:

/etc/motd

MOTD: Message Of The Day

Fancy MOTD

$ sudo apt-get install linuxlogo

Executeu:

# linuxlogo -L list

# linuxlogo -L 24

Per passar un missatge al fitxer motd

# linuxlogo -L 24 > /etc/motd

Ubuntu Server

El missatge es genera dinàmicament i els canvis que fem als fitxers motd i motd.tail són sobreescrits.

Consulteu el fitxer:

$ ls -la /etc/rc3.d/S70bootlogs.sh 
lrwxrwxrwx 1 root root 21 2009-05-20 21:09 /etc/rc3.d/S70bootlogs.sh -> ../init.d/bootlogs.sh

És a dir el fitxer

/etc/init.d/bootlogs.sh
$ sudo joe /etc/init.d/bootlogs.sh
...
       # Update motd
       uname -snrvm > /var/run/motd
       [ -f /etc/motd.tail ] && cat /etc/motd.tail >> /var/run/motd

Consulteu:

Recursos:

Fortune

Mostra una cita cada cop que s'inicia una sessió:

$ sudo apt-get install fortune-mod

Editeu el fitxer .bashrc

$ joe ~/.bashrc

I afegiu les següents línies:

if [ -x /usr/games/fortune ]; then
  /usr/games/fortune -s
fi

Colors a la terminal


Mostrar un missatge cada vegada que s'executa una terminal

Podeu modificar el fitxer ~/.bashrc

Vegeu també