2017-05-29 6 views
-1

Ich werde gebeten, die Berechtigung für den Root-Benutzer zu entfernen, um ein Bash-Skript auszuführen, ist das überhaupt möglich? Eigentlich wie würde man irgendwelche Berechtigungen von einem Benutzer wegnehmen? mit chmod könnte ich es für den aktuellen angemeldeten Benutzer ändern, aber nicht für root.Wie kann man die 'execute'-Berechtigung vom root-Benutzer entfernen?

+1

Es wird alles vermasseln, aber 'chmod -x/bin/chmod' –

+0

@OleksandrKravchuk würde ich nicht die Fähigkeit verlieren, chmod zu benutzen? Außerdem ist es eher eine Frage des Hausaufgabenstils, also wäre es wirklich egal, ob er es zurückbekommen könnte. EDIT: LMAO nein danke – adadaae12313412

+0

ja, du würdest. –

Antwort

3

Wenn Sie einfach nur für einen kleinen Schutz suchen, ein Hindernis zu laufen versehentlich das Skript als root, das Skript schreiben, um freiwillig beendet, wenn als root ausführen. Fügen Sie folgende an den Anfang des Skripts:

if [[ $EUID == 0 ]]; then 
    printf 'Do not run this script as root\n' >&2 
    exit 1 
fi 
1

Sie können das nicht tun, root kann alles tun. Aber es gibt einige Maßnahmen, die es schwierig machen. Sie können den folgenden Befehl in ext verwenden {2-4} Dateisysteme:

chattr +i script.sh

diese die Datei tun können nicht geändert werden, aber es kann mit chattr -i script.sh

Andere Sache entriegelt werden Sie tun können is: Versetzen Sie das gewünschte Skript für root auf den Remote-Server und mounten Sie es über NFS. Wenn der Server keine Schreibberechtigungen anbietet, die das lokale Root-Konto sperren. Natürlich könnte der lokale root-Account einfach die Dateien lokal kopieren, die Remotestandorte aushängen, die Kopie an Ort und Stelle setzen und diese ändern.

Sie können Root nicht daran hindern, Ihre Dateien zu löschen. Wenn Sie Ihrer Root nicht vertrauen können, dass Dateien intakt bleiben, haben Sie ein soziales und kein technisches Problem.

Verwandte Themen