Rimuovere un utente su Linux implica più di quanto pensi. Se sei un amministratore di sistema, vorrai cancellare tutte le tracce dell'account e il suo accesso dai loro sistemi. Ti mostriamo i passaggi da seguire.
Se vuoi solo eliminare un account utente dal tuo sistema e non sei preoccupato di terminare le procedure in esecuzione e altre attività di pulizia, segui i passaggi nella sezione “Cancellazione dell'account utente” prossimo. Avrai bisogno di deluser
comando su distribuzioni supportate da Debian e il userdel
comando su altre distribuzioni Linux.
Account utente in Linux
Dal I primi sistemi di multiproprietà sono comparsi all'inizio degli anni '90. 1960. e ha portato con sé la possibilità per più utenti di lavorare su un singolo computer, c'è stata la necessità di isolare e compartimentare i file e i dati di ciascun utente da tutti gli altri utenti. E account utente …e password-Nato.
Gli account utente hanno un sovraccarico amministrativo. Dovrebbero essere creati quando l'utente deve prima accedere al computer. Dovrebbero essere rimossi quando tale accesso non è più necessario. En Linux, c'è una sequenza di passaggi che devono essere seguiti per cancellare correttamente e metodicamente l'utente, i tuoi file e il tuo account del computer.
Se sei l'amministratore di sistema, che la responsabilità ricade su di te. Ecco come farlo.
Il nostro palcoscenico
Esistono diversi motivi per cui potrebbe essere necessario eliminare un account. Un membro del personale può passare a un altro team o lasciare completamente l'azienda. L'account potrebbe essere stato impostato per una collaborazione a breve termine con un visitatore di un'altra azienda. I team di lavoro sono comuni nell'accademia, dove i progetti di ricerca possono estendersi ai dipartimenti, diverse università e persino enti commerciali. Alla fine del progetto, l'amministratore di sistema dovrebbe ripulire ed eliminare gli account non necessari.
Il caso peggiore è quando qualcuno va sotto le nuvole a causa di un reato minore. Tali eventi di solito accadono all'improvviso, con poco preavviso. Ciò dà all'amministratore di sistema pochissimo tempo per pianificare e l'urgenza di bloccare, chiudi ed elimina l'account, con una copia dei file utente di cui è stato eseguito il backup nel caso siano necessari per eventuali analisi forensi successive all'arresto.
Sul nostro palco, fingiamo che un utente, Eric, ha fatto qualcosa che giustifica l'immediato allontanamento dai locali. In questo momento non se ne rende conto, ancora funzionante ed effettuato l'accesso. Appena si dà sicurezza il via libera, ti accompagneranno fuori dall'edificio.
È tutto pronto. Tutti gli occhi sono su di te.
Controlla il login
Vediamo se sei veramente loggato e, se è, con quante sessioni stai lavorando. il who
comando elencherà le sessioni attive.
chi
Eric ha effettuato l'accesso una volta. Vediamo quali processi stai eseguendo.
Revisione dei processi utente
Possiamo usare il ps
comando a elenca i processi che questo utente sta eseguendo. il -u
L'opzione (Nome utente) ci permette di dire ps
per limitare il suo output ai processi in esecuzione sotto la proprietà di quell'account utente.
ps -u eric
Possiamo vedere gli stessi processi con più informazioni usando il top
comando. top
ha anche un -U
(Nome utente) opzione per limitare l'output ai processi di proprietà di un singolo utente. Si noti che questa volta è a “tu” lettera maiuscola.
in alto -U eric
Possiamo vedere la memoria e l'utilizzo della CPU di ogni attività, e possiamo cercare rapidamente qualsiasi cosa con attività sospette. Stiamo per uccidere con la forza tutti i tuoi processi, quindi è più sicuro prendersi un momento per rivedere rapidamente i processi e verificare e assicurarsi che altri utenti non subiscano inconvenienti quando si annulla l'account utente. eric
Processi di.
Non mi sembra di fare molto, sta solo usando less
per visualizzare un file. siamo sicuri di continuare. Ma prima di uccidere i tuoi processi, bloccheremo l'account bloccando la password.
IMPARENTATO: Come usare il comando ps per monitorare i processi Linux
Blocca l'account
Bloccheremo l'account prima di uccidere i processi perché quando uccidiamo i processi chiuderà la sessione dell'utente. Se cambiamo già la tua password, non potrai più accedere.
Le password utente crittografate sono memorizzate nel /etc/shadow
procedimento. Non ti preoccuperesti regolarmente di questi passaggi successivi, ma così puoi vedere cosa succede nel /etc/shadow
file quando si blocca l'account, faremo una piccola deviazione. Possiamo usare il seguente comando per guardare i primi due campi dell'input per il eric
account utente.
sudo awk -F: '/erico/ {Stampa $1,$2}' /etc/shadow
Il comando awk analizza i campi da file di testo e facoltativamente li manipola. Stiamo usando il -F
(separatore di campo) possibilità di dire awk
quel file usa i due punti ” :
”Separare i campi. Troviamo una linea con lo schema "eric". Per le linee corrispondenti, stamperemo il primo e il secondo campo. Questi sono il nome dell'account e la password crittografata.
La voce per l'account utente eric viene stampata per noi.
Per bloccare l'account usiamo il passwd
comando. Useremo il -l
(blocco) opzione e passa il nome dell'account utente per bloccare.
sudo passwd -l eric
Se controlliamo il /etc/passwd
file di nuovo, vedremo cosa è successo.
sudo awk -F: '/erico/ {Stampa $1,$2}' /etc/shadow
È stato aggiunto un punto esclamativo all'inizio della password crittografata. Non sovrascrivere il primo carattere, viene aggiunto solo all'inizio della password. È tutto ciò che serve per impedire a un utente di accedere a quell'account.
Ora che abbiamo impedito all'utente di accedere nuovamente, possiamo eliminare i tuoi processi e chiudere la sessione.
Uccidi i processi
Esistono diverse alternative per uccidere i processi di un utente, ma il comando mostrato qui è ampiamente disponibile ed è un'implementazione più moderna di alcune delle alternative. il pkill
il comando troverà e ucciderà i processi. Abbiamo superato il segno KILL e abbiamo usato il -u
opzione (Nome utente).
sudo pkill -KILL -u eric
Tornerà al prompt dei comandi in maniera decisamente anticlimatica. Per essere sicuro che succedesse qualcosa, ripassiamo who
ancora:
chi
La tua sessione è andata. È stato disconnesso e i suoi processi si sono fermati. Ciò ha tolto un po' dell'urgenza alla situazione.. Ora possiamo rilassarci un po' e continuare con il resto delle pulizie mentre il personale di sicurezza si avvicina alla scrivania di Eric..
IMPARENTATO: Come uccidere i processi dal terminale Linux
Archivia la directory home dell'utente
Non è escluso che in uno scenario come questo, l'accesso ai file utente sarà richiesto in futuro. O come parte di un'indagine o semplicemente perché il tuo sostituto potrebbe dover fare riferimento al lavoro del tuo predecessore. Useremo il tar
comando per archiviare l'intera directory home.
Le alternative che stiamo usando sono:
- C: Crea un file di archivio.
- F: Usa il nome file specificato per il nome file.
- J: Usa la compressione bzip2.
- v: Fornisce un output dettagliato durante la creazione del file.
sudo tar cfjv eric-20200820.tar.bz /home/eric
Una grande quantità di output dello schermo scorrerà nella finestra del terminale. Per verificare che il file sia stato creato, Utilizzare il ls
comando. Stiamo usando il -l
(formato lungo) e -h
opzioni (leggibile dagli umani).
ls -lh eric-20200802.tar.bz
Un file di 722 MB. Questo può essere copiato in un luogo sicuro per una revisione successiva..
Rimuovi lavori cron
Faremmo meglio a controllare nel caso ce ne fossero cron
lavori pianificati per l'account utente eric
. UN cron
il lavoro è un comando che viene attivato in momenti o intervalli specifici. Possiamo controllare se c'è cron
lavori pianificati per questo account utente utilizzando ls
:
sudo ls -lh /var/spool/cron/crontabs/eric
Se esiste qualcosa in questa posizione, significa che c'è cron
lavori in coda per quell'account utente. Possiamo eliminarli con questo. crontab
comando. il -r
(Elimina) cancellerà i lavori e -u
l'opzione (Nome utente) dado crontab
i cui lavori da eliminare.
sudo crontab -r -u eric
I lavori vengono eliminati silenziosamente. Per quanto ne sappiamo, se Eric avesse sospettato che stesse per essere sfrattato, potrebbe aver programmato un lavoro dannoso. Questo passaggio è la migliore pratica.
Elimina lavori di stampa
Forse l'utente aveva lavori di stampa in sospeso? Giusto per essere sicuro, possiamo eliminare la coda di stampa di qualsiasi lavoro che appartiene all'account utente. eric
. il lprm
comando rimuove i lavori dalla coda di stampa. il -U
L'opzione (Nome utente) consente di eliminare i lavori appartenenti all'account utente indicato:
lprm -U erica
I lavori vengono eliminati e si torna alla riga di comando.
Rimuovi account utente
Abbiamo già eseguito il backup dei file dal /home/eric/
directory, così possiamo andare avanti ed eliminare l'account utente ed eliminare il /home/eric/
directory allo stesso tempo.
Il comando da utilizzare dipende dalla distribuzione Linux che stai utilizzando. Per Distribuzioni Linux basate su Debian, il comando è deluser
, e per il resto del mondo Linux, è userdel
.
In realtà, in Ubuntu sono disponibili entrambi i comandi. Quasi mi aspettavo che uno fosse un alias dell'altro, ma sono binari diversi.
digita deluser
digita userdel
Anche se entrambi sono disponibili, la raccomandazione è di usare deluser
sulle distribuzioni derivate da Debian:
“userdel
è un'utilità di basso livello per eliminare gli utenti. In Debian, gli amministratori dovrebbero usare regolarmente deluser
(8) Invece “.
È abbastanza chiaro, quindi il comando da usare su questo computer Ubuntu è deluser
. Perché vogliamo che anche la tua home directory venga rimossa, stiamo usando il --remove-home
bandiera:
sudo deluser --remove-home eric
Il comando da usare per le distribuzioni non Debian è userdel
, con il --remove
bandiera:
sudo userdel --remove eric
Tutte le tracce dell'account utente eric
sono stati cancellati. Possiamo verificare che il /home/eric/
La directory è stata rimossa:
ls / casa
il eric
anche il gruppo è stato eliminato perché l'account utente eric
era l'unico ingresso in esso. Possiamo verificarlo abbastanza facilmente canalizzando il contenuto di /etc/group
attraverso grep
:
sudo less /etc/group | grep erica
È un involucro
Eric, per i loro peccati, È andato. La sicurezza ti sta ancora portando fuori dall'edificio e hai già protetto e archiviato i tuoi file, hai cancellato il tuo account e ripulito il sistema da eventuali avanzi.
La precisione vince sempre sulla velocità. Assicurati di considerare ogni passaggio prima di prenderlo. Non vuoi che qualcuno si avvicini alla tua scrivania e ti dica “No, l'altro Eric”.