Anmeldung am Host über ssh nicht möglich, siehe 'Verbindung geschlossen' in Authlog

3094
Andre M

Ich versuche, einem Benutzer den Remotezugriff auf einen Linux-Host zum Zwecke der kontinuierlichen Bereitstellung zu ermöglichen, aber ich bin nicht sicher, warum der Benutzer keine Verbindung zum Host herstellen kann, obwohl der öffentliche Schlüssel eingerichtet wird.

Auf dem Host-Computer befinden sich die folgenden Dateien im ~/.sshOrdner des Benutzers :

  • authorized_keys
  • config
  • github.project1.key

Diese Dateien und ihr Inhalt stimmen mit dem Inhalt des SSH-Ordners des Benutzers auf einem anderen Host überein, von dem aus wir eine Verbindung herstellen können.

Die Konnektivität vom Remote-Host wird über getestet (nicht die tatsächlichen Werte):

ssh validuser@devhost -i ~/.ssh/myprivatekey.key 

Dafür bekommen wir:

Permission denied (publickey) 

Beim Versuch, die Situation auf dem Host zu analysieren /var/log/auth.log, erscheint der folgende Eintrag:

Oct 16 14:59:10 devhost sshd[24020]: Connection closed by 62.70.23.213 port 51759 [preauth] 

Seltsamerweise, wenn ich während ssh einen ungültigen Benutzer ausprobiere (kein Zugang zum Host), erhalte ich Folgendes:

Oct 16 15:11:17 devhost sshd[24069]: Invalid user xubuntu from 67.70.26.223 Oct 16 15:11:17 devhost sshd[24069]: input_userauth_request: invalid user xubuntu [preauth] Oct 16 15:11:17 devhost sshd[24069]: Connection closed by 62.70.23.213 port 51888 [preauth] 

Andere wichtige Dinge:

  • Standardbenutzer ist ubuntu, auf den wir zugreifen können
  • es gibt kein /etc/nologin
  • Soweit ich das beurteilen kann, /etc/passwdist das Login erlaubt, basierend auf bash als Shell
  • Host ist eine gehostete Ubuntu-basierte VM

Hat jemand irgendwelche Ideen?

1

2 Antworten auf die Frage

1
marshki

Läuft der sshDienst auf der Remote-Maschine (Ubuntu)? Testen Sie es mit: sudo service ssh status

Wenn es nicht installiert ist, fügen Sie es hinzu mit: sudo apt-get install open-ssh server

Sie können den Dienst bei Bedarf konfigurieren mit:

sudo vi /etc/ssh/sshd_config

Stellen Sie jedoch sicher, dass Sie wissen, was Sie tun möchten, bevor Sie die Datei bearbeiten.

So starten Sie den Dienst neu:

sudo service ssh restart.

0
Andre M

Beim Vergleich der authorized_keysDatei stellte sich heraus, dass sie nicht genau mit der Datei auf dem Host übereinstimmt, von der sie kopiert wurde (4 Byte Längenunterschied). Durch das Kopieren der Inhalte wurde ein Login möglich.

Ich hatte gehofft, dass die /var/log/auth.logDatei in Bezug auf die Ungültigkeit des Schlüssels gelöscht worden wäre, obwohl ich glaube, dass dies durch Anpassen des Protokollpegels in /etc/ssh/sshd_config(Standardeinstellung INFO) hätte erreicht werden können.