miércoles, 10 de febrero de 2016

LINUX-CENTOS-LAB-ejercicios comando usermod.

Cualquier modificación que se realiza con el comando usermod, está realizando modificaciones a los siguientes archivos:

/etc/passwd – User account information.
/etc/shadow – Secure account information.
/etc/group – Group account information.
/etc/gshadow – Secure group account information.
/etc/login.defs – Shadow password suite configuration..



modificar usuario cambiando el directorio home moviendo y sus archivos al nuevo directorio

Configuración actual
[root@localhost ~]# grep userest4 /etc/passwd
userest4:x:508:1003::/home/userest4:/bin/bash
[root@localhost ~]# ls -ltr /home/userest4
total 0
-rw-rw-r--. 1 userest4 userest4 0 feb 10 16:31 myarchive.txt
[root@localhost ~]# 

Asignando un nuevo directorio "home" y moviendo sus archivos al nuevo "home"

[root@localhost ~]# /usr/sbin/usermod -d /userdata/userest4 -m userest4

comprobar el cambio de directorio y sus archivos
[root@localhost ~]# grep userest4 /etc/passwd
userest4:x:508:1003::/userdata/userest4:/bin/bash
[root@localhost ~]# ls -ltr /userdata/userest4
total 0
-rw-rw-r--. 1 userest4 userest4 0 feb 10 16:31 myarchive.txt

comprobar que el antiguo directorio "home" ya no existe.
[root@localhost ~]# ls -ltr /home/userest4
ls: cannot access /home/userest4: No such file or directory
[root@localhost ~]# 

NOTA: el usuario no debe estar conectado. De lo contrario aparece este mensaje:
[root@localhost ~]# /usr/sbin/usermod -d /userdata/userest4 -m userest4
usermod: user userest4 is currently used by process 2522
[root@localhost ~]# 


Modificar usuario bloqueando el acceso a shell (/sbin/nologin)
para evitar el acceso a login se puede cambiar el bash por nologin. De esta forma el acceso via telnet o ssh es rechazado por el sistema

[root@localhost ~]# cat /etc/passwd | grep user106
user106:x:1006:1010::/home/user106:/bin/bash

[root@localhost ~]# /sbin/usermod -s /sbin/nologin user106

[root@localhost ~]# cat /etc/passwd | grep user106
user106:x:1006:1010::/home/user106:/sbin/nologin
[root@localhost ~]# 


Modificar usuario bloqueando el acceso. (lock User)

[root@localhost ~]# /usr/sbin/usermod -L userest4

verificar en shadow el bloqueo de la contraseña (antepone el signo de exclamación "!" en el campo de la passwd)
[root@localhost ~]# grep --color "userest4" /etc/shadow
userest4:!$6$BfT6WGBS$J/50aQMc4UMsMr/eqpOrQ9q1GCPdJU/V13O9J/VBKmtVGR3HTjFjXMpusWmRq5ip3CnYCq//kDAa3gWMc1ZEX.:16841:0:99999:7:::
[root@localhost ~]# 

intento fallido de login remoto
[gcepeda@santorini ~]$ ssh -l userest4 192.168.56.103
userest4@192.168.56.103's password: 
Permission denied, please try again.


Modificar usuario Desbloqueando el acceso. (Unlock User)

[root@localhost ~]# /usr/sbin/usermod -U userest4

Varificar  (quita el signo de exclamación "!" en el campo de la passwd)
[root@localhost ~]# grep --color "userest4" /etc/shadow
userest4:$6$BfT6WGBS$J/50aQMc4UMsMr/eqpOrQ9q1GCPdJU/V13O9J/VBKmtVGR3HTjFjXMpusWmRq5ip3CnYCq//kDAa3gWMc1ZEX.:16841:0:99999:7:::
[root@localhost ~]# 

intento exitoso de login remoto
[gcepeda@santorini ~]$ ssh -l userest4 192.168.56.103
userest4@192.168.56.103's password: 
Last failed login: Wed Feb 10 17:09:32 CLT 2016 from 192.168.56.1 on ssh:notty
There were 2 failed login attempts since the last successful login.
Last login: Wed Feb 10 17:09:06 2016
[userest4@localhost ~]$ 


Modificar usuario cambiando la fecha expiración de la cuenta. 


Obtener la configuración actual del usuario
[root@localhost ~]# chage -l userest4
Last password change : feb 10, 2016
Password expires : never
Password inactive : never
Account expires : never
Minimum number of days between password change : 0
Maximum number of days between password change : 99999
Number of days of warning before password expires : 7
[root@localhost ~]# 

setear la ecpiración de la cuenta para una fecha específica.
[root@localhost ~]# /usr/sbin/usermod -e 2016-02-11 userest4

Verificar 
[root@localhost ~]# chage -l userest4
Last password change : feb 10, 2016
Password expires : never
Password inactive : never
Account expires : feb 11, 2016
Minimum number of days between password change : 0
Maximum number of days between password change : 99999
Number of days of warning before password expires : 7
[root@localhost ~]# 

Expirar la password de la cuenta.

Este comando obliga al usuario a cambiar su passwd al proximo intento de login.
[root@localhost ~]# /usr/bin/passwd -e userest4

Expiring password for user userest4.

passwd: Success

[root@localhost ~]# 


Intento de login, solicita cambio de passwd.
[gcepeda@santorini ~]$ ssh -l userest4 192.168.56.103
userest4@192.168.56.103's password: 
You are required to change your password immediately (root enforced)
Last login: Wed Feb 10 17:46:20 2016 from 192.168.56.1
WARNING: Your password has expired.
You must change your password now and login again!
Changing password for user userest4.
Changing password for userest4.
(current) UNIX password: 


Modificar usuario cambiando los su grupo principal y el resto de los grupos

Para cambiar al grupo principal: -g
Para anexar al resto de los grupos: -G

Verificar los grupos actualmente. 
[root@localhost ~]# tail -5 /etc/group
webadmin:x:1001:copito,userest5
userest:x:1002:userest5
userest4:x:1003:
userest5:x:1004:
userest6:x:1005:
[root@localhost ~]# 

Verificar configuración del usuario
[root@localhost ~]# id userest4
uid=508(userest4) gid=1003(userest4) groups=1003(userest4)
[root@localhost ~]# 

Se va a cambiar el grupo principal al 1001(webadmin) y se anexan los grupos secundarios userest,userest4,userest5,userest6 userest4
Ejecutar modificaciones:
[root@localhost ~]# /usr/sbin/usermod -g 1001 -G userest,userest4,userest5,userest6 userest4

Verificar resultado
[root@localhost ~]# id userest4
uid=508(userest4) gid=1001(webadmin) groups=1001(webadmin),1002(userest),1003(userest4),1004(userest5),1005(userest6)
[root@localhost ~]# 

Fuente:

http://www.tecmint.com/usermod-command-examples/
http://www.cyberciti.biz/tips/howto-linux-shell-restricting-access.html

No hay comentarios:

Publicar un comentario