
Angenommen, ich habe ein Remote-System mit dem Namen „Remotesystem“ und ein Benutzerkonto „foouser“ auf diesem System.
Ich weiß, dass ich auf meinem lokalen System als lokaler Benutzer „foouser“ ein SSH-Schlüsselpaar generieren und den öffentlichen Schlüssel in die Datei „/home/foouser/.ssh/authorized_keys“ auf „remotesystem“ einfügen kann. Wenn ich als „foouser“ von meinem lokalen System per SSH auf „remotesystem“ zugreife, verwendet SSH das Schlüsselpaar, um mich zu authentifizieren.
Aber was ist, wenn mein lokaler Benutzername nicht mit dem Benutzernamen auf dem Remote-System übereinstimmt? Das heißt, was ist, wenn ich als lokaler Benutzer „baruser“ per SSH auf „remotesystem“ zugreifen möchte? Offensichtlich muss ich ein Schlüsselpaar für „baruser“ generieren und den öffentlichen Schlüssel zu „/home/foouser/.ssh/authorized_keys“ hinzufügen. Dann sollte ich in der Lage sein, „ssh foouser@remotesystem“ zu verwenden, während ich lokal als „baruser“ angemeldet bin, und SSH wird das Schlüsselpaar zur Authentifizierung verwenden, richtig?
Ich frage, weil ich erfolglos versuche, die Schlüsselauthentifizierung in diesem Szenario zum Laufen zu bringen. Ich bin nicht sicher, ob es an der Nichtübereinstimmung des Benutzernamens oder an einem Konfigurationsproblem mit dem SSH-Server auf dem Remote-System liegt.
Antwort1
Ja, das können Sie genauso machen, wie Sie es beschrieben haben.
baruser@hier ~$ ssh-add -l 4096 10:b3:fd:29:08:86:24:a6:da:0a:dd:c6:1e:b0:66:6a id_rsa (RSA) baruser@hier ~$ ssh foouser@remotesystem Motd-Nachricht usw. foouser@remotesystem ~$
Antwort2
Es ist ein bisschen abseits, aber …
Wenn Sie für einen Remote-Server immer den gleichen Benutzernamen verwenden, kann es für Sie auch nützlich sein, Ihrer SSH-Konfiguration einen Host hinzuzufügen:
Host remotesystem
User baruser
Auf diese Weise müssen Sie beim Anmelden nicht daran denken, Ihren Benutzernamen anzugeben, und Sie können dies ausschließen, wenn in Zukunft Probleme mit Schlüsseln auftreten.
Antwort3
Ihr lokaler Benutzername spielt keine Rolle (abgesehen davon, dass der private Schlüssel im Home-Verzeichnis Ihres lokalen Benutzers liegen muss). Kopieren Sie einfach den Schlüssel in den authorized_keys
Abschnitt des Remote-Benutzers und es wird funktionieren.
Antwort4
Bei allen SSH-bezogenen Problemen sollten Sie als Erstes die Ausführlichkeit des Clients erhöhen:
ssh Benutzer@Maschine -vvv
Wenn Sie dadurch keine Erkenntnisse über den Fehler gewinnen, müssen Sie die Protokollebene auf dem Server ändern und den Daemon neu starten.
Protokollebene DEBUG3
Sie sollten die Debug-Ausgabe in /var/log/auth.log finden (oder wo auch immer SSH für die Protokollierung konfiguriert ist). Wenn Sie das Problem gefunden haben, denken Sie daran, es wieder auf den Stand zurückzusetzen, in dem Sie es gefunden haben.