SSH erlaubt keine Anmeldung mit öffentlichem Schlüssel für andere Benutzer als Root

SSH erlaubt keine Anmeldung mit öffentlichem Schlüssel für andere Benutzer als Root

Ich habe eine Ubuntu 22.04.1-Installation und verwende die Pubkey- und Private-Key-Authentifizierung, um mich bei SSH anzumelden.

Hier sind die Schritte, die ich unternommen habe

  1. Ich habe zuerst ein Schlüsselpaar auf meinem Mac erstellt.
  2. Ich ging dann auf den Server und bearbeitete, /etc/ssh/sshd_configum einen neuen Port für den SSH-Login hinzuzufügen
  3. Habe diesen Port in der Firewall (UFW) geöffnet und den Standardport 22 geschlossen.
  4. Ich habe versucht, ssh-copy-id -i /path/to/public/key root@hostden öffentlichen Schlüssel auf den Server zu kopieren.
  5. Dann /etc/ssh/sshd_configerneut, um die Kennwortauthentifizierung zu untersagen
  6. SSHD neugestartet und die Verbindung mit Root getestet. Die Verbindung funktionierte einwandfrei.
  7. Ich habe die Passwortauthentifizierung wieder aktiviert und SSH mit einem meiner Sudo-Benutzer (nicht root) mit Benutzer + Passwort über den neuen Port getestet. Die Verbindung funktionierte einwandfrei.
  8. Ich habe versucht, ssh-copy-id -i /path/to/public/key user@hostden öffentlichen Schlüssel für diesen bestimmten Benutzer auf den Server in die Datei .ssh/authorised_keys zu kopieren. Das Verfahren hat keine Fehler zurückgegeben und gemeldet, dass ein Schlüssel kopiert wurde. Ich habe mich beim Server angemeldet und die Datei authorized_keys noch einmal überprüft und der Schlüssel war tatsächlich da.
  9. Dann /etc/ssh/sshd_configerneut, um die Kennwortauthentifizierung zu untersagen
  10. SSHD neu gestartet und die Verbindung mit dem Benutzer getestet.Hier habe ich ein ProblemDer Benutzer kann sich nicht anmelden. Beim Versuch erhalte ich eine Fehlermeldung: Permission denied (publickey). Wenn ich die Kennwortauthentifizierung wieder aktiviere, kann ich mich problemlos verbinden, aber immer noch ohne die Schlüssel. Nur eine Standardverbindung mit Benutzername und Kennwort.

Das Schlüsselpaar ist getestet, da ich für den Root-Benutzer genau dieselbe Kombination verwende. Ich möchte Permitrootlogin deaktivieren, kann es aber nicht. Irgendwelche Ideen?

Bearbeiten: Ich bin dem Rat von @Jos gefolgt und habe eine ausführliche Anmeldung mit Root und eine mit Benutzer durchgeführt. Hier sind die beiden Ergebnisse. Ich habe alle sensiblen Informationen und Schlüssel, IPs usw. herausgefiltert und die Ergebnisse in Screenshots umgewandelt:

Root-Debugging-Verbindung mit Verbose

und der Benutzer (der keine Verbindung herstellen kann):

Benutzer-Debugging-Verbindung mit ausführlichen

Bearbeiten: @steeldriver hat vorgeschlagen, ein namei auszuführen, um zu prüfen, ob die authorized_keys-Dateien zu freizügig sind. Hier ist die Ausgabe:

| => namei -l ~/.ssh/authorized_keys
f: /home/spitixorismesiti/.ssh/authorized_keys
drwxr-xr-x root             root             /
drwxr-xr-x root             root             home
drwxrwx--- spitixorismesiti spitixorismesiti spitixorismesiti
drwx------ spitixorismesiti spitixorismesiti .ssh
-rw------- spitixorismesiti spitixorismesiti authorized_keys

verwandte Informationen