logo

Suletuxe.de
Linux - Nutzer
helfen
Linux - Nutzern

Willkommen, Gast. Bitte Login oder Registrieren.
29. März 2024, 09:43:40
Übersicht Hilfe Suche Login Registrieren

Amateurfunk Sulingen
Diskussions- und Newsboard der Linux Interessen Gruppe Suletuxe  |  Makerprojekte  |  Raspberry Pi und Co (Einplatinencomputer)  |  Thema: Raspberry SSH Zugang mit Fehlermeldung « zurück vorwärts »
Seiten: [1] nach unten Drucken
   Autor  Thema: Raspberry SSH Zugang mit Fehlermeldung  (Gelesen 329 mal)
Dietrich
Full Member
***

Offline

Einträge: 120



Immer schön neugierig bleiben

Profil anzeigen
Raspberry SSH Zugang mit Fehlermeldung
« am: 13. Dezember 2023, 19:04:16 »

Moinsen,
dachte mal eben schnell eine SD-Karte mit einem Image versehen und los geht's, weit gefehlt.
Auf die erste Anmeldung kam nix, bis ich festellte das der SSH Zugang bei RaspienOS standardmäßig nicht aktiviert ist.
Ok, Tastatur, Bildschirm ran und aktiviert, das Ergebnis siehe unten

[dietrich@dietrich-medion ~]$ sudo ssh pi@192.168.178.42
[sudo] Passwort für dietrich:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!    @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ED25519 key sent by the remote host is
SHA256:qjP35uFIJTr4k9VhTSxVsXhetrT82UVieFdJKl6Pank.
Please contact your system administrator.
Add correct host key in /root/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /root/.ssh/known_hosts:2
Host key for 192.168.178.42 has changed and you have requested strict checking.
Host key verification failed.
[dietrich@dietrich-medion ~]$



Gespeichert
Andreas
Administrator
*****

Offline

Einträge: 1135



Linux von Innen

Profil anzeigen
Re:Raspberry SSH Zugang mit Fehlermeldung
« Antwort #1 am: 13. Dezember 2023, 19:36:33 »

Du hast Dich auf diese IP schon mal eingeloggt - aber der Schlüssel hat sich in der Zwischenzeit geändert. Das könnte eine man-in-the-middle-attacke sein: der Zugriff wird verweigert.

Lösung:

Folge den Anweisungen in der Fehlermeldung und lösche die Zeile(n) die "192.168.178.42 " enthalten in deiner ~/.ssh/known_hosts

LG
Andreas
« Letzte Änderung: 13. Dezember 2023, 19:37:28 von Andreas » Gespeichert

Wissen ist das einzige Gut, das mehr wird, wenn man es teilt - wenn es Menschen gibt, die es weitergeben, und es Menschen gibt, die bereit sind, dieses Geschenk auch unter eigenem Einsatz anzunehmen.


Freiheit zu erkämpfen reicht nicht. Man muss sie auch verteidigen.
Dietrich
Full Member
***

Offline

Einträge: 120



Immer schön neugierig bleiben

Profil anzeigen
Re:Raspberry SSH Zugang mit Fehlermeldung
« Antwort #2 am: 13. Dezember 2023, 20:00:48 »

Hallo Andreas,

danke für die Lösung des Problems, bei dem was alles geschrieben steht war ich mir nicht sicher was zu tun ist.
Wenn die da schreiben ich soll den korrekten Schlüssel eingeben, kommt man nicht automatisch auf löschen des Eintrages.

Wieder ein Stückel schlauer geworden 

LG
Dietrich


Gespeichert
Sebastian
Sr. Member
****

Offline

Einträge: 363





Profil anzeigen
Re:Raspberry SSH Zugang mit Fehlermeldung
« Antwort #3 am: 13. Dezember 2023, 20:31:03 »

Genau, was Andreas schon sagte.

Du musst dich schon mal mit deinem Notebook/PC, was auch immer, mit deinen Rasbi unter der IP 192.168.178.42 verbunden haben. Bei der ersten Verbindung merkt sich dann dein SSH Client den Schlüssel von deinem PI und vergleicht diesen bei jeder neuen Verbindung, ob dieser immer noch derselbe ist.

Grade, wenn man ein neues Image für einen PI verwendet, ist die Wahrscheinlichkeit groß, dass in diesem Image, das du auf die SD gepackt hast, ein neuer SSH Key für deinen PI drin steckt. Ergo bei der nächsten Verbindung sagt dein SSH Client "Achtung der Schlüssel stimmt nicht mit dem überein, den ich mir für die IP-Adresse  192.168.178.42 gemerkt habe". Da könnte also jemand etwas Böses versuchen und sich als dein PI ausgeben. Dies ist aber wie gesagt zu erwarten, wenn man ein anderes Image mit einem anderen Key benutzt und kann deswegen mit den Anweisungen aus der Fehlermeldung behoben werden.

PS:

Übrigens der Offizielle weg um eine Zeile aus der .ssh/known_hosts zu löschen ist nicht der mithilfe eines Text-Editors wie viele es gerne machen. Sondern ist in dem Tool ssh-keygen versteckt.

Code:

ssh-keygen -R hostname [-f known_hosts_file]

Zitat:
-R hostname | [hostname]:port
              Removes  all keys belonging to the specified hostname (with optional port number) from a known_hosts file.  This option is useful to
              delete hashed hosts (see the -H option above).

Also in deinem Fall hieße der dann so wenn du den Standard SSH Port 21 verwendest:

Code:

ssh-keygen -R 192.168.178.42

Warum gibt es diese Möglichkeit? Denn man kann aus Sicherheitsgründen die Hostnamen/IP-Adressen auch gehasht in der .ssh/known_hosts speichern. Dann kann man die passende Zeile mit einem Editor nicht mehr finden. Dafür gibt es also die -R Option.
Gespeichert

Dietrich
Full Member
***

Offline

Einträge: 120



Immer schön neugierig bleiben

Profil anzeigen
Re:Raspberry SSH Zugang mit Fehlermeldung
« Antwort #4 am: 13. Dezember 2023, 20:54:48 »

Hallo Sebastian,

ich habe es da eher mit dem Schweizer Taschenmesser MC ggf mit sudo starten dann klappt es.

LG Dietrich
Gespeichert
Sebastian
Sr. Member
****

Offline

Einträge: 363





Profil anzeigen
Re:Raspberry SSH Zugang mit Fehlermeldung
« Antwort #5 am: 13. Dezember 2023, 21:23:22 »

Hallo Dietrich,

Der Trick mit sudo würde aber auch nur einmal klappen, falls sich der Key von deinen Rasbi mal wieder ändern sollte.

Denn mit sudo hast du deinen SSH Client als Root gestartet. Root hat seine eigene known_hosts Datei in seinem Heimverzeichnis wie jeder andere Benutzer auch. Mit anderen Worten der Lokale Benutzer Root hatte noch nie eine Verbindung zu deinem Pi unter der 192.168.178.42 Adresse aufgebaut, also war seine known_hosts Datei noch leer bzw. hatte noch keinen Eintrag dazu. Denn bekommt sie aber bei der ersten Verbindung. Ab der zweiten hättest du also wieder das Problem, falls sich der Key auf deinen PI ändert, auch als Root.

Du kannst dir ja mal die known_hosts Datei von deinem Lokal Root Benutzer in seinem Heimatverzeichnis anschauen, die findest du unter

/root/.ssh/known_hosts

Achtung um da rein schauen zu können musst du mit sudo arbeiten, da in das Verzeichnis /root nur root hereinschauen darf.

Edit:

PS:

Mit MC ist auch nichts gegen auszusetzen. Ich wollte nur eine weitere Möglichkeit aufzeigen, die genutzt werden kann bzw. genutzt werden muss, wenn man erst mal anfängt, mit Hashes zu arbeiten. Der Heimanwender brauch so was wahrscheinlich nicht. Aber im Firmenumfeld, wo es auf Sicherheit ankommt, da schon 

Edit:

@Dietrich
Nachtrag glaube, ich habe dich mit sudo falsch verstanden. Du meintest, glaube ich eher den MC mit sudo zu starten als Beispiel, und nicht den SSH Client. Das ist dann natürlich richtig, wenn man ein Programm wie MC startet, mit Root rechten. Dann sollte man Lokal alles bearbeiten können.

Das Beispiel als ich dich erst falsch verstanden habe, den SSH Client als Root zu starten, behält natürlich auch seine Gültigkeit.

LG
Sebastian
« Letzte Änderung: 14. Dezember 2023, 09:45:06 von Sebastian » Gespeichert

Dietrich
Full Member
***

Offline

Einträge: 120



Immer schön neugierig bleiben

Profil anzeigen
Re:Raspberry SSH Zugang mit Fehlermeldung
« Antwort #6 am: 15. Dezember 2023, 16:20:19 »

Hallo Sebastian,
sorry da bin ich falsch verstanden worden,

MC mit sudo gestartet, damit ich beim speichern sauber mit F2 rauskomme
Gespeichert
Andreas
Administrator
*****

Offline

Einträge: 1135



Linux von Innen

Profil anzeigen
Re:Raspberry SSH Zugang mit Fehlermeldung
« Antwort #7 am: 15. Dezember 2023, 17:16:32 »

Sebastian meinte:

Je nachdem unter welchem Usernamen Du die ssh Session startest landet der entfernte host in der known_hosts Datei im Home-Verzeichnis des Users.

Beispiel:

Du startest eine Konsole als "dietrich". In der Konsole gibst Du ein
Code:
ssh ip-des-clients -u root

In diesem Fall wäre die zu editierende Datei nicht im Verza#eichnis von root, sondern von dietrich! Und dann kannst Du den mc auch als Dietrich starten.

LG
Andreas
Gespeichert

Wissen ist das einzige Gut, das mehr wird, wenn man es teilt - wenn es Menschen gibt, die es weitergeben, und es Menschen gibt, die bereit sind, dieses Geschenk auch unter eigenem Einsatz anzunehmen.


Freiheit zu erkämpfen reicht nicht. Man muss sie auch verteidigen.
Sebastian
Sr. Member
****

Offline

Einträge: 363





Profil anzeigen
Re:Raspberry SSH Zugang mit Fehlermeldung
« Antwort #8 am: 15. Dezember 2023, 21:03:07 »

Nein, ich habe das noch anders gemeint. Und zwar das, wenn man Lokal den SSH Client als Root startet wird die Lokale known_hosts Datei geprüft.

Code:

sudo ssh ip-des-servers -u dietrich

So würde Lokal ein Eintrag in /root/.ssh/known_hosts entstehen. Und dieser Eintrag würde beim nächsten Mal mit dem Key des Pis abgeglichen werden.

Mit anderen Worten es wird ein anderer Eintrag aus einer anderen known_hosts zur Prüfung herangezogen als wenn der Befehl so aufgerufen wird:

Code:

ssh ip-des-servers -u dietrich

Man beachte das fehlende sudo. Damit würde ein Eintrag unter $HOME/.ssh/known_hosts zur prüfung des Remote Keys herangezogen werden. Wobei dieses Mal mit $HOME nicht das von Root gemeint ist.

Man bekäme eine andere Warnung, dass der Remote Server noch nicht bekannt ist.


Edit:

Ich weiß, das macht nicht viel Sinn ssh als Root zu starten. Aber ich kam halt schnell auf die Idee, da ich sudo auch dafür verwende Befehle, als anderen Benutzer auszuführen. Weil sudo eigentlich ja ein Programm ist um kurzfristig ein Befehl als ein anderer Benutzer auszuführen.

Angenommen, es gibt auf einen Host den Benutzer sebastian und dietrich.

Dann könnte ich als sebastian einen Befehl kurzfristig in Dietrichs Namen so abschicken:

Code:

sudo -u dietrich ssh ip-zum-server -u dietrich

Dadurch würde ich ssh als Dietrich starten und somit würde auch seine ~dietrich/.ssh/known_host Datei herangezogen werden. Voraussetzung ich als sebastian habe die Berechtigung dafür in der /etc/sudoers
« Letzte Änderung: 15. Dezember 2023, 21:15:12 von Sebastian » Gespeichert

Andreas
Administrator
*****

Offline

Einträge: 1135



Linux von Innen

Profil anzeigen
Re:Raspberry SSH Zugang mit Fehlermeldung
« Antwort #9 am: 16. Dezember 2023, 07:52:04 »

Hallo Sebastian,

wir meinen schon so in etwa das Gleiche - wir drücken es nur anders aus.

Fazit (das ich meinte und Du auch):
Es wird die .ssh/known_hosts benutzt unter deren Benutzer der ssh Befehl aufgerufen wurde.

LG
Andreas
Gespeichert

Wissen ist das einzige Gut, das mehr wird, wenn man es teilt - wenn es Menschen gibt, die es weitergeben, und es Menschen gibt, die bereit sind, dieses Geschenk auch unter eigenem Einsatz anzunehmen.


Freiheit zu erkämpfen reicht nicht. Man muss sie auch verteidigen.
Sebastian
Sr. Member
****

Offline

Einträge: 363





Profil anzeigen
Re:Raspberry SSH Zugang mit Fehlermeldung
« Antwort #10 am: 16. Dezember 2023, 19:46:09 »

Hallo Andreas,

Angenommen man ist als Benutzer dietrich an einem Notebook angemeldet. Und man möchte sich jetzt auf seinem Rassbery Pi mit dem Benutzer "pi" anmelden. Dann gibt es schon einen Unterschied zwischen diesen beiden Befehlen

Code:

ssh IP-des-SSH-Server-auf-dem-Pi -u pi

sudo ssh IP-des-SSH-Server-auf-dem-Pi -u pi

Der erste Befehl ohne sudo nutzt zum Abgleich, ob der SSH Server des PI schon bekannt ist, die known_hosts Datei von dem Benutzer dietrich also

~dietrich/.ssh/known_hosts

und der andere Befehl mit sudo würde die known_hosts von root zum Abgleich zu rate ziehen, also diese hier:

/root/.ssh/known_hosts

Bei beiden Befehlen ist man am Ende dann trotzdem als Benutzer "pi" auf dem Rasberry Pi eingeloggt.

Dem shh Server auf dem Pi wiederum interessiert die known_hosts Datei überhaupt nicht. Der prüft nur, ob die Credentials für den SSH Login gültig sind. Der Client könnte eh ständig wechseln z.b. wenn dietrich sich nicht von seinem Notebook auf dem Pi einloggt, sondern über einen PC oder der gleichen.

Die known_hosts Datei ist also nur eine Hilfe für Clients um sich Adressen und Keys von SSH Servern zu merken. Um den Client dann warnen zu können, wenn der Key des SSH Servers nicht mehr mit der gemerkten Adresse des Servers übereinstimmt.

Deswegen hätte es (angenommen es wurde noch nie der SSH Client mit sudo gestartet, um sich auf dem PI anzumelden) keine Warnung gegeben, dass der SSH Key des SSH-Servers auf dem PI nicht mehr mit der IP-Adresse übereinstimmt, sondern der SSH Client hätte gefragt, ob der Server in die Known_hosts Datei aufgenommen werden soll, da der ssh Client vorher von root noch nie gestartet wurde um eine Verbindung zu dem PI herzustellen, um sich mit welchem Login auch immer anzumelden. Der Login Account, mit dem man sich auf dem Server anmelden möchte, spielt dabei nämlich keine Rolle.

Selbst falls wir immer noch beide dasselbe meinen sollten, dann steht es hier jetzt halt etwas ausführlicher für diejenigen, die sich mit den Details beschäftigen möchten, aber vielleicht nicht dem Englischen so mächtig sind. Schaden kann es nicht 

LG
Sebastian
« Letzte Änderung: 16. Dezember 2023, 19:52:23 von Sebastian » Gespeichert

Andreas
Administrator
*****

Offline

Einträge: 1135



Linux von Innen

Profil anzeigen
Re:Raspberry SSH Zugang mit Fehlermeldung
« Antwort #11 am: 17. Dezember 2023, 08:40:29 »

Hallo Sebastian,

genau das was Du beschrieben hast habe ich mit meinem fettgedruckten Satz gesagt...

Rufst Du ohne sudo auf, läuft er mit deinen Rechten. Rufst Du ihn mit sudo auf, läuft er als root (mit allen Konsequenzen wie "was ist eigenlich ~")

LG
Andreas
Gespeichert

Wissen ist das einzige Gut, das mehr wird, wenn man es teilt - wenn es Menschen gibt, die es weitergeben, und es Menschen gibt, die bereit sind, dieses Geschenk auch unter eigenem Einsatz anzunehmen.


Freiheit zu erkämpfen reicht nicht. Man muss sie auch verteidigen.
Seiten: [1] nach oben Drucken 
Diskussions- und Newsboard der Linux Interessen Gruppe Suletuxe  |  Makerprojekte  |  Raspberry Pi und Co (Einplatinencomputer)  |  Thema: Raspberry SSH Zugang mit Fehlermeldung « zurück vorwärts »
Gehe zu: 


Login mit Username, Passwort und Session Länge

 Es wird die Verwendung "Blink"-basierter Browser und mindestens 1024x768 Pixel Bildschirmauflösung
für die beste Darstellung empfohlen
 
freie Software für freie Menschen!
Powered by MySQL Powered by PHP Diskussions- und Newsboard der Linux Interessen Gruppe Suletuxe | Powered by YaBB SE
© 2001-2004, YaBB SE Dev Team. All Rights Reserved.
- modified by Andreas Richter (DF8OE)
Valid XHTML 1.0! Valid CSS!