Erhalten Sie eine E-Mail-Benachrichtigung, wenn ein bestimmter Benutzer 'sudo' verwendet

16

Ich habe einen Server eingerichtet und überlasse es jemandem, dem ich ein bisschen sudoZugriff anvertraue. Ich möchte jedoch auch jederzeit eine E-Mail, die sie verwenden sudo.

Ich weiß, dass ich Defaults mail_alwaysjederzeit eine E-Mail erhalten kann, wenn JEDER versucht, sie zu verwenden sudo, aber ich habe einen Cron-Job für OwnCloud, der alle 30 Minuten ausgeführt wird und einen sudo -u www-dataam Anfang erfordert . Natürlich möchte ich nicht alle 30 Minuten eine E-Mail.

Wie kann ich immer eine E-Mail nur für einen bestimmten Benutzer erhalten?

ankit7540
quelle

Antworten:

21

Nach einigem Experimentieren fand ich die Antwort. Um Optionen wie mail_alwaysoder root_pwfür bestimmte Benutzer festzulegen, können Sie Ihrer sudoersDatei nach dem Öffnen eine Zeile wie die folgende hinzufügen visudo:

Defaults:USER_NAME mail_always

Stellen Sie einfach sicher, dass diese Zeile oben eingefügt wird, wo sich die anderen DefaultsOptionen befinden. Wenn Sie außerdem den Empfänger der E-Mails angeben möchten:

Defaults mailto="[email protected]"

quelle
1
Stellen Sie
Ich verstehe nicht, wie dir das hilft - sudo /bin/bashwird nachverfolgt, aber Befehle, die an die weitergeleitet werden, root bashwerden nicht nachverfolgt . Ebenso wird sudo vi foo, gefolgt von :!rm /etc/passwd, nicht protokolliert. Lesen Sie noch einmal man sudoers. Sie können sudo so einrichten, dass nur ein Befehl ohne Kennwort zulässig ist.
Waltinator
4
@ Waltinator Ich weiß, wie man sudoeinzelne Befehle oder nur ein paar Befehle einrichtet . Das habe ich schon gemacht. Ich wollte einfach immer eine E-Mail, wenn einer dieser Befehle sudovon diesem bestimmten Benutzer verwendet wurde. Dies löste mein Problem, indem es genau das erreichte, was meine Frage stellte.