Latest web development tutorials

Usuario de Linux y gestión de grupos de usuarios

Linux es un sistema operativo multiusuario multitarea de tiempo compartido, un usuario de utilizar los recursos del sistema, el administrador del sistema debe primero solicitar una cuenta, entonces la identidad de la cuenta en el sistema.

La cuenta del usuario por un lado, puede ayudar a los administradores del sistema a los usuarios que utilizan el sistema para rastrear y controlar su acceso a los recursos del sistema, por otra parte, también puede ayudar a los usuarios a organizar los archivos y proporcionar a los usuarios con la protección de seguridad.

Cada cuenta de usuario tiene un nombre de usuario y contraseña únicos para cada uno.

Los usuarios escriben el nombre de usuario y la contraseña correctos al iniciar la sesión, que pueden entrar en el sistema y su propio directorio personal.

Implementar la gestión de cuentas de usuario, hay trabajo por hacer, principalmente en los siguientes aspectos:

  • cuenta de usuario para agregar, eliminar y modificar.
  • la administración de contraseñas de usuario.
  • administración de usuarios.

Un sistema de gestión de cuenta de usuario de Linux

gestión de cuentas de usuario, principalmente relacionada con la cuenta de usuario para agregar, modificar y eliminar.

Adición de cuentas de usuario es crear una nueva cuenta en el sistema, y ​​luego asignar usuarios a un nuevo número de cuenta, grupo de usuarios, directorio principal y al acceso Shell y otros recursos. Sólo tiene que añadir la cuenta está bloqueada e inutilizable.

1. Añadir una nueva cuenta de usuario mediante el comando useradd, su sintaxis es la siguiente:

useradd 选项 用户名

Descripción de parámetros:

  • opciones:

    • comentario -c Especifica una descripción comentario.
    • -d directorio Especifica el directorio personal del usuario, si este directorio no existe, puede utilizar la opción -m, se puede crear un directorio de usuario.
    • -g grupo de usuarios especificar el grupo de usuarios al que pertenecen.
    • -G Grupo de usuarios, grupos de usuarios, especifique grupo adicional que pertenece el usuario.
    • -s fichero especifica Shell de inicio de sesión de un usuario de Shell.
    • -u usuario especifica el número de usuario número de usuario, si la opción -o, al mismo tiempo, se puede volver a utilizar otro número de identificación de usuario.
  • Nombre de usuario:

    Especifique el nuevo nombre de la cuenta de inicio de sesión.

Ejemplo 1

# useradd –d /usr/sam -m sam

Este comando crea un usuario sam, en el que la opción -d -m y se utiliza para generar un nombre de inicio de sesión en Inicio sam / usr / sam (/ usr para el directorio personal del usuario por defecto es el directorio padre).

Ejemplo 2

# useradd -s /bin/sh -g group –G adm,root gem

Este comando crea un usuario-joya, de inicio de sesión del usuario Shell es /bin/sh , pertenece al grupo de usuarios del grupo, pero también pertenecen a grupos de raíz y de usuario, grupo de usuarios adm qué grupo es el grupo principal.

Puede haber un grupo nuevo: #groupadd group及groupadd adm

Aumentar la cuenta de usuario que se encuentra en el archivo / etc / passwd para agregar un nuevo registro de usuario, actualizar otros archivos del sistema como / etc / shadow, / etc / group y similares.

Linux proporciona sistemas integrados de gestión de herramientas userconf, que puede ser utilizado para la gestión unificada de las cuentas de usuario.

3, eliminar la cuenta

Si una cuenta de usuario ya no se utiliza, puede ser eliminado del sistema. Para eliminar una cuenta de usuario es / etc / passwd del sistema de archivos y otros para eliminar el registro del usuario, si es necesario, retire el directorio personal del usuario.

Eliminar una cuenta de usuario existente mediante el userdel comando, su formato es el siguiente:

userdel 选项 用户名

opción común es -r, su función es eliminar el directorio personal del usuario junto.

Por ejemplo:

# userdel sam

Este comando elimina el usuario sam en un archivo de sistema (en su mayoría / etc / passwd, / etc / shadow, / etc / group, etc.) Registro, elimine el directorio personal del usuario.

4. Modificar cuenta

Modificar cuenta de usuario está a punto de cambiar los atributos de un usuario en función de la situación real, tales como el número de usuarios, directorios de usuarios, grupos de usuarios, iniciar sesión Shell y similares.

Modificar una información de usuario existente mediante el usermod comando, su formato es el siguiente:

usermod 选项 用户名

Las opciones comunes incluyen -c, -d, -m, -g, -G, -s, -u以及-o等 -G, -s, -u useradd -c, -d, -m, -g, -G, -s, -u以及-o等 , es decir, estas opciones con useradd opción de comando, puede especificar un nuevo valor para los usuarios de los recursos.

Además, algunos sistemas pueden utilizar las opciones: -l nombre de usuario nuevo

Esta opción especifica una nueva cuenta, lo hará el nombre de usuario original al nuevo nombre de usuario.

Por ejemplo:

# usermod -s /bin/ksh -d /home/z –g developer sam

Este comando establece la conexión del usuario Shell sam modificar ksh, el directorio / home / z, el grupo de usuarios a los desarrolladores.

5, la administración de contraseñas de usuario

Una parte importante de la gestión de usuarios es una gestión de contraseñas de usuario. No sólo para crear una contraseña de cuenta de usuario, pero el sistema está bloqueado, no se puede utilizar, se debe asignar una contraseña antes de poder utilizar incluso especificar una contraseña nula.

Especificar y modificar las contraseñas de usuario de comandos Shell es passwd . El superusuario puede especificar una contraseña para sí mismos y para otros usuarios, los usuarios normales sólo se pueden utilizar para modificar su propia contraseña. Formato del comando es:

passwd 选项 用户名

El uso opcional:

  • -l bloqueo con contraseña, lo que deshabilita la cuenta.
  • desbloqueo de contraseña -u.
  • -d habilitar la cuenta sin contraseña.
  • usuarios de la Fuerza -F para cambiar las contraseñas en el siguiente inicio de sesión.

Si el nombre de usuario predeterminado, a continuación, modificar la contraseña del usuario actual.

Por ejemplo, supongamos que el usuario actual es sam, a continuación, el siguiente comando para cambiar la contraseña del usuario:

$ passwd 
Old password:****** 
New password:******* 
Re-enter new password:*******

Si el super usuario, puede especificar la contraseña de cualquier usuario utilizando la siguiente forma:

# passwd sam 
New password:******* 
Re-enter new password:*******

Los usuarios normales para cambiar sus contraseñas cuando, comando passwd se compruebe la contraseña original, a continuación, comprobar que el usuario debe introducir una nueva contraseña dos veces, introduzca la contraseña dos veces si son compatibles, a continuación, especifique la contraseña para el usuario y la contraseña de superusuario para el usuario especificado cuando no se necesita conocer la contraseña original.

Para la seguridad del sistema, usted debe elegir contraseñas más complejas, por ejemplo, es preferible utilizar una contraseña de 8 bits, la contraseña contiene letras y números en mayúsculas y minúsculas, y debe nombrar, cumpleaños, etc., no son los mismos.

Cuando se especifica una contraseña vacía para un usuario, ejecute el comando siguiente en el formulario:

# passwd -d sam

Este comando eliminará la contraseña del usuario de Sam, para que el usuario sam próxima vez que se conecte, el sistema no le pedirá una contraseña.

comando passwd también puede bloquear con -l (bloqueo) una opción de usuario, no se puede iniciar sesión, como por ejemplo:

# passwd -l sam

En segundo lugar, el grupo de usuarios del sistema de gestión de Linux

Cada usuario dispone de un grupo de usuarios, un usuario del grupo de sistemas centralizados lata todos los usuarios de la administración. Diferentes sistemas Linux tienen diferentes grupos de usuarios de las disposiciones, como el usuario Linux es el grupo de usuarios con su homónimo, el grupo de usuarios se crean al mismo tiempo al crear el usuario.

Gestión de grupos de usuarios implica la adición del grupo de usuarios, borrar y modificar. Aumento en el grupo, de hecho, es eliminar y modificar las actualizaciones de los archivos / etc / group.

1, añadir un nuevo grupo de usuarios comando groupadd. Su formato es el siguiente:

groupadd 选项 用户组

Las opciones pueden ser utilizados son los siguientes:

  • -g GID Especifica el nuevo ID de grupo del grupo de usuarios (GID).
  • -o opción -g se utiliza generalmente de forma simultánea, lo que indica GID del nuevo grupo con el sistema de GID tiene el mismo grupo de usuarios.

Ejemplo 1:

# groupadd group1

Este comando agrega al sistema un nuevo grupo 1 grupo, se añade el grupo de la nueva ID de grupo a la base del máximo número de identificación de grupo disponible en la actualidad 1.

Ejemplo 2:

# groupadd -g 101 group2

Este comando para agregar al sistema un nuevo grupo 2 grupo, mientras que la especificación de un nuevo grupo de número de identificación del grupo es 101.

2, si desea eliminar un grupo de usuarios existentes, el uso de comandos groupdel en el siguiente formato:

groupdel 用户组

Por ejemplo:

# groupdel group1

Este comando para eliminar el grupo desde el grupo 1 del sistema.

3, modificar las propiedades de un comando de grupo de usuarios el uso groupmod. Su sintaxis es la siguiente:

groupmod 选项 用户组

las opciones más comunes son:

  • -g GID Especifica el nuevo ID de grupo para el grupo de usuarios.
  • -o opción -g y utilizar el nuevo grupo de usuarios del sistema GID con los mismos grupos de usuarios existentes GID.
  • -n nuevo grupo de usuarios se cambiará al nuevo nombre del nombre del grupo de usuarios

Ejemplo 1:

# groupmod -g 102 group2

Este número de identificación de grupo grupo2 grupo de mando cambia a 102.

Ejemplo 2:

# groupmod –g 10000 -n group3 group2

Este grupo de comandos número de identificación del grupo 2 a 10.000, y el nombre del grupo cambió a group3.

4, si un usuario pertenece a más de un grupo de usuarios, el usuario puede cambiar entre grupos de usuarios, con el fin de tener derechos de otros grupos de usuarios.

Los usuarios pueden iniciar la sesión, utilice el newgrp comando para cambiar a los otros grupos de usuarios, el parámetro de orden es el objeto del grupo de usuarios. Por ejemplo:

$ newgrp root

Este comando cambiará a la raíz de los grupos de usuarios actuales, con la condición de que el grupo de usuarios de la raíz es de hecho el grupo principal del usuario, o un grupo adicional. De manera similar a las herramientas de gestión de sistemas de gestión de cuentas de usuario, administración de usuarios también se pueden integrar.


En tercer lugar, la cuenta de usuario relacionados con los archivos del sistema

Completar el trabajo de gestión de usuarios Existen muchas maneras, pero cada método están de hecho relacionados con los archivos del sistema que se desea modificar.

Y el usuario y la información relacionada grupo se almacenan en algunos archivos del sistema, estos archivos incluyen / etc / passwd, / etc / shadow, / etc / group y similares.

A continuación se describe el contenido de estos archivos.

1, / etc / passwd es el usuario más importante de una gestión de documentos en cuestión.

sistema Linux, cada usuario tiene unas filas correspondientes en el archivo passwd / etc /, que registra los atributos básicos de los usuarios.

Este archivo es legible para todos los usuarios. Es similar al ejemplo siguiente:

# cat /etc/passwd

root:x:0:0:Superuser:/:
daemon:x:1:1:System daemons:/etc:
bin:x:2:2:Owner of system commands:/bin:
sys:x:3:3:Owner of system files:/usr/sys:
adm:x:4:4:System accounting:/usr/adm:
uucp:x:5:5:UUCP administrator:/usr/lib/uucp:
auth:x:7:21:Authentication administrator:/tcb/files/auth:
cron:x:9:16:Cron daemon:/usr/spool/cron:
listen:x:37:4:Network daemon:/usr/net/nls:
lp:x:71:18:Printer administrator:/usr/spool/lp:
sam:x:200:50:Sam san:/usr/sam:/bin/sh

En el ejemplo anterior podemos ver, / etc / passwd en una fila corresponde a un usuario, cada línea ha sido registrado por dos puntos (:) se separó en siete campos, formato y significados específicos son los siguientes:

用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell

1) "Nombre de usuario" es una cadena que representa la cuenta de usuario.

Por lo general no más de ocho caracteres y letras y / o números en mayúsculas y minúsculas. Nombre de acceso no puede contener dos puntos (:), porque aquí es los delimitadores de colon.

Por razones de compatibilidad, el nombre de usuario no debe contener un carácter de punto, y no utilizar un guión (.) (-) Y más (+) comienza.

2) "contraseña" algunos sistemas, el almacenamiento de contraseñas de usuario cifrada.

Aunque este campo se almacena en la cadena de contraseña encriptada, que no esté expresamente, pero debido al archivo / etc / passwd para todos los usuarios leer, por lo que este sigue siendo un riesgo para la seguridad. Así que ahora muchos sistemas Linux (como SVR4) tanto el uso de la técnica de la sombra, las contraseñas de usuario verdaderamente cifrado almacenado en el archivo / etc / shadow, y en el campo de la contraseña del archivo / etc / passwd sostiene solamente un especial caracteres, como "x" o "*".

3) "ID de usuario" es un número entero dentro del sistema para utilizarlo para identificar al usuario.

En circunstancias normales, es de uno a uno con el nombre de usuario. Si varios nombre de usuario correspondiente al número de identificación de usuario es el mismo que el sistema interno de los tratará como el mismo usuario, pero pueden tener diferentes contraseñas, diferentes directorios de inicio y de inicio de sesión diferente Shell y similares.

Número de identificación del usuario es por lo general en el rango de 0 a 65 de 535,0 número de identificación de superusuario root, de 1 a 99 están reservados por el sistema, como la gestión de cuenta, número de identificación de usuario común a partir de 100 arranques. En los sistemas Linux, este límite es de 500.

4) campo "ID de grupo" del registro es un grupo de usuarios que pertenece el usuario.

Corresponde al / registro del archivo / etc grupo.

5) "Descripción de los comentarios" campo registra la situación personal del usuario.

Por ejemplo el nombre del usuario real, teléfono, dirección, etc., en este campo y no hay ningún uso práctico. En diferentes sistemas Linux, el formato de este campo no está unificada. En muchos sistemas Linux, este campo se almacena en la sección de comentarios de cualquier texto de la descripción, se usa como comando finger salida.

6) "menú principal", que es el directorio inicial de trabajo del usuario.

Es el directorio donde el usuario después de entrar en el sistema. En la mayoría de los sistemas, el directorio inicial de cada usuario están organizados bajo un directorio en particular, y el nombre del directorio personal del usuario es el nombre de inicio de sesión del usuario. Cada usuario ha leído su propio directorio personal, escritura, ejecución (búsqueda) permiso para acceder a los directorios de otros usuarios se fijan en función de las circunstancias.

7) Después de que el usuario inicia sesión, para iniciar un proceso, el usuario es responsable de la operación pasa al núcleo, el proceso se ejecuta después de que los usuario inicia sesión en el intérprete de comandos del sistema o un programa en particular, a saber, Shell.

Shell es la interfaz entre el usuario y los sistemas Linux. Hay muchos Linux-Shell, cada uno con características diferentes. sh de uso común (Bourne Shell), csh (shell C), ksh (Korn Shell), tcsh (TENEX / TOPS-20 Tipo C Shell), Bash (Bourne Again Shell) y similares.

El administrador del sistema puede especificar un Shell para el usuario basado en los hábitos de sistema y de usuario. Si no se especifica una concha, a continuación, el sistema utiliza sh como el inicio de sesión predeterminado Shell, es decir, el campo es / bin / sh.

Iniciar sesión de usuario Shell también se puede especificar para un programa en particular (este programa no es un intérprete de comandos).

Al utilizar esta función, se puede restringir a los usuarios ejecutar aplicaciones específicas, después de la aplicación se está ejecutando, los usuarios se saldrá automáticamente del sistema. Algunos sistemas Linux requieren solamente los inscritos en el programa del sistema que aparezca en este campo.

8) El sistema tiene una clase de usuarios llamados pseudo-usuario (usuarios pseudo).

El usuario también tiene la / etc / passwd presentar un registro, pero no puede conectarse porque su entrada Shell está vacía. Existen principalmente para facilitar los procesos de gestión del sistema, del sistema para satisfacer los requisitos apropiados del propietario del archivo.

seudousuario común es el siguiente:

伪 用 户 含 义 
bin 拥有可执行的用户命令文件 
sys 拥有系统文件 
adm 拥有帐户文件 
uucp UUCP使用 
lp lp或lpd子系统使用 
nobody NFS使用

Tener un archivo de cuenta

1, excepto que seudousuario enumerados anteriormente, hay muchos pseudo-usuarios estándar, tales como: auditoría, cron, electrónico, Usenet, etc., que también son relevantes para los respectivos procesos y requisitos de documentación.

Dado que el archivo / etc / passwd es legible para todos los usuarios, si la contraseña de usuario es demasiado simple o palabras obvias de la ley, una computadora ordinaria puede romper fácilmente, por lo que los requisitos de seguridad del sistema Linux más alto contraseñas cifradas mirados separados, almacenados en un archivo separado, este archivo es / etc / shadow. No tienen privilegios de superusuario para leer este archivo, lo que garantiza la seguridad de la contraseña del usuario.

2, / etc / shadow en filas y etc / passwd en la correspondencia /, se genera automáticamente por los datos del comando pwconv / etc / passwd, según

Su formato de archivo y / etc / passwd similares, compuesto de varios campos, entre los campos con ":" separa. Estos campos son:

登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
  1. "Inicio de sesión" es consistente con el archivo / etc / passwd, cuenta de usuario nombre de usuario
  2. campo "Contraseña" se almacena en las contraseñas cifradas del usuario, una longitud de 13 caracteres. Si está vacío, el usuario correspondiente sin contraseña, sin contraseña de inicio de sesión, y si usted no pertenece al conjunto que contiene ./0-9A-Za-z {} caracteres, el usuario correspondiente no puede iniciar la sesión.
  3. "Última modificación" que es de un cierto tiempo, para que el usuario modifique el número de días de la contraseña por última vez. Hora de inicio para diferentes sistemas pueden ser diferentes. Por ejemplo, en el SCO Linux, el momento de empezar es 1 de enero de 1970.
  4. "Intervalo mínimo" se refiere al número mínimo de días requeridos entre los dos modificar la contraseña.
  5. "Intervalo de tiempo máximo" se refiere a la contraseña es válida el número máximo de días.
  6. campo "Tiempo de advertencia" indica el número de días desde el sistema comenzó a advertir a los usuarios una contraseña formal entre fallos.
  7. "Tiempo inactivo" significa es que el usuario no está conectado, pero la actividad de la cuenta permanece activa número máximo de días.
  8. campo "Tiempo muerto" es un número determinado de días absolutos, si se utiliza este campo, entonces se da el tiempo de vida de la contabilidad correspondiente. Después de la expiración de la cuenta ya no es una cuenta legítima, no se puede utilizar para iniciar sesión.

He aquí un ejemplo de / etc / sombra de:

# cat /etc/shadow

root:Dnakfw28zf38w:8764:0:168:7:::
daemon:*::0:0::::
bin:*::0:0::::
sys:*::0:0::::
adm:*::0:0::::
uucp:*::0:0::::
nuucp:*::0:0::::
auth:*::0:0::::
cron:*::0:0::::
listen:*::0:0::::
lp:*::0:0::::
sam:EkdiSECLWPdSa:9740:0:0::::

3, toda la información se almacena en el grupo de usuarios / archivo etc / grupo.

El grupo de usuarios es un sistema Linux medios para administrar los usuarios y controlar el acceso.

Cada usuario pertenece a un grupo de usuarios, un grupo puede tener varios usuarios, un usuario puede pertenecer a diferentes grupos.

Cuando un usuario es miembro de más de un grupo, el registro en el archivo / etc / passwd es el grupo primario que pertenece el usuario, que es el valor por defecto cuando se inicia una sesión en su grupo, mientras que el otro grupo se llama un grupo adicional.

Cuando el usuario quiere acceder a un fichero propiedad de grupos adicionales, primero debe utilizar el comando newgrp para convertirse a la que accederán los miembros del grupo.

Toda la información se almacena en el archivo etc grupo de grupo de usuarios / /. El formato de este archivo es también similar al archivo / etc / passwd, por dos puntos (:) separados por una serie de campos, que son:

组名:口令:组标识号:组内用户列表
  1. "Nombre del grupo" es el nombre del grupo, compuesto por letras o números. Y / etc / passwd nombres de usuario, nombres de grupo no han de repetirse.
  2. campo "Contraseña" se almacena en las contraseñas cifradas de grupos de usuarios. grupos de usuarios del sistema Linux en general no tienen una contraseña, que este campo suele estar vacío, o *.
  3. "ID de grupo" con el número de identificación de usuario similar, es un número entero, los sistemas internos utilizados para identificar grupos.
  4. "Los usuarios en la lista de grupos" es parte de una lista de todos los usuarios / b] este grupo, separados entre diferentes usuarios con una coma (,). Este grupo de usuarios puede ser el grupo principal del usuario, puede ser un grupo adicional.

/ Un ejemplo de archivo etc / group es el siguiente:

root::0:root
bin::2:root,bin
sys::3:root,uucp
adm::4:root,adm
daemon::5:root,daemon
lp::7:root,lp
users::20:root,sam

En cuarto lugar, la cantidad de usuarios de subvención

Añadir y eliminar usuarios en cada administradores de sistemas Linux son fáciles, más difícil es si desea agregar decenas, cientos o incluso miles de usuarios, es poco probable que utilice también useradd para agregar uno por uno, necesariamente en busca de una manera de crear un gran número de usuarios del método es simple. sistema Linux ofrece un gran número de usuarios para crear una herramienta que le permite crear un gran número de usuarios de forma inmediata, de la siguiente manera:

(1) para editar un archivo de texto de usuario.

Cada columna de acuerdo con /etc/passwd escrito en el formato del archivo de contraseñas, prestar atención a nombre de usuario de cada usuario, UID, no puede albergar el mismo directorio, que puede dejar el campo de contraseña en blanco o entre el número x. User.txt un archivo de ejemplo dice lo siguiente:

user001::600:100:user:/home/user001:/bin/bash
user002::601:100:user:/home/user002:/bin/bash
user003::602:100:user:/home/user003:/bin/bash
user004::603:100:user:/home/user004:/bin/bash
user005::604:100:user:/home/user005:/bin/bash
user006::605:100:user:/home/user006:/bin/bash

(2) Como root, ejecute el comando /usr/sbin/newusers , a partir de un archivo de usuario que acaba de crear user.txt importar datos, crear un usuario:

# newusers < user.txt

A continuación, puede ejecutar el comando vipw o vi /etc/passwd para comprobar /etc/passwd archivo ha sido la aparición de los datos de estos usuarios, y el directorio personal del usuario ha sido creado.

(3) Ejecutar / usr / sbin / pwunconv.

El /etc/shadow genera shadow contraseña decodificada y luego vuelve a escribir en el /etc/passwd , y el /etc/shadow de la shadow campo de contraseña eliminada. Esto es para facilitar la siguiente etapa del trabajo de transformación criptográfica, que es para cancelar la shadow password función.

# pwunconv

(4) para editar el archivo de control de la contraseña de cada usuario.

Los archivos de ejemplo passwd.txt es el siguiente:

user001:密码
user002:密码
user003:密码
user004:密码
user005:密码
user006:密码

(5) Ejecutar como root /usr/sbin/chpasswd .

Crear una contraseña de usuario, chpasswd pasará a través de /usr/bin/passwd contraseñas escritas de comando codificado /etc/passwd campo de contraseña.

# chpasswd < passwd.txt

(6) para determinar la contraseña etc campo de escritura / / passwd contraseña codificada después.

Ejecutar /usr/sbin/pwconv contraseña codificada como shadow password , y el resultado se escribe en /etc/shadow .

# pwconv

Esto completa la creación de un gran número de usuarios, después de lo cual se puede ir a comprobar los permisos en el directorio personal del usuario bajo / home ajustes son correctos, si, y verificar que la contraseña de inicio de sesión del usuario es correcta.