web-dev-qa-db-fra.com

Que signifie l'erreur "X n'est pas dans le fichier sudoers. Cet incident sera signalé." philosophiquement / logiquement signifie?

Parallèlement à la question " le nom d'utilisateur n'est pas dans le fichier sudoers. Cet incident sera signalé " qui expliquait les aspects programmatiques de l'erreur et proposait quelques solutions de contournement, je veux savoir: que signifie cette erreur?

X is not in the sudoers file.  This incident will be reported.

La première partie de l'erreur explique clairement l'erreur. Mais la deuxième partie dit que "Cette erreur sera signalée"?! Mais pourquoi? Pourquoi l'erreur sera signalée et où? À qui? Je suis à la fois utilisateur et administrateur et n'ai reçu aucun rapport :)!

31
Kasramvd

Les administrateurs d'un système sont susceptibles de vouloir savoir quand un utilisateur non privilégié essaie mais échoue à exécuter des commandes à l'aide de Sudo. Si cela se produit, cela pourrait être un signe de

  1. un utilisateur légitime curieux essayant simplement les choses, ou
  2. un pirate essayant de faire de "mauvaises choses".

Étant donné que Sudo ne peut à lui seul faire la distinction, les tentatives infructueuses d'utilisation de Sudo sont portées à l'attention des administrateurs.

Selon la configuration de Sudo sur votre système, toute tentative (réussie ou non) d'utiliser Sudo sera enregistrée. Les tentatives réussies sont enregistrées à des fins d'audit (pour pouvoir suivre qui a fait quoi et quand) et les tentatives de sécurité ont échoué.

Sur une configuration Ubuntu assez vanille que j'ai, ceci est connecté /var/log/auth.log.

Si un utilisateur donne trois fois le mauvais mot de passe, ou s'il ne se trouve pas dans le fichier sudoers, un e-mail est envoyé à root (selon la configuration de Sudo, voir ci-dessous). C'est ce que l'on entend par "cet incident sera signalé".

L'e-mail aura un sujet important:

Subject: *** SECURITY information for thehostname ***

Le corps du message contient les lignes pertinentes du fichier journal, par exemple

thehostname : Jun 22 07:07:44 : nobody : user NOT in sudoers ; TTY=console ; PWD=/some/path ; USER=root ; COMMAND=/bin/ls

(Ici, l'utilisateur nobody a tenté d'exécuter ls via Sudo en tant que root, mais a échoué car il ne se trouvait pas dans le fichier sudoers).

Aucun e-mail n'est envoyé si le courrier (local) n'a pas été configuré sur le système.

Toutes ces choses sont également configurables et les variations locales de la configuration par défaut peuvent différer entre les variantes Unix.

Jetez un œil au mail_no_user paramètre (et connexe mail_* settings) dans le manuel sudoers (je souligne ci-dessous):

mail_no_user

S'il est défini, le courrier sera envoyé à l'utilisateur mailto si l'utilisateur appelant n'est pas dans le fichier sudoers. Ce drapeau est activé par défaut.

38
Kusalananda

Dans Debian et ses dérivés, les rapports d'incidents Sudo sont enregistrés dans /var/log/auth.log Qui contient les informations d'autorisation système, y compris les connexions utilisateur et les mécanismes d'authentification qui ont été utilisés:

$ Sudo su
[Sudo] password for regularjohn: 
regularjohn is not in the sudoers file.  This incident will be reported.

[as root]

$ tail -n 1 /var/log/auth.log
Jun 21 16:30:26 marvin Sudo: regularjohn : user NOT in sudoers ; TTY=pts/19 ; PWD=/home/regularjohn ; USER=root ; COMMAND=/bin/su

Ce fichier journal n'est généralement accessible qu'aux utilisateurs du groupe adm, c'est-à-dire aux utilisateurs ayant accès à tâches de surveillance du système :

$ ls -la /var/log/auth.log
-rw-r----- 1 syslog adm 76189 Jun 21 16:30 /var/log/auth.log

Depuis Debian Wiki :

Le groupe adm est utilisé pour les tâches de surveillance du système. Les membres de ce groupe peuvent lire de nombreux fichiers journaux dans/var/log et peuvent utiliser xconsole. Historiquement,/var/log était/usr/adm (et plus tard/var/adm), d'où le nom du groupe.

Les utilisateurs du groupe adm sont généralement des administrateurs , et cette autorisation de groupe est destinée à leur permettre de lire les fichiers journaux sans avoir à su.

Par défaut, Sudo utilise la fonction Syslog auth pour la journalisation . Le comportement de journalisation de Sudo peut être modifié à l'aide des options logfile ou syslog dans /etc/sudoers ou /etc/sudoers.d:

  • L'option logfile définit le chemin d'accès au fichier journal Sudo.
  • L'option syslog définit la fonction Syslog lorsque syslog(3) est utilisé pour la journalisation.

La fonction Syslog auth est redirigée vers /var/log/auth.log Dans etc/syslog.conf Par la présence de la strophe de configuration suivante:

auth,authpriv.*         /var/log/auth.log
15
Thomas Nyman

Techniquement, cela ne signifie pas grand-chose. De nombreux autres logiciels (sinon tous) se connectent, ont échoué ou autrement. Par exemple sshd et su:

Jun 21 17:52:22 somehost sshd[25807]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=::1  user=root
Jun 21 17:52:22 somehost sshd[25807]: Failed password for root from ::1 port 37268 ssh2
Jun 21 17:52:23 somehost sshd[25807]: Connection closed by ::1 port 37268 [preauth]
Jun 21 17:52:28 somehost su[25809]: pam_unix(su:auth): authentication failure; logname= uid=1000 euid=0 tty=/dev/pts/15 ruser=someuser rhost=  user=root
Jun 21 17:52:28 somehost su[25809]: pam_authenticate: Authentication failure
Jun 21 17:52:28 somehost su[25809]: FAILED su for root by someuser

En outre, de nombreux systèmes disposent d'une sorte d'automatisation pour détecter les erreurs d'authentification excessives afin de pouvoir faire face à d'éventuelles tentatives de force brute, ou simplement utiliser les informations pour reconstruire les événements après l'apparition des problèmes.

Sudo ne fait rien d'exceptionnel ici. Tout le message signifie que l'auteur de Sudo semble avoir adopté une philosophie quelque peu agressive en communiquant avec les utilisateurs qui exécutent des commandes qu'ils ne peuvent pas utiliser.

7
ilkkachu

Cela signifie simplement que quelqu'un a essayé d'utiliser la commande Sudo (pour accéder aux privilèges d'administrateur), qui n'a pas l'autorisation de l'utiliser (car ils ne sont pas répertoriés dans le fichier sudoers). Il peut s'agir d'une tentative de piratage ou d'un autre type de risque de sécurité. Le message indique donc que la tentative d'utilisation de Sudo sera signalée à l'administrateur système afin qu'il puisse enquêter.

6
Time4Tea