Supprimer un utilisateur sous Linux implique plus que vous ne le pensez. Si vous êtes administrateur système, vous voudrez effacer toutes les traces du compte et de son accès de leurs systèmes. Nous vous montrons les étapes à suivre.
Si vous souhaitez uniquement supprimer un compte d'utilisateur de votre système et que vous ne vous inquiétez pas de la fin des procédures en cours et d'autres tâches de nettoyage, suivez les étapes de la section “Suppression du compte utilisateur” ensuite. Vous aurez besoin du deluser
sur les distributions prises en charge par Debian et la userdel
commande sur d'autres distributions Linux.
Comptes d'utilisateurs sous Linux
Depuis le Les premiers systèmes de multipropriété sont apparus au début des années 1990. 1960. et a apporté avec elle la possibilité pour plusieurs utilisateurs de travailler sur un seul ordinateur, il a été nécessaire d'isoler et de compartimenter les fichiers et les données de chaque utilisateur de tous les autres utilisateurs. Et les comptes utilisateurs …et mots de passe-est né.
Les comptes d'utilisateurs ont une surcharge administrative. Ils doivent être créés lorsque l'utilisateur doit d'abord accéder à l'ordinateur. Ils doivent être supprimés lorsque cet accès n'est plus nécessaire. En Linux, il y a une séquence d'étapes qui doivent être suivies pour effacer correctement et méthodiquement l'utilisateur, vos fichiers et votre compte informatique.
Si vous êtes l'administrateur système, cette responsabilité vous incombe. Voici comment faire.
Notre scène
Il y a plusieurs raisons pour lesquelles un compte peut devoir être supprimé. Un membre du personnel peut changer d'équipe ou quitter complètement l'entreprise. Le compte peut avoir été créé pour une collaboration à court terme avec un visiteur d'une autre entreprise. Les équipes de travail sont courantes dans l'académie, où les projets de recherche peuvent s'étendre sur des départements, différentes universités et même des entités commerciales. A la fin du projet, l'administrateur système doit nettoyer et supprimer les comptes inutiles.
Le pire des cas, c'est quand quelqu'un passe sous un Cloud à cause d'un délit. De tels événements se produisent généralement soudainement, avec peu de préavis. Cela donne à l'administrateur système très peu de temps pour planifier et une urgence pour bloquer, fermer et supprimer le compte, avec une copie des fichiers utilisateur sauvegardés au cas où ils seraient nécessaires pour toute analyse médico-légale post-arrêt.
Sur notre scène, nous prétendons qu'un utilisateur, Éric, a fait quelque chose qui justifie le retrait immédiat des lieux. En ce moment il ne s'en rend pas compte, fonctionne toujours et connecté. Dès que vous donnez le feu vert à la sécurité, ils vous escorteront hors du bâtiment.
Tout est prêt. Tous les yeux sont sur toi.
Vérifiez la connexion
Voyons si vous êtes vraiment connecté et, Si c'est, avec combien de sessions travaillez-vous. Les who
commander listera les sessions actives.
qui
Eric s'est connecté une fois. Voyons quels processus vous exécutez.
Revue des processus utilisateurs
Nous pouvons utiliser le ps
commande à liste les processus que cet utilisateur exécute. Les -u
L'option (Nom d'utilisateur) nous permet de dire ps
restreindre sa sortie aux processus s'exécutant sous la propriété de ce compte d'utilisateur.
ps -u eric
Nous pouvons voir les mêmes processus avec plus d'informations en utilisant le top
commander. top
il a aussi un -U
(Nom d'utilisateur) option pour restreindre la sortie aux processus appartenant à un seul utilisateur. Notez que cette fois est un “U” lettre capitale.
haut -U eric
Nous pouvons voir l'utilisation de la mémoire et du processeur de chaque tâche, et nous pouvons rechercher rapidement tout ce qui présente une activité suspecte. Nous sommes sur le point de tuer de force tous vos processus, il est donc plus sûr de prendre un moment pour examiner rapidement les processus et vérifier et s'assurer que les autres utilisateurs ne seront pas incommodés lorsque vous annulez le compte utilisateur. eric
Processus de.
Je n'ai pas l'impression de faire grand chose, utilise seulement less
pour afficher un fichier. nous sommes en sécurité pour continuer. Mais avant de tuer vos processus, nous allons geler le compte en verrouillant le mot de passe.
EN RELATION: Comment utiliser la commande ps pour surveiller les processus Linux
Verrouiller le compte
Nous verrouillerons le compte avant de tuer les processus car lorsque nous tuons les processus, cela fermera la session de l'utilisateur. Si nous changeons déjà votre mot de passe, vous ne pourrez plus vous connecter.
Les mots de passe utilisateur cryptés sont stockés dans le /etc/shadow
Record. Vous ne vous embêteriez pas régulièrement avec ces prochaines étapes, mais ainsi vous pouvez voir ce qui se passe dans le /etc/shadow
fichier lors du verrouillage du compte, on va faire un petit détour. Nous pouvons utiliser la commande suivante pour regarder les deux premiers champs de l'entrée pour le eric
compte d'utilisateur.
sudo awk -F: '/eric/ {imprimer $1,$2}' /etc/ombre
La commande awk analyse les champs des fichiers texte et les manipule éventuellement. Nous utilisons le -F
(séparateur de champs) possibilité de dire awk
ce fichier utilise deux-points ” :
« Pour séparer les champs. Trouvons une ligne avec le motif "eric". Pour des lignes assorties, nous imprimerons les premier et deuxième champs. Ce sont le nom du compte et le mot de passe crypté.
L'entrée pour le compte utilisateur eric est imprimée pour nous.
Pour bloquer le compte, nous utilisons le passwd
commander. Nous utiliserons le -l
(blocage) option et passer le nom du compte utilisateur à bloquer.
sudo passwd -l eric
Si nous vérifions le /etc/passwd
fichier à nouveau, on verra ce qui s'est passé.
sudo awk -F: '/eric/ {imprimer $1,$2}' /etc/ombre
Un point d'exclamation a été ajouté au début du mot de passe crypté. Ne pas écraser le premier caractère, il est seulement ajouté au début du mot de passe. C'est tout ce qu'il faut pour empêcher un utilisateur de se connecter à ce compte.
Maintenant que nous avons empêché l'utilisateur de se reconnecter, nous pouvons supprimer vos processus et fermer la session.
Tuer les processus
Il existe différentes alternatives pour tuer les processus d'un utilisateur, mais la commande montrée ici est largement disponible et est une implémentation plus moderne que certaines des alternatives. Les pkill
la commande trouvera et tuera les processus. Nous avons passé le panneau KILL et utilisé le -u
option (Nom d'utilisateur).
sudo pkill -KILL -u eric
Il reviendra à l'invite de commande d'une manière résolument anticlimatique. Pour s'assurer que quelque chose s'est passé, Revoyons who
de nouveau:
qui
Votre session est partie. Il a été déconnecté et ses processus se sont arrêtés. Cela a retiré une partie de l'urgence de la situation.. Maintenant, nous pouvons nous détendre un peu et continuer avec le reste du nettoyage pendant que le personnel de sécurité s'approche du bureau d'Eric..
EN RELATION: Comment tuer les processus du terminal Linux
Archiver le répertoire de base de l'utilisateur
Il n'est pas exclu que dans un scénario comme celui-ci, l'accès aux fichiers des utilisateurs sera requis à l'avenir. Soit dans le cadre d'une enquête, soit simplement parce que votre remplaçant peut avoir besoin de se référer au travail de votre prédécesseur. Nous utiliserons le tar
commander pour archiver l'intégralité de votre répertoire personnel.
Les alternatives que nous utilisons sont:
- C: Créer un fichier archive.
- F: Utiliser le nom de fichier spécifié pour le nom de fichier.
- j: Utiliser la compression bzip2.
- v: Fournit une sortie détaillée lors de la création du fichier.
sudo tar cfjv eric-20200820.tar.bz /home/eric
Une grande quantité de sortie d'écran défilera dans la fenêtre du terminal. Pour vérifier que le fichier a été créé, Utilisez le ls
commander. Nous utilisons le -l
(format long) Oui -h
options (lisible par l'homme).
ls -lh eric-20200802.tar.bz
Un fichier de 722 Mo. Cela peut être copié dans un endroit sûr pour un examen ultérieur..
Supprimer les tâches cron
Nous ferions mieux de vérifier s'il y en a cron
tâches planifiées pour le compte utilisateur eric
. UNE cron
le travail est une commande qui est activée à des moments ou des intervalles spécifiques. On peut vérifier s'il y a cron
tâches planifiées pour ce compte d'utilisateur à l'aide ls
:
sudo ls -lh /var/spool/cron/crontabs/eric
Si quelque chose existe à cet endroit, signifie qu'il y a cron
tâches en file d'attente pour ce compte d'utilisateur. On peut les éliminer avec ça. crontab
commander. Les -r
(effacer) supprimera des emplois et -u
l'option (Nom d'utilisateur) dé crontab
dont les emplois à supprimer.
sudo crontab -r -u eric
Les travaux sont discrètement supprimés. Pour tout ce que nous savons, si Eric avait soupçonné qu'il était sur le point d'être expulsé, aurait pu programmer un travail malveillant. Cette étape est la meilleure pratique.
Supprimer des travaux d'impression
Peut-être que l'utilisateur avait des travaux d'impression en attente? Juste pour être sûr, nous pouvons purger la file d'attente d'impression de tout travail appartenant au compte utilisateur. eric
. Les lprm
commander supprime les travaux de la file d'attente d'impression. Les -U
L'option (nom d'utilisateur) vous permet de supprimer des travaux appartenant au compte d'utilisateur nommé:
lprm -U eric
Les travaux sont supprimés et vous revenez à la ligne de commande.
Supprimer le compte utilisateur
Nous avons déjà sauvegardé les fichiers du /home/eric/
annuaire, afin que nous puissions aller de l'avant et supprimer le compte d'utilisateur et supprimer le /home/eric/
répertoire en même temps.
La commande à utiliser dépend de la distribution Linux que vous utilisez. Pour Distributions Linux basées sur Debian, la commande est deluser
, Oui pour le reste du monde Linux, est userdel
.
En réalité, dans Ubuntu les deux commandes sont disponibles. Je m'attendais presque à ce que l'un soit un alias de l'autre, mais ce sont des binaires différents.
type délirant
tapez userdel
Même si les deux sont disponibles, la recommandation est d'utiliser deluser
à propos des distributions dérivées de Debian:
“userdel
est un utilitaire de bas niveau pour supprimer des utilisateurs. Dans Debian, les administrateurs doivent utiliser régulièrement deluser
(8) à sa place “.
c'est assez clair, donc la commande à utiliser sur cet ordinateur Ubuntu est deluser
. Parce que nous voulons également que votre répertoire personnel soit supprimé, nous utilisons le --remove-home
drapeau:
sudo deluser --remove-home eric
La commande à utiliser pour les distributions non Debian est userdel
, avec lui --remove
drapeau:
sudo userdel --remove eric
Toutes les traces du compte utilisateur eric
ont été effacés. Nous pouvons vérifier que le /home/eric/
Le répertoire a été supprimé:
ls / maison
Les eric
groupe a également été supprimé car le compte utilisateur eric
était la seule entrée dedans. On peut le vérifier assez facilement en canalisant le contenu de /etc/group
à travers de grep
:
sudo less /etc/group | grep eric
C'est un enveloppement
Éric, pour leurs péchés, il est parti. La sécurité vous fait toujours sortir du bâtiment et vous avez déjà protégé et archivé vos fichiers, vous avez supprimé votre compte et purgé le système de tous les restes.
La précision prime toujours sur la vitesse. Assurez-vous de considérer chaque étape avant de la prendre. Vous ne voulez pas que quelqu'un vienne à votre bureau et dise “Non, l'autre Éric”.