Verbindung zum Server als Root über SSH nicht möglich

Verbindung zum Server als Root über SSH nicht möglich

Ich möchte den Remote Explorer in VS Code unter Windows verwenden, um von Ubuntu aus auf einen Server zuzugreifen. Die ständige Eingabe eines Passworts ist lästig, deshalb habe ich versucht, mit ssh-keygen einen SSH-Schlüssel zu generieren. Der Schlüssel funktioniert für einen normalen Benutzer einwandfrei, aber ich kann mich nicht als Root anmelden.

Der Fehler von cmd (ssh root@<server_ip>):

root@<server_ip>: Permission denied (publickey,password).

Der Fehler in /var/log/auth.log:

sshd[1012327]: Connection reset by authenticating user root <client_ip> port 59021 [preauth]

Alle Lösungen, die ich gesehen habe, erwähnten sshd_config, aber darin ist die Root-Anmeldung aktiviert. sshd_config:

# Authentication:

#LoginGraceTime 2m
PermitRootLogin yes
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10

PubkeyAuthentication yes

# Expect .ssh/authorized_keys2 to be disregarded by default in future.
#AuthorizedKeysFile     .ssh/authorized_keys .ssh/authorized_keys2

#AuthorizedPrincipalsFile none

#AuthorizedKeysCommand none
#AuthorizedKeysCommandUser nobody

Ich habe den öffentlichen Schlüssel zur /home/user/.ssh/authorized_keysDatei hinzugefügt. Mir scheint, dass dieser Schlüssel nur für den Benutzer ist, aber den Anleitungen zufolge kann ich ihn auch für Root verwenden.

Warum kann ich mich nicht als Root verbinden?

Antwort1

Mir scheint, dass dieser Schlüssel nur für den Benutzer ist, aber den Anleitungen zufolge kann ich ihn anscheinend auch als Root verwenden.

Die Reiseführer haben Sie in die Irre geführt.

Jeder Benutzer hat sein eigenes Home-Verzeichnis und damit auch seine eigene authorized_keys. Das Home-Verzeichnis von Root ist in der Regel /root/. Daher ist die relevante Datei für die Anmeldung als Root /root/.ssh/authorized_keys. Es hat nichts mit zu tun /home/user/.ssh/authorized_keys.

Denken Sie darüber nach. /home/user/.ssh/authorized_keysgehört einem Benutzer user, der ein normaler Benutzer ist und möglicherweiseoder nichthat Sudo-Zugriff. Der Benutzer kann dort jeden beliebigen Schlüssel registrieren. Wenn root dieselbe Datei verwenden würde, könnte sich der Benutzer als root anmelden, indem er einfach einen beliebigen Schlüssel autorisiert.

verwandte Informationen