Einschränkungen bei der Änderung von Dateien für Sudo / Linux wie in UAC / Windows

337
xendi

Wenn der Benutzer in Windows UAC versucht, eine ausführbare Datei auszuführen, fragt das Betriebssystem den Benutzer, ob er sie ausführen möchte oder nicht. Wenn für die Anwendung Administratorrechte erforderlich sind, wird der Benutzer dazu aufgefordert, dies zuzulassen. In beiden Fällen kann an die Präferenz erinnert werden, die im Wesentlichen an zwei Whitelists angehängt wird. Wenn die Datei geändert wird, wird sie aus den Whitelists entfernt und der Benutzer wird erneut aufgefordert.

In Linux haben wir eine Sudoers-Datei, in der wir Dateien angeben können, die als root (oder ein anderer Benutzer) ausgeführt werden können, ohne jedes Mal das Kennwort eingeben zu müssen. Dies ist ideal für Anwendungen, die einen automatischen Start mit Sudo-Berechtigungen benötigen, insbesondere bei einem automatischen Start der GUI-App (mit gksudo), was jedoch eine Sicherheitsbedeutung mit sich bringt. Wenn die Datei geändert wird, wird Sudo ohne Kennwort nicht entfernt. Gibt es eine Möglichkeit, dieses Verhalten anzurufen?

Ich kann mir vorstellen, dass UAC Datei-Hashes verwendet, um Änderungen zu verfolgen. Ich denke, es muss einen Weg geben, wie man das unter Linux machen kann, aber ich scheine es bis jetzt noch nicht zu finden.

1
Der `sudo`-Befehl wird verwendet, um als root (im Allgemeinen) zu starten, ohne das root-Benutzerkennwort zu verwenden. Das Zwischenspeichern eines Passworts für einige Zeit ist nur eine Ergänzung. Soweit ich weiß, möchten Sie, dass "sudo" das Kennwort aus dem Cache entfernt, wenn es für ein bestimmtes Programm zwischengespeichert wurde und sich dessen Inhalt geändert hat. und für immer an Programme erinnern, die sich nicht ändern? rsm vor 7 Jahren 0
und was sollte es tun, wenn sich Bibliotheken ändern? oder Konfigurationsdateien? oder Umgebungseinstellungen (Ändern des Programmverhaltens)? es sieht für mich wie eine ganze andere Schicht aus, kompliziert und nicht wirklich notwendig, da das Sudo-Cache-Passwort nur für eine kurze Zeitspanne ist, so dass diese zusätzliche Logik ständig durchgespült wird. rsm vor 7 Jahren 0
Siehe auch http://superuser.com/questions/242903/windows-uac-vs-linux-sudo?rq=1 Frage, es gibt einen schönen OAC- und `Sudo'-Vergleich. rsm vor 7 Jahren 0

1 Antwort auf die Frage

0
Dmitry Grigoryev

Das gesamte Linux-Sicherheitsmodell basiert auf Dateiberechtigungen. Der richtige Weg zum Schutz einer ausführbaren Datei sudoersist , dass Benutzer sie nicht ändern können . Dies ist nicht genau das gleiche wie bei der Benutzerkontensteuerung, aber in Bezug auf die Sicherheit ist es ähnlich:

  • Unter Windows können Sie die Datei frei ändern. Sie müssen jedoch jedes Mal das Administratorkennwort angeben, wenn Sie eine geänderte Version ausführen möchten.
  • Unter Linux können Sie immer eine in sudoers aufgelistete Datei ausführen. Sie müssen jedoch jedes Mal das Root-Kennwort eingeben, wenn Sie es ändern möchten.

Siehe auch: Windows UAC vs. Linux Sudo