Ich bin ziemlich neu in der Serververwaltung, und ich habe viele Websites gesehen, die empfehlen, einem Benutzer, der vom Root-Benutzer erstellt wurde, Sudo-Berechtigungen zuzuweisen und dem Root-Benutzer ein wahnsinnig langes Kennwort zur Verbesserung der Sicherheit zu geben.
Wenn der neu erstellte Benutzer jedoch die gleichen Funktionen wie ein Root-Benutzer ausführen kann, was ist der eigentliche Vorteil davon?
Antworten:
Es gibt mehrere Vorteile,
sudo
wenn Sie das root-Passwort weitergeben. In keiner bestimmten Reihenfolge:Sie geben Ihr Root-Passwort nicht heraus
Wenn jemand Ihr Unternehmen verlässt und die Root-Passwörter kennt, müssen Sie diese Passwörter in der Regel überall ändern. Bei ordnungsgemäßem Konfigurationsmanagement ist dies eine geringfügige Störung. Ohne es ist es eine große Aufgabe.
sudo
Wenn Sie die Schlüssel für das Königreich nicht preisgeben, können Sie eine eingeschränkte Liste von Befehlen angeben, die Benutzer ausführen können. Wenn Sie also entscheiden, dass Alice nur die Fähigkeit zum Stoppen und Starten von Apache benötigt, Bob jedoch die vollständigen Root-Rechte, die Sie festlegen können sie entsprechend auf.Sie können die Autorisierung zentral verwalten und
sudo
die LDAP-Konfiguration unterstützen. Dies bedeutet, dass jedes System in Ihrem Unternehmen auf einem zentralen LDAP-Server ermitteln kann, wer was tun darf.Müssen Sie jemanden autorisieren (oder de-autorisieren)? Ändern Sie die sudoers-Konfiguration in LDAP und alle Ihre Systeme werden auf einmal aktualisiert.
Es gibt einen Audit-Trail.
Mit Ausnahme von Benutzern, die dazu berechtigt
sudo su -
sindsudo sh
, oder etwas Äquivalentes,sudo
wird ein Audit-Trail erstellt, in dem angegeben ist, welcher Benutzer welche Befehle ausgeführt hat.(Es wird auch eine Liste der Personen erstellt, die sich selbst eine nicht angemeldete Wurzelschale gegeben haben, sodass Sie mit dem Finger auf sie zeigen und missbilligend zischen können.)
sudo
ist gut für mehr als nur root Jeder konzentriert sich aufsudo
eine Art und Weise zu tun Sachen wie die su peruser, aber nicht , dass das alles für sie gut ist.Angenommen, Alice ist für einen bestimmten Software-Build verantwortlich, aber Bob sollte auch in der Lage sein, das Build-Skript auszuführen. Sie können Bob einen Eintrag in sudoers geben, mit dem er das Build-Skript als Benutzer von Alice ausführen kann. (Ja, sicher, es gibt viel bessere Möglichkeiten, mit diesem speziellen Fall umzugehen, aber das Prinzip von
Let user A run a program as user B
kann nützlich sein ...).Sie erhalten auch die gleichen Audit-Trail-Vorteile, die ich oben erwähnt habe, wenn Sie dies tun ...
quelle
sudo
gegensu
eine akademische Auszeichnung ist - Sie werden durch einen Reifen oder die andere haben , um zu springen. Die Verwendungsudo
bietet Ihnen die Möglichkeit, das Prinzip des geringsten Privilegs (mein letzter Punkt) in die Tat umzusetzen, und das ist immer etwas, das Sie ernsthaft in Betracht ziehen sollten.sudo vi
kann:! bash
einmal in vi.NOEXEC
Tag hilft in diesem Fall.Der Hauptunterschied besteht darin, dass sich Benutzer
sudo
mit ihrem eigenen Passwort authentifizieren, während bei dersu
direkten Anmeldung als Root das Root-Passwort verwendet wird.Dies bedeutet, dass Sie das Root-Passwort nicht für alle und andere Benutzer freigeben müssen. Wenn Sie den Root-Zugriff für einen oder zwei Benutzer in der Zukunft deaktivieren müssen, können Sie ihn einfach für diese Benutzer deaktivieren, anstatt ihn ändern zu müssen root-Passwort.
sudo
kann auch einschränken, welche Befehle jeder Benutzer als Root ausführen kann, sodass bestimmten Benutzern nur dann Zugriff auf die Aufgaben gewährt werden kann, die sie ausführen müssen, wenn sie keinen vollständigen Root-Zugriff benötigen.quelle
Vergessen Sie nicht, dass ein Benutzer, der als root angemeldet ist, bei jedem Befehl möglicherweise das System beschädigen kann. Wenn Sie sie zwingen, sudo einzugeben, bevor Sie etwas möglicherweise Gefährliches tun, machen Sie sie zumindest darauf aufmerksam, dass sie vor dem Ausführen eines bestimmten Befehls eine Überprüfung durchführen müssen.
quelle
Ja, aus Sicht der Kontrolle und Protokollierung ist sudo viel besser.
Zum Beispiel - wenn Sie das einzige Ereignis sind, das in den Protokollen erfasst wird, ist das, was Sie verklagen. Alles danach geht als root. Und wenn Sie sich jemals Protokolle unter Unix / Linux angesehen haben, wissen Sie, dass root eine ganze Menge Dinge erledigt.
Sudo hingegen protokolliert so ziemlich alles, WIE der ursprüngliche Benutzer.
quelle
Die Verwendung von sudo erschwert einem böswilligen Benutzer den Zugriff auf ein System. Wenn es ein entsperrtes Root-Konto gibt, kennt ein böswilliger Benutzer den Benutzernamen des Kontos, das er knacken möchte, bevor er startet. Wenn das Root-Konto gesperrt ist, muss der Benutzer den Benutzernamen und das Kennwort bestimmen, um in ein System einzubrechen.
quelle