Latest web development tutorials

utente Linux e gestione gruppi di utenti

sistema Linux è un sistema operativo multi-utente multi-task time-sharing, un utente di utilizzare tutte le risorse di sistema, l'amministratore di sistema deve prima richiedere un account, quindi l'identità del conto nel sistema.

L'account dell'utente da un lato può aiutare gli amministratori di sistema per gli utenti che utilizzano il sistema per monitorare e controllare il loro accesso alle risorse di sistema, d'altra parte, può anche aiutare gli utenti a organizzare i file e di fornire agli utenti con protezione di sicurezza.

Ogni account utente dispone di un nome utente e una password univoci per ciascuno.

Gli utenti digitare il nome utente e la password corretti al momento del login, è possibile entrare nel sistema e la propria directory home.

Implementare la gestione degli account utente, lavoro da fare principalmente nei seguenti aspetti:

  • account utente di aggiungere, eliminare e modificare.
  • gestione delle password degli utenti.
  • gestione dei gruppi utente.

Un sistema di gestione degli account utente di Linux

gestione degli account utente riguardato principalmente l'account utente di aggiungere, modificare e cancellare.

L'aggiunta di account utente è quello di creare un nuovo account nel sistema, e quindi assegnare utenti a un nuovo numero di conto, gruppo di utenti, home directory e shell di login e altre risorse. Basta aggiungere l'account viene bloccato e inutilizzabile.

1. Aggiungere un nuovo account utente utilizzando il comando useradd, la sua sintassi è la seguente:

useradd 选项 用户名

Descrizione Parametro:

  • Opzioni:

    • commento -c Specifica una descrizione commento.
    • -d directory Specifica la directory home dell'utente, se questa directory non esiste, è possibile utilizzare l'opzione -m, è possibile creare una directory home.
    • -g gruppo di utenti di specificare il gruppo di utenti a cui appartengono.
    • -G Gruppo di utenti, gruppi di utenti, specificare ulteriore gruppo appartiene l'utente.
    • file di -s Shell specifica di login di un utente Shell.
    • -u utente specifica il numero utente numero utente, se l'opzione -o, allo stesso tempo, è possibile riutilizzare altro numero di identificazione dell'utente.
  • Nome utente:

    Specificare il nuovo nome di account di accesso.

esempio 1

# useradd –d /usr/sam -m sam

Questo comando crea un utente sam, in cui l'opzione -d e -m viene utilizzato per generare un nome di login sam home directory / usr / sam (/ usr per la directory home dell'utente predefinita è la directory principale).

esempio 2

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

Questo comando crea un utente-gioiello, di login dell'utente Shell è /bin/sh , appartiene al gruppo di utenti del gruppo, ma appartengono anche alla radice e utente adm gruppi, gruppo di utenti a quale gruppo è il gruppo principale.

Ci può essere un nuovo gruppo: #groupadd group及groupadd adm

Aumentare l'account utente è nel file / etc / passwd per aggiungere un nuovo record utente, aggiornare altri file di sistema come / etc / shadow, / etc / group e simili.

Linux fornisce sistemi integrati strumenti di gestione user conf, che può essere utilizzato per la gestione unificata degli account utente.

3, eliminare l'account

Se un account utente non è più utilizzato, può essere rimosso dal sistema. Per eliminare un account utente è / etc / passwd file di sistema e di altri per eliminare il record utente, se necessario, rimuovere la directory home dell'utente.

Eliminazione di un account utente esistente utilizzando il userdel di comando, il suo formato è il seguente:

userdel 选项 用户名

opzione comune è -r, il suo ruolo è quello di rimuovere la directory home dell'utente insieme.

Ad esempio:

# userdel sam

Questo comando rimuove l'utente sam in un file system (per lo più / etc / passwd, / etc / shadow, / etc / group, ecc) registrare, cancellare la directory home dell'utente.

4. Modifica Account

Modificare account utente è in procinto di cambiare gli attributi di un utente in base alla situazione reale, come ad esempio il numero di utenti, home directory, gruppi di utenti, accedere Shell e simili.

Modificare una informazione di utente esistente utilizzando il usermod di comando, il suo formato è il seguente:

usermod 选项 用户名

Le opzioni comuni includono -c, -d, -m, -g, -G, -s, -u以及-o等 -G, -s, -u useradd -c, -d, -m, -g, -G, -s, -u以及-o等 , il che significa queste opzioni con useradd opzione di comando, è possibile specificare un nuovo valore per gli utenti delle risorse.

Inoltre, alcuni sistemi possono utilizzare le opzioni: -l nuovo nome utente

Questa opzione specifica un nuovo account, sarà il nome utente originale per il nuovo nome utente.

Ad esempio:

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

Questo comando imposta di login dell'utente Shell sam modificare ksh, home directory / home / z, il gruppo di utenti di sviluppatore.

5, la gestione delle password utente

Una parte importante della gestione degli utenti è una gestione delle password degli utenti. Non solo per creare una password di account utente, ma il sistema è bloccato, non è possibile utilizzare, è necessario assegnare una password prima di poter utilizzare anche specificare una password nulla.

Specificare e modificare le password degli utenti comando Shell è passwd . Il superuser può specificare una password per se stessi e gli altri utenti, gli utenti ordinari possono utilizzare solo per modificare la propria password. Formato del comando è:

passwd 选项 用户名

uso facoltativo:

  • -l blocco della password, che disabilita l'account.
  • sbloccare la password -u.
  • -d abilitare l'account senza una password.
  • gli utenti Forza -f di modificare le password all'accesso successivo.

Se il nome utente predefinito, quindi modificare la password dell'utente corrente.

Ad esempio, si supponga che l'utente corrente è sam, poi il seguente comando per modificare la password dell'utente:

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

Se l'utente super, è possibile specificare la password di qualsiasi utente utilizzando il seguente modulo:

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

Gli utenti ordinari di modificare le password quando, comando passwd controllerà la password originale, quindi verificare che richiede agli utenti di inserire una nuova password due volte, inserire la password due volte se coerente, quindi specificare la password per l'utente e la password di superutente per l'utente specificato quando non è necessario conoscere la password originale.

Per la sicurezza del sistema, si dovrebbe scegliere password più complesse, per esempio, è preferibile utilizzare una password di 8-bit, la password contiene lettere e numeri maiuscole e minuscole, e deve il nome, data di nascita, ecc non sono gli stessi.

Quando si specifica una password vuota per un utente, eseguire il seguente comando nella forma:

# passwd -d sam

Questo comando cancellerà la password all'utente di Sam, in modo che l'utente sam prossima volta che si accede, il sistema non chiederà una password.

comando passwd può anche bloccare con -l (blocco) un'opzione di utente, non è possibile accedere, come ad esempio:

# passwd -l sam

In secondo luogo, il sistema di gestione gruppo di utenti Linux

Ogni utente dispone di un gruppo di utenti, un utente del gruppo di sistema possono tutti gli utenti centralizzate di gestione. Diversi sistemi Linux hanno diversi gruppi di utenti delle disposizioni, come ad esempio l'utente Linux è il gruppo di utenti con il suo omonimo, il gruppo di utenti viene creato allo stesso tempo, quando si crea l'utente.

gruppo di utenti di gestione comporta l'aggiunta al gruppo di utenti, cancellare e modificare. Aumento del gruppo, infatti, è quello di eliminare e modificare gli aggiornamenti dei file / etc / group.

1, aggiungere un nuovo gruppi di utenti di comando groupadd. Il suo formato è il seguente:

groupadd 选项 用户组

Le opzioni possono essere utilizzate sono:

  • -g GID Specifica il nuovo ID gruppo gruppo di utenti (GID).
  • -o opzione -g è generalmente utilizzato contemporaneamente, indicando GID del nuovo gruppo con il sistema GID ha lo stesso gruppo di utenti.

Esempio 1:

# groupadd group1

Questo comando aggiunge al sistema un nuovo group1 gruppo, viene aggiunto gruppo del nuovo gruppo ID alla base del gruppo massimo numero di identificazione attualmente disponibili 1.

Esempio 2:

# groupadd -g 101 group2

Questo comando per aggiungere al sistema un nuovo group2 gruppo, specificando un nuovo gruppo di numero di identificazione del gruppo è di 101.

2, se si desidera eliminare un gruppo di utenti esistente, utilizzare il comando groupdel nel seguente formato:

groupdel 用户组

Ad esempio:

# groupdel group1

Questo comando per rimuovere il gruppo dal group1 sistema.

3, modificare le proprietà di un comando utilizzo groupmod gruppo di utenti. La sua sintassi è la seguente:

groupmod 选项 用户组

opzioni comunemente usate sono:

  • -g GID Specifica il nuovo ID gruppo per il gruppo di utenti.
  • -o opzione -g e utilizzare il nuovo gruppo di utenti del sistema GID con gli stessi GID gruppi di utenti esistenti.
  • -n nuovo gruppo di utenti sarà cambiato con il nuovo nome del nome del gruppo di utenti

Esempio 1:

# groupmod -g 102 group2

Questo numero di identificazione del gruppo group2 gruppo di comando è cambiato a 102.

Esempio 2:

# groupmod –g 10000 -n group3 group2

Questo numero di identificazione group2 gruppo di comando a 10.000, e il nome del gruppo cambiato in Group3.

4, se un utente appartiene a più di un gruppo di utenti, l'utente può passare da gruppi di utenti, in modo da avere diritti di altri gruppi di utenti.

Gli utenti possono accedere, utilizzare il comando newgrp per passare agli altri gruppi di utenti, il parametro d'ordine è l'oggetto del gruppo di utenti. Ad esempio:

$ newgrp root

Questo comando passa alla radice dei gruppi di utenti attuali, con la condizione che il gruppo utente root è davvero gruppo primario dell'utente, o un gruppo aggiuntivo. Simile agli strumenti di gestione dei sistemi di gestione degli account utente, la gestione dei gruppi di utenti possono anche essere integrati.


In terzo luogo, i file di sistema l'account utente correlati

Opera completa gestione degli utenti Ci sono molti modi, ma ogni metodo sono infatti legate ai file di sistema da modificare.

E l'utente e le informazioni relative gruppo sono memorizzati in alcuni file di sistema, questi file includono / etc / passwd, / etc / shadow, / etc / group e simili.

Quanto segue descrive il contenuto di questi file.

1, file / etc / passwd è l'utente più importante di una gestione dei documenti in questione.

sistema Linux, ogni utente ha un corrispondente righe nel file / etc / passwd, che registra gli attributi di base di utenti.

Questo file è leggibile per tutti gli utenti. È simile al seguente esempio:

# 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

Dall'esempio sopra possiamo vedere, / etc / passwd in una riga corrisponde a un utente, ogni linea è stato registrato da due punti (:) separati in sette campi, formato e significati specifici sono i seguenti:

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

1) "Nome utente" è una stringa che rappresenta l'account utente.

Di solito non più di otto caratteri e lettere e / o numeri maiuscoli e minuscoli. Nome di accesso non può contenere due punti (:), perché qui è i delimitatori del colon.

Per ragioni di compatibilità, il nome di login non deve contenere un carattere punto, e non utilizzare un trattino (.) (-) E più (+) comincia.

2) "Password" alcuni sistemi, la memorizzazione delle password utente crittografata.

Anche se questo campo è memorizzato nella stringa password cifrata, non espressamente, ma a causa di file / etc / passwd per tutti gli utenti di leggere, quindi questo è ancora un rischio per la sicurezza. Così ora molti sistemi Linux (come SVR4) entrambi utilizzano la tecnica di ombra, le password degli utenti veramente crittografati memorizzati nel file / etc / shadow, e nel campo della password del file / etc / passwd detiene solo uno speciale caratteri, come "x" o "*".

3) "User ID" è un numero intero all'interno del sistema di usarlo per identificare l'utente.

In circostanze normali, è uno ad uno con il nome utente. Se più nome utente corrispondente al numero di identificazione utente è la stessa del sistema interno li trattano come lo stesso utente, ma possono avere password diverse, diversi home directory e diversi login Shell e simili.

numero di identificazione dell'utente è di solito nel range di 0-65 535,0 numero di identificazione superutente root, da 1 a 99 sono riservati dal sistema, come la gestione degli account, il numero di identificazione utente comune da 100 avviamenti. Sui sistemi Linux, questo limite è di 500.

4) campo "ID gruppo" del record è un gruppo di utenti appartiene l'utente.

Esso corrisponde al record del file / etc / group.

5) "Commenti Descrizione" campo registra situazione personale dell'utente.

Ad esempio nome reale dell'utente, telefono, indirizzo, ecc, in questo settore e non vi è alcuna utilità pratica. In diverso sistema Linux, il formato di questo campo non è unificata. In molti sistemi Linux, questo campo è memorizzato nella sezione commenti di qualsiasi testo descrizione, viene utilizzato come comando finger uscita.

6) "menu principale", che è la directory di lavoro iniziale dell'utente.

E 'la directory in cui l'utente dopo l'accesso al sistema. Nella maggior parte dei sistemi, la directory home di ogni utente sono organizzati in una particolare directory, e il nome della directory home dell'utente è il nome di login dell'utente. Ogni utente ha la propria home directory di lettura, scrittura permesso di esecuzione (ricerca) per accedere alle directory di altri utenti sono impostati a seconda delle circostanze.

7) Dopo che l'utente accede, per avviare un processo, l'utente è responsabile del funzionamento passato al kernel, il processo viene eseguito dopo che l'utente accede al comando di sistema interprete o un programma particolare, vale a dire Shell.

Shell è l'interfaccia tra i sistemi Linux utente e. Ci sono molti Linux-Shell, ciascuno con caratteristiche diverse. sh comunemente usato (Bourne Shell), csh (C Shell), ksh (Korn Shell), tcsh (TENEX / TOPS-20 di tipo C Shell), bash (Bourne Again Shell) e simili.

L'amministratore di sistema può specificare una shell per l'utente in base al sistema e utente abitudini. Se non si specifica una shell, allora il sistema utilizza sh come l'accesso predefinito Shell, cioè, il campo è / bin / sh.

Login utente Shell può anche essere specificato per un particolare programma (questo programma non è un interprete di comandi).

Utilizzando questa funzione, siamo in grado di limitare gli utenti a eseguire le applicazioni specifiche, dopo l'applicazione è in esecuzione, gli utenti potranno uscire automaticamente il sistema. Alcuni sistemi Linux richiedono solo quelli registrati nel programma di sistema ad apparire in questo campo.

8) sistema ha una classe di utenti chiamati pseudo-utente (utenti pseudo).

L'utente ha anche la / etc / passwd file di un record, ma non può accedere perché il loro accesso Shell è vuoto. Esistono principalmente a facilitare i processi di gestione del sistema, sistema per soddisfare i requisiti del caso del proprietario del file.

Common pseudo-utente è il seguente:

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

Hai un file di account

1, tranne che pseudo-utente elencato sopra, ci sono molti pseudo-utenti standard, come ad esempio: controllo, cron, elettronica, download, ecc, che sono rilevanti per i rispettivi processi e requisiti di documentazione anche.

Dal momento che il file / etc / passwd è leggibile per tutti gli utenti, se la password dell'utente è troppo semplice o ovvie parole della legge, un normale computer può facilmente rompere, in modo che il sistema di requisiti di sicurezza più elevato Linux regarded password criptate separati, memorizzata in un file separato, questo file è il file / etc / shadow. Ci sono i privilegi di superutente per leggere questo file, che garantisce la sicurezza della password dell'utente.

2, / etc / shadow in righe e etc / passwd nella corrispondenza /, viene generato automaticamente dal dati di comando pwconv / etc / passwd, in base alle

Il suo formato di file e / etc passwd / simile, costituito da diversi campi, tra i campi con ":" separato. Questi campi sono:

登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
  1. "Login" è coerente con il file / etc / passwd, account utente nome di login
  2. campo "password" è memorizzato nella password utente criptate, una lunghezza di 13 caratteri. Se vuoto, l'utente corrispondente senza password, nessuna password di login, se non si appartiene al set che contiene {} ./0-9A-Za-z caratteri, l'utente corrispondente non può accedere.
  3. "Modificato", cioè da un certo tempo, all'utente di modificare il numero di giorni della password ultima volta. Ora di inizio per i diversi sistemi possono essere diversi. Per esempio, in SCO Linux, il tempo per iniziare è 1 gennaio 1970.
  4. "Intervallo minimo" si riferisce al numero minimo di giorni necessari tra i due modificare la password.
  5. "Intervallo di tempo massimo" si riferisce alla password è valida il numero massimo di giorni.
  6. "Attenzione Time" campo indica il numero di giorni dal sistema ha cominciato di avviso agli utenti di una password formale tra i guasti.
  7. "Tempo inattivo" significa che l'utente non è connesso, ma l'attività account rimane attivo numero massimo di giorni.
  8. campo "tempo morto" è un dato numero di giorni in assoluto, se si utilizza questo campo, allora si dà la durata della corrispondente contabilità. Dopo la scadenza del conto non è più un account valido, esso non può essere utilizzato per accedere.

Ecco un esempio / etc / shadow di:

# 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, tutte le informazioni sono memorizzate nel gruppo di utenti file / etc / group.

Il gruppo di utenti è un sistema Linux mezzi per gestire gli utenti e controllare l'accesso.

Ogni utente appartiene a un gruppo di utenti, un gruppo può avere più utenti, un utente può appartenere a gruppi diversi.

Quando un utente è membro di più di un gruppo, il record nel file / etc / passwd è il gruppo primario di appartenenza dell'utente, che è l'impostazione predefinita quando si accede al gruppo, mentre l'altro gruppo è chiamato un ulteriore gruppo.

Quando l'utente vuole accedere a un file appartenenti a gruppi aggiuntivi, è necessario utilizzare il comando newgrp per diventare per essere accessibile da membri del gruppo.

Tutte le informazioni sono memorizzate nel file / gruppo di utenti etc / group. Il formato di questo file è anche simile al file / etc / passwd, da due punti (:) separati da un certo numero di settori, che sono:

组名:口令:组标识号:组内用户列表
  1. "Nome gruppo" è il nome del gruppo, composto da lettere o numeri. E / etc / passwd nomi di accesso, i nomi dei gruppi non deve essere ripetuto.
  2. campo "Password" viene immagazzinata nelle password di gruppo utente criptate. Linux gruppi di utenti del sistema in genere non hanno una password, che questo campo di solito è vuoto, o *.
  3. "ID gruppo" con il numero di identificazione utente simile, è un numero intero, i sistemi interni utilizzati per identificare gruppi.
  4. "Gli utenti della lista del gruppo" fa parte di una lista di tutti gli utenti / b] questo gruppo, separati tra diversi utenti con una virgola (,). Questo gruppo di utenti può essere gruppo primario dell'utente, può essere un ulteriore gruppo.

/ Un esempio di file etc / group è il seguente:

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

In quarto luogo, il numero di utenti grant

Aggiungere ed eliminare utenti in ogni amministratori di sistema Linux sono facili, più difficile è se si desidera aggiungere decine, centinaia o addirittura migliaia di utenti, è improbabile utilizzare anche useradd per aggiungere uno per uno, necessariamente alla ricerca di un modo per creare un gran numero di utenti del metodo è semplice. Sistema Linux fornisce un gran numero di utenti di creare uno strumento che consente di creare un gran numero di utenti immediatamente, come segue:

(1) per modificare un utente file di testo.

Ogni colonna in base alla /etc/passwd scritto nel formato del file delle password, prestare attenzione al nome utente di ciascun utente, UID, non possono ospitare nella stessa directory, che può lasciare il campo password vuoto o inserire il numero x. User.txt un file di esempio si legge quanto segue:

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) Come root, eseguire il comando /usr/sbin/newusers , da un file utente appena creato user.txt importare dati, creare un utente:

# newusers < user.txt

È quindi possibile eseguire il comando vipw o vi /etc/passwd per controllare /etc/passwd file è stato l'emergere di dati di questi utenti, e la directory home dell'utente è stato creato.

(3) Eseguire / usr / sbin / pwunconv.

Il /etc/shadow generato shadow la password decodificato e poi scritto di nuovo al /etc/passwd , e /etc/shadow del shadow campo password cancellato. Questo per facilitare la fase successiva del lavoro trasformazione crittografica, che è quello di annullare la shadow password funzionalità.

# pwunconv

(4) per modificare file di controllo della password di ciascun utente.

File di esempio passwd.txt recita come segue:

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

(5) Eseguire come root /usr/sbin/chpasswd .

Creare una password utente, chpasswd passerà attraverso /usr/bin/passwd comando codificato password scritte /etc/passwd campo password.

# chpasswd < passwd.txt

(6) per determinare la password codificata di scrittura / etc / passwd campo password in seguito.

Eseguire /usr/sbin/pwconv password codificata come shadow password , e il risultato viene scritto /etc/shadow .

# pwconv

Questo completa la creazione di un gran numero di utenti, dopo di che si può andare a verificare le autorizzazioni sulla directory home dell'utente sotto / impostazioni di casa sono corrette se, e verificare che la password di login utente sia corretto.