Habe ich mich vielleicht durch Ändern der SSH-Einstellungen aus meiner AWS-Maschine ausgesperrt?

Habe ich mich vielleicht durch Ändern der SSH-Einstellungen aus meiner AWS-Maschine ausgesperrt?

Ich bin nicht genau sicher, was das Problem verursacht hat, aber ich sage Ihnen, dass ich es weiß.

Ich habe eine Amazon EC2-Instanz erstellt und die Authentifizierung mit öffentlichem/privatem Schlüssel verwendet, um mich per SSH als Standard-Ubuntu-Benutzer anzumelden. Alles hat gut funktioniert, bis ...

Ich musste einen weiteren Benutzer anlegen und ihm SSH-Zugriff geben. Ich wollte ihr einen Benutzer/Passwort-Login geben. Also habe ich sie als Nicht-Sudo-Benutzer hinzugefügt und dann meine sshd_config geändert. Dies sind die beiden Einstellungen

PasswordAuthentication yes ### changed from no
AllowedUsers newuser1 ### this line was created

Ich habe Tests durchgeführt, um sicherzustellen, dass ich mich mit dem neuen Benutzer und seinem Passwort per SSH anmelden kann.

Ich wollte außerdem nicht, dass dieser Benutzer auf das Home-Verzeichnis meines Root-Benutzers zugreifen oder es anzeigen kann. Daher habe ich „chmod -R o-rx /home/ubuntu“ ausgeführt.

Am nächsten Tag versuche ich, mich wie üblich per SSH bei Ubuntu anzumelden, und das System fordert mich zur Eingabe eines Passworts auf. Leider habe ich das Standardpasswort des Benutzers nie festgelegt/geändert und weiß nicht, wie es lautet. Ich bin mir nicht sicher, warum ich mich nicht einfach mit meinem privaten Schlüssel anmelden kann.

Könnte es an meinen SSH-Servereinstellungen liegen? Habe ich versehentlich Passwörter für alle Konten verlangt, obwohl sich deren öffentlicher Schlüssel in der Datei ~/.ssh/authorized_keys befindet? Oder hat meine Änderung der Lese-/Ausführungsberechtigungen für den Ubuntu-Benutzer das Lesen seiner Datei authorized_keys durch das System verhindert?

Und was kann ich tun, um mich wieder als Root-Benutzer anzumelden? Ich kann mich immer noch als neuer Benutzer anmelden, aber dieser hat keine Sudo-Berechtigungen und ich kann kein Sudo-Benutzer werden, da ich das Kennwort nicht habe.

Bitte helfen Sie. Vielen Dank im Voraus

Antwort1

Die richtigere Lösung wäre gewesen, wenn sie Ihnen ihren öffentlichen Schlüssel gegeben hätte, damit Sie einen Benutzer erstellen und diesen öffentlichen Schlüssel zur Datei ~/.ssh/authorized_keys des Benutzers hinzufügen könnten.

Angenommen, Sie haben sich tatsächlich AllowUsers newuser1selbst blockiert, weil Sie es versäumt haben, sich selbst in die Liste aufzunehmen.

Sie werden zur Eingabe eines Passworts aufgefordert, weil sshd jetzt alle zur Eingabe eines Passworts auffordert. Selbst wenn Sie ein Passwort festgelegt hätten, würde es nicht funktionieren, da Ihr Benutzer nicht mehr über ssh auf die Maschine zugreifen darf.

Denken Sie beim nächsten Mal daran, Ihre eigene Anmeldung von einem anderen Fenster aus zu testen.

Sie sind ausgesperrt und die einzige Problemumgehung besteht darin, die Instanz zu stoppen, eine neue zu starten (oder eine andere vorhandene zu verwenden, falls Sie eine haben; in jedem Fall muss sie sich in derselben Verfügbarkeitszone befinden), die Root-Festplatte abzutrennen, sie an eine andere Instanz anzuhängen, sie einzuhängen, die Fehlkonfiguration zu beheben, sie auszuhängen, abzutrennen, wieder an die ursprüngliche Instanz anzuhängen und sie erneut zu starten.

verwandte Informationen