Wenn ich derzeit meine Hosts-Datei bearbeiten möchte, muss ich Folgendes verwenden sudo nano /etc/hosts
: Kann ich dem tom
Benutzer erlauben , die Hosts-Datei zu bearbeiten, ohne sudo zu benötigen?
permissions
TMH
quelle
quelle
Antworten:
Sie können, aber es ist eine schlechte Idee. Der springende Punkt des Berechtigungssystems besteht darin, nicht privilegierte Benutzer und Angreifer daran zu hindern, beispielsweise in Systemdateien zu schreiben, feindlichen Code auszuführen usw. Bei weitem das Beste, was Sie tun können, ist, es weiter zu verwenden,
sudo
wenn Sie Systemdateien bearbeiten müssen. Das ist Best Practice und der Grund, den wir habensudo
Ich empfehle keine der folgenden Methoden, aber sie sind sicherer als die gefürchteten
chmod 777
. Sie können beispielsweise den Gruppenbesitz von ändern/etc/hosts
und der Gruppe Schreibberechtigung erteilen:Sie können die Datei jetzt ohne bearbeiten
sudo
. Sie können auch ACLs verwenden, wenn Sie dasacl
Paket haben (sicher in 15.04 und höher installiert).Aber auch hier empfehle ich keine dieser Aktionen. Einfach benutzen
sudo
.quelle
sudo
ohne Passwort bearbeiten kann und nicht, wie ich ohne Passwort bearbeiten kann.Ich würde die Berechtigungen einer systembezogenen Datei nicht anpassen
Was Sie tun können, ist ein einfaches Skript zu erstellen
Nennen Sie es wie Sie wollen, zum Beispiel edithosts.sh, und legen Sie es in einem Skriptordner in Ihrem Home-Ordner ab.
chmod 700 /path/to/script/file/edithosts.sh
Dies verhindert das unbefugte Lesen oder Schreiben in die Datei, da laut ss TripeHound der Inhalt dieser Datei jetzt mit Root-Berechtigungen ohne Kennwort ausgeführt wird.Fügen Sie dann die folgende Zeile hinzu
/etc/sudoers
So können Sie
sudo sh /path/to/script/file/edithosts.sh
ohne Passwort eingebenEmpfohlene Lösung
Wie @paul in den Kommentaren betonte,
sudoedit
könnte dies eine bessere Lösung sein.Da dies nur die Bearbeitung
/etc/hosts
eines erhöhten Texteditors ermöglicht und Sie nicht dazu bringt, diesen auszuführenquelle