Gestión de usuarios y grupos
Enlace a: Usuarios y grupos en red Lechuga
https://wiki.archlinux.org/index.php/users_and_groups
Gestión de usuarios
Usuario estandar, con home y shelluseradd --create-home [LOGIN] --uid [UID] --gid [GID o NOMBRE]
Usuario para un servicio o control de acceso, sin home ni shelladduser --disabled-login --no-create-home [LOGIN] --uid [UID] --gid [GID o NOMBRE]
El hecho de que no pueda hacer login se define por una exclamación en el campo de contraseña del archivo /etc/shadow
Ejemplo de usuario para un servicio, sin derecho a loginnube_lechuga:x:1006:1006:Servicio de nube o compartidos:/home/nube_lechuga:/usr/bin/nologin
Cambiar clave a un usuariopasswd [options] [LOGIN]
Eliminar un usuario del sistema y su homeuserdel --remove [LOGIN]
Cambiar el uid de un usuariousermod -u <NEWUID> <LOGIN>
Cambiar el nombre de usuariousermod -l login-name old-name
Gestión de grupos
Añadir un usuario al grupogpasswd --add [user] [group]newgrp
Eliminar un usuario del grupogpasswd --delete [user] [group]
Crear un grupogroupadd --gid [GID] [group]
Cambiar el gid de un grupogroupmod -g <NEWGID> <GROUP>
A qué grupos pertenece un usuariogroups <usuario>
Copiar usuarios de un host a otro
el servidor srv.lechuga.eu es la madre de todos los usuarios y pertenencias a grupos
Generar archivos para añadir usuarios y grupos
TODO: Meter en srv un comentario a todos los uaurios con UID > 1000, para que se exporte bien
ejecutar en srv el siguiente script
# Generamos usuarios y sus 'comments'
cat /etc/passwd | awk -F ':' '$3 > 1000 {print "useradd --no-create-home "$1" --uid "$3" --shell "$7" --home "$6" --comment \"Usuarios añadido por script\""}' > /mnt/intercambio-lechuga/genera_usuarios.sh
cat /etc/passwd | awk -F ':' '$3 > 1000 && $5 != "" {print "usermod "$1" --comment \""$5"\""}' >> /mnt/intercambio-lechuga/genera_usuarios.sh
chmod 770 /mnt/intercambio-lechuga/genera_usuarios.sh
# para crear los grupos:
cat /etc/group | awk -F ':' '$3 > 1000 {print "groupadd --gid "$3" "$1}' > /mnt/intercambio-lechuga/genera_grupos.sh
chmod 770 /mnt/intercambio-lechuga/genera_grupos.sh
# para generar las membresias
cat /etc/group | awk -F ':' '$3 > 1000 && $4 != "" {print "gpasswd --members "$4" "$1}' > /mnt/intercambio-lechuga/genera_membresias.sh
chmod 770 /mnt/intercambio-lechuga/genera_membresias.sh
Luego, en el host de destino, ejecutar:
wget -O genera_usuarios.sh https://srv-internet.lechuga.eu:4430/nubes/intercambio-lechuga/ficheros/genera_usuarios.sh --user=intercambio-lechuga --ask-password
chmod u+x genera_usuarios.sh
wget -O genera_grupos.sh https://srv-internet.lechuga.eu:4430/nubes/intercambio-lechuga/ficheros/genera_grupos.sh --user=intercambio-lechuga --ask-password
chmod u+x genera_grupos.sh
wget -O genera_membresias.sh https://srv-internet.lechuga.eu:4430/nubes/intercambio-lechuga/ficheros/genera_membresias.sh --user=intercambio-lechuga --ask-password
chmod u+x genera_membresias.sh