linux:users:start

Diferències

Ací es mostren les diferències entre la revisió seleccionada i la versió actual de la pàgina.

Enllaç a la visualització de la comparació

Ambdós costats versió prèvia Revisió prèvia
Següent revisió
Revisió prèvia
linux:users:start [06/09/2018 08:08] – [cambio de contraseña] matelinux:users:start [26/06/2023 03:15] (actual) – [cambio de contraseña] admin
Línia 2: Línia 2:
 ~~NOTOC~~ ~~NOTOC~~
 == información usuario == información usuario
-  * ''id <user>'' -> para saber datos y grupos del usuario +  * ''id <user>'' -> para saber datos y grupos del usuario 
-  * ''whoami'' -> nombre del usuario+  * ''whoami'' -> nombre del usuario 
 + 
 +== usuarios en línea 
 +  * ''who'' -> usuarios conectados - terminal 
 +  * ''ps -U <USER>'' -> procesos asociados a un usuario 
 +  * ''sudo pkill [-9] -u <USER>'' -> eliminar procesos asociados a un usuario. 
 +/via: [[https://www.simplified.guide/linux/user-force-logout]]
  
 == cambio de contraseña == cambio de contraseña
-  * ''passwd [<usuario>]'' -> cambiar contraseña propia o si tienes privilegios, la contraseña de otro usuario.+  * ''passwd [<USER>]'' -> cambiar contraseña propia o si tienes privilegios, la contraseña de otro usuario.
   * ''echo 1234 | passwd --stdin jordi'' (no funciona en Debian)   * ''echo 1234 | passwd --stdin jordi'' (no funciona en Debian)
   * ''echo "jordi:1234" | chpasswd'' (se puede añadir ''-m'' para que guarde la contraseña en formato MD5 en lugar de DES   * ''echo "jordi:1234" | chpasswd'' (se puede añadir ''-m'' para que guarde la contraseña en formato MD5 en lugar de DES
-  * forzar cambio de contraseña:<code bash>chage -d 0 luser</code> 
   * ''/etc/security/pwquality.conf'' : establece complejidad de las contraseñas a usar en el sistema   * ''/etc/security/pwquality.conf'' : establece complejidad de las contraseñas a usar en el sistema
 +=== chage (CHange AGE)
 +  * modificación datos, expiraciones, inactividad 
 +  * ''chage -l <USER>'':_ comprobar "estatus" cuenta.
 +  * ''chage -d 0 <USER>'' : forzar cambio de contraseña
 +    * ''passwd -e <USER>''
 +
 == grupos == grupos
-  * crear un grupo: ''groupadd <nombre_grupo>'' +  * ''groupadd <nombre_grupo>'' : crear un grupo 
-  * añadir nuevo usuario a otros grupos''$ useradd -<grupo> <usuario>'' +  * ''useradd -G <grupo> <usuario>''añadir nuevo usuario a otros grupos 
-  * añadir/cambiar el grupo principal de un usuario''$ useradd -<grupo> <usuario>'' +  * ''usermod -<grupo> <usuario>'' añadir/cambiar el grupo principal de un usuario 
-  * añadir un usuario existente a un grupo existente: ''usermod -a -G <grupo> <usuario>'' +  * ''usermod -a -G <grupo> <usuario>'' añadir un usuario existente a un grupo existente 
-  * añadir/cambiar el grupo principal de un usuario existente''$ usermod -g <grupo> <usuario>''+    * ''newgrp <grupo>''establece como principal el <grupo> de manera temporal, útil para no reinicar sesión y aplicar la pertenencia (según comando anterior) 
 +  * ''usermod -<grupo> <usuario>'' añadir/cambiar el grupo principal de un usuario existente 
 +  * ''deluser <usuario> <grupo>'' : elimina al usuario del grupo, no elimina ni al usuario ni al grupo
  
-== añadir usuario +== usuarios 
-  * ''useradd'' [-comentario] [-d home_dir] [-e yyyy-mm-dd] [-p password] usuario +=== adduser/useradd 
-<code> +<code bash>useradd --comment "comentario--home-dir /home/user --create-home --expiredate 2020-20-20 --uid 6666 --user-group --shell /bin/bash <USER></code>
-  -c comentario +
-  -d home_dir +
-  -e expire_date (yyy-mm-dd) -> caducidad de la cuenta +
-  -p password +
-  -G grupo -> añade a otro grupo o grupos al usuario (separados por comas) +
-  --> crea el home del usuario +
-</code> +
-  * <code bash> +
-sudo useradd newuser +
-sudo passwd newuser +
-sudo mkdir /home/newuser +
-sudo chown newuser /home/newuser +
-sudo chgrp newuser /home/newuser +
-sudo adduser vogella admin # permite al usuario ejecutar comandos sudo +
-</code>+
  
 +=== deluser
 +<code bash>userdel -r <USER></code>
  
-== modificar usuario +=== modificar 
-  * ''$ usermod <opcion> <usuario>'': cambia varios atributos de usuarios+  * cambia varios atributos de usuarios: <code>$ usermod <opcion> <usuario></code>
     * -s <shell> : cambia shell usuario     * -s <shell> : cambia shell usuario
     * -d -m <nueva ubicación> : cambia el directorio HOME y mueve el contenido     * -d -m <nueva ubicación> : cambia el directorio HOME y mueve el contenido
Línia 47: Línia 47:
     * -a -G <grupo>: añade un grupo a un usuario     * -a -G <grupo>: añade un grupo a un usuario
  
-== añadir grupo +== grupos 
-  * ''$ groupadd <nombre_grupo>'' : crear un grupo nuevo+=== crear 
 +  * grupo nuevo:<code bash>$ groupadd <nombre_grupo></code>
  
-== modificar grupo +=== modificar 
-  * ''$ groupmod <opción> <grupo>''+  * <code bash>$ groupmod <opción> <grupo></code>
     * -n <nombre> : cambia el nombre del grupo     * -n <nombre> : cambia el nombre del grupo
     * -g <GID> : cambia el GID del grupo     * -g <GID> : cambia el GID del grupo
  
-== notas +== /bin/nologin VS /bin/false 
-  * modificaciones en ''/etc/passwd'' para evitar login +<callout type="warning" title="nologin y false" icon="true">2019-11-14: haciendo un chroot el comportamiento ha sido al revés del explicado aquí abajo. /sbin/nologin no me deja SFTP ni SSH, /bin/false si me deja SFTP, no SSH</callout> 
-    * ''/sbin/nologin'' -> evitar que un usuario haga login por consola (le quedaría SFTP). Además muestra el mensaje ''/etc/nologin.txt'' cuando se intenta el acceso vía telnet/ssh +  * modificaciones en **/etc/passwd** para evitar login 
-    * ''/bin/false'' -> evitar el login total en el sistema (telnet/ssh/ftp). No da mensajes de error, símplemente cierra la conexión.+    * **/sbin/nologin**, **/usr/sbin/nologin** 
 +      * evitar que un usuario haga login por consola (le quedaría SFTP). 
 +      * Además muestra el mensaje **/etc/nologin.txt** cuando se intenta el acceso vía telnet/ssh 
 +      * Se considera una shell válida (aunque no lo es). Hay programas que exigen tener una shell válida (de FTP, p.e.) 
 +      * **/etc/shells/** <- shells válidas del sistema, no debe aparecer **nologin** para que funcione correctamente 
 +    * **/bin/false** 
 +      * evitar el login total en el sistema (telnet/ssh/ftp). 
 +      * No da mensajes de error, símplemente cierra la conexión. 
 +  * otras alternativas para evitar login: 
 +    * modificar el campo de la contraseña **/etc/passwd**, poniendo una admiración en su lugar (por convención) 
 +    * modificar el campo de la contraseña **/etc/shadow**, poniendo una admiración en su lugar (por convención) 
 +    * usar ''passwd -l <user>'' para bloquear (añade ! al hash en **/etc/shadow**) 
 +      * ''passwd -S <user>'': status (**L** locked) 
 +    * usar ''usermod --expiredate 1'' 
 + 
 +/via: https://www.enmimaquinafunciona.com/pregunta/312/-cual-es-la-diferencia-entre-el-sbinnologin-y-el-binfalso- 
 + 
 + 
 +/via: [[https://unix.stackexchange.com/questions/10852/whats-the-difference-between-sbin-nologin-and-bin-false]] 
 +<callout type="info" title="alernative" icon="true">https://github.com/mysecureshell/mysecureshell</callout> 
  • linux/users/start.1536246488.txt.gz
  • Darrera modificació: 06/09/2018 08:08
  • per mate