Ich mag die Idee, auf Server über Schlüssel zuzugreifen, so dass ich mein Passwort nicht jedes Mal eingeben muss, wenn ich ssh
in eine Box komme. Ich sperre sogar das root
Passwort meines Benutzers (nicht ) ( passwd -l username
), so dass es unmöglich ist , sich ohne Schlüssel anzumelden.
All dies funktioniert jedoch nicht, wenn ich ein Kennwort für sudo
Befehle eingeben muss. Daher bin ich versucht, passwordless sosudo
einzurichten , dass es dem passwortlosen Login entspricht.
Ich habe jedoch immer noch das Gefühl, dass es auf unerwartete Weise nach hinten losgeht, es scheint nur irgendwie unsicher zu sein. Gibt es irgendwelche Einschränkungen bei solchen Einstellungen? Würden Sie dies für ein Benutzerkonto auf einem Server empfehlen / nicht empfehlen?
Klarstellungen
- Ich spreche hier von der Verwendung
sudo
in einer interaktiven Benutzersitzung, nicht für Dienste oder Verwaltungsskripte - Ich spreche über die Verwendung eines Cloud-Servers (daher habe ich keinen physischen lokalen Zugriff auf einen Computer und kann mich nur remote anmelden)
- Ich weiß, dass
sudo
eine Zeitüberschreitung vorliegt, in der ich mein Passwort nicht erneut eingeben muss. Aber bei meinem Konzert geht es nicht wirklich darum, die zusätzliche Zeit für die Eingabe eines Passworts zu verschwenden. Meine Idee war jedoch, überhaupt kein Passwort haben zu müssen, da ich davon ausgehe, dass:- Wenn ich es mir merken muss, ist es sehr wahrscheinlich zu kurz, um sicher zu sein oder wiederverwendet zu werden
- Wenn ich ein langes und eindeutiges Passwort für mein Remote-Konto generiere, muss ich es irgendwo speichern (ein lokales Passwort-Manager-Programm oder einen Cloud-Dienst) und jedes Mal abrufen, wenn ich es verwenden möchte
sudo
. Ich hoffte, ich könnte das vermeiden.
Mit dieser Frage wollte ich die Risiken, Vorbehalte und Nachteile einer möglichen Konfiguration gegenüber den anderen besser verstehen.
Follow-up 1
Alle Antworten besagen, dass passwortlos sudo
unsicher ist, da es eine "einfache" Eskalation von Berechtigungen ermöglicht, wenn mein persönliches Benutzerkonto kompromittiert wird. Ich verstehe das. Wenn ich hingegen ein Passwort verwende, gehen wir mit Passwörtern alle klassischen Risiken ein (zu kurze oder gemeinsame Zeichenfolge, die über verschiedene Dienste hinweg wiederholt wird usw.). Aber ich denke, wenn ich die Kennwortauthentifizierung deaktiviere, /etc/ssh/sshd_config
damit Sie immer noch einen Schlüssel zum Anmelden haben, kann ich ein einfacheres Kennwort verwenden, nur um dies einfacher einzugeben sudo
. Ist das eine gültige Strategie?
Follow-up 2
Wenn ich auch einen Schlüssel für die Anmeldung root
über ssh habe, jemand Zugriff auf meinen Computer hat und meine Schlüssel stiehlt (der ist jedoch immer noch durch das Schlüsselbundkennwort des Betriebssystems geschützt!), Kann er auch einen direkten Zugriff auf das root
Konto erhalten , den sudo
Weg umgehen . Wie sollte dann die Richtlinie für den Zugriff auf das root
Konto aussehen?
/etc/passwd
Legen Sie eine falsche Shell für das Konto fest, z. B. "nologin", "no password" und "passwordless" in visudo. Wenn Sie dies tun, sollten Sie auch sicherstellen, dass die Visudo-Einstellung nur für das bestimmt ist, was das Systemkonto unbedingt benötigt, dh, Sie müssen sie auf die einzigen Befehle beschränken, die jemals ausgeführt werden sollten.