Wenn ein Benutzer einen Befehl ausführt wie
sudo /etc/init.d/apache2 restart
Ich möchte das erkennen und verhindern, dass das Skript ausgeführt wird.
Kann ich das tun, ohne das zu ändern? apache2
Skript?
quelle
Wenn ein Benutzer einen Befehl ausführt wie
sudo /etc/init.d/apache2 restart
Ich möchte das erkennen und verhindern, dass das Skript ausgeführt wird.
Kann ich das tun, ohne das zu ändern? apache2
Skript?
Höchstwahrscheinlich willst du sudo chmod o-x /etc/init.d/apache2
. Dies verhindert, dass ein Benutzer apache2 ausführt, es sei denn, er ist Superuser, Eigentümer der Datei oder Mitglied der Gruppe.
Auschecken chmod wiki für mehr Informationen.
Sie können einschränken, welche Befehle ein Benutzer ausführen kann, und sogar welche Berechtigungen er für die Ausführung dieser Befehle wie bei Verwendung von sudo hat. Alle diese Einstellungen werden in der vorgenommen /etc/sudoers
Datei, die von der bearbeitet wird visudo
Befehl.
Die sehr einfache Konfiguration, die normalerweise mit sudo installiert und verwendet wird, ermöglicht es Benutzern in der Radgruppe, Programme als Root-Benutzer auszuführen. Das Sudoer (5) Die Manpage enthält ausführliche Informationen zur Konfiguration von sudo, damit ein Benutzer nur ein Programm ausführen kann, auf das er Zugriff haben sollte, und welche Berechtigungen er zum Ausführen des Programms haben sollte.
Beachten Sie auch, dass sudo alle Verwendungen protokolliert, selbst wenn ein Benutzer die Berechtigung hat, einen Befehl auszuführen. In der Regel ist dies Ihr Syslog, dessen Speicherort davon abhängt, wie Sie Protokolle und Protokollierung auf Ihrem System konfiguriert haben.
Wenn Sie nur experimentieren möchten (anstatt wirklich jemanden davon abzuhalten, ein Programm auszuführen, ihm aber trotzdem die Schlüssel zu Ihrem Königreich über sudo zu geben), könnten Sie wahrscheinlich ein Wrapper-Skript für sudo schreiben. Im Wrapper-Skript müssen Sie entweder die Protokollnachricht abfangen, um festzustellen, ob das unerwünschte Programm ausgeführt werden soll, oder sich den angeforderten Befehl ansehen, der unter sudo-Berechtigungen ausgeführt werden soll, und den Befehl entweder normal an sudo übergeben oder die Aktion ablehnen. Beachten Sie jedoch, dass ein Wrapper-Skript auch umgangen werden kann, wenn der Benutzer den Pfad zur sudo-Binärdatei kennt und darauf zugreifen kann.
Sie sollten wahrscheinlich ihre entfernen sudo
Berechtigungen. Sie können nichts tun, was sie nicht "rückgängig machen" können, solange sie sie haben. Wenn Sie ihnen die Berechtigungen nicht anvertrauen können, sollten sie sie überhaupt nicht haben.