it-swarm.com.de

ssh: Hostname [Hostname] konnte nicht aufgelöst werden: Knotenname oder Servername angegeben oder nicht bekannt

Ich versuche, ein VPN mit einem Raspberry Pi einzurichten, und der erste Schritt besteht darin, die Fähigkeit zu erlangen, ssh von außerhalb meines lokalen Netzwerks in das Gerät einzuspielen. Aus welchem ​​Grund auch immer, dies erweist sich als unmöglich und ich habe nicht die geringste Ahnung, warum. Wenn ich versuche, ssh mit [email protected] Auf meinen Server zu laden, erhalte ich die Fehlermeldung:

ssh: Could not resolve hostname [hostname]: nodename nor servname provided, or not known 

Ich kann mich jedoch mit

ssh [email protected][local IP]

Der Server ist ein Raspberry Pi Model B, auf dem die neueste Version von Raspbian ausgeführt wird, und der Computer, mit dem ich eine Verbindung herstellen möchte, ist ein Macbook Pro, auf dem Mavericks ausgeführt werden. ssh wurde auf dem Raspberry Pi aktiviert, als ich Raspbian einrichtete.

Ich habe stundenlang in Stack Overflow nachgesehen, ob jemand anderes dieses Problem hatte, und ich habe nichts gefunden. In jedem Tutorial zu ssh, das ich finde, heißt es, dass ich es einfach auf dem Remote-Computer einrichten und mich von überall mit einem Hostnamen anmelden kann, und ich hatte damit nie Erfolg.

105
qaxf6auux

Vor kurzem bin ich auf dasselbe Problem gestoßen. Ich konnte zu meinem pi in meinem Netzwerk ssh, aber nicht von außerhalb meines Heimnetzwerks.

Ich habe schon:

  • installierte und testete ssh in meinem Heimnetzwerk.
  • Setze eine statische IP für meinen pi.
  • Richten Sie einen dynamischen DNS-Dienst ein und installieren Sie die Software auf meinem Pi. Ich habe auf diese Anweisungen verwiesen, um die statische IP-Adresse einzurichten, und es gibt noch viele weitere Anleitungen.

Außerdem habe ich auf meinem Router die Portweiterleitung für das Hosten einer Website eingerichtet und für ssh sogar die Portweiterleitung von Port 22 auf die statische IP meines PIS festgelegt, aber das Feld leer gelassen, in dem Sie die Anwendung angeben, für die Sie die Portweiterleitung ausführen der Router. Wie auch immer, ich habe 'ssh' in dieses Feld eingefügt und VOILA! Eine funktionierende ssh verbindung von überall zu meinem pi.

Ich schreibe die Portweiterleitungseinstellungen meines Routers auf.

(ApplicationTextField) _ssh (externer Port) _22 (interner Port) _22 (Protocal) _Both (To IP Address) _192.168.1. ### (Enabled) _checkBox

Die Einstellungen für die Portweiterleitung können jedoch für verschiedene Router unterschiedlich sein. Suchen Sie daher nach Anweisungen für Ihren Router.

Wenn ich mich jetzt außerhalb meines Heimnetzwerks befinde, verbinde ich mich mit meinem Pi, indem ich Folgendes eingebe:

ssh pi @ [Hostname]

Dann kann ich mein Passwort eingeben und mich verbinden.

23
ekwaters

Ich hatte das gleiche Problem beim Herstellen einer Verbindung zu einem Remotecomputer. aber ich konnte mich wie folgt anmelden:

ssh -p 22 [email protected]

oder:

ssh -l myName -p 22 hostname
82
tokhi

Wenn Sie einen Mac verwenden, wurde das Problem durch einen Neustart des DNS-Responders behoben.

Sudo killall -HUP mDNSResponder
76
Mo Bitar

Wenn Sie von überall auf der Welt Zugriff auf Ihr VPN benötigen, müssen Sie einen Domänennamen registrieren und diesen auf die öffentliche IP-Adresse Ihres VPN/Netzwerk-Gateways verweisen lassen. Sie können auch einen dynamischen DNS-Dienst verwenden, um einen Hostnamen mit Ihrer öffentlichen IP-Adresse zu verbinden.

Wenn Sie nur von Ihrem Mac auf Ihren Raspberry ssh müssen innerhalb Ihres lokalen Netzwerks, gehen Sie folgendermaßen vor: Bearbeiten Sie auf Ihrem Mac /etc/hosts. Angenommen, die Himbeere hat den Hostnamen "berry" und die IP "172.16.0.100", fügen Sie eine Zeile hinzu:

# ip           hostname
172.16.0.100   berry

Jetzt: ssh [email protected] sollte arbeiten.

9
grebneke

Ich hatte das gleiche Problem, das ich beheben konnte, indem ich dem Hostnamen ein .local hinzufügte, ala ssh [email protected]

7
horcle_buzz

Wenn Ihr Befehl lautet:

$ ssh -p 1122  path/to/pemfile [email protected][hostip/hostname]

Der gleiche Fehler tritt auch auf

ssh: Could not resolve hostname [hostname]: nodename nor servname provided, or not known

wenn Sie die Option verpassen -i /path/to/pemfile von ssh

Das Kommando sollte also lauten:

$ ssh -p 1122 -i path/to/pemfile [email protected][hostip/hostname]
4
karthik vee

Ich hatte das gleiche Problem: Die unter Einstellungen -> Freigabe -> Remote-Anmeldung angezeigte Adresse funktionierte nicht und ich bekam einen '... Knotennamen oder Servernamen angegeben oder nicht bekannt'. Als ich jedoch die Einstellungen manuell bearbeitete (unter Einstellungen -> Freigabe -> Remote-Anmeldung -> Bearbeiten) und "Dynamischen globalen Hostnamen verwenden" aktivierte, funktionierte es plötzlich.

enter image description here

enter image description here

3
user2489252

Ich musste eine Verbindung zum Remote-Amazon-Server herstellen

ssh -i ~/.ssh/test.pem -fN -L 5555:localhost:5678 [email protected]

Ich habe den folgenden Fehler erhalten.

ssh: Could not resolve hostname <hostname.com>: nodename nor servname provided, or not known

Lösung Für Mac OSX

Durch Pingen des Hosts wurde das Problem behoben. Ich benutze Mac OSX Seirra.

ping hostname.com

Jetzt ist das Problem behoben. Verbindung zum Server möglich.

Anmerkung : Ich habe diese Lösung auch versucht. Aber es hat nicht geklappt. Dann hat ping das Problem behoben.

3
mythicalcoder

Es scheint, dass einige Apps symlinked /etc/hosts Nicht lesen (zumindest unter macOS), Sie müssen es fest verknüpfen.

ln /path/to/hosts_file /etc/hosts

2
Andrei Vaduva

Das passierte mir, als ich versuchte, auf Github zuzugreifen. Das Problem ist, dass ich es mir angewöhnt habe:

git remote add <xyz> ssh:\\[email protected]

Wenn Sie jedoch diesen Fehler in der Frage haben, entfernen Sie ssh:\\ kann das Problem beheben. Es hat es für mich gelöst!

Beachten Sie, dass Sie ein git remote remove <xyz> und füge die Remote-URL erneut hinzu, ohne ssh:\\.

1
Monkpit

Versuchen Sie dies unter Berücksichtigung Ihrer zulässigen Ports. Speichere dein .pem Datei in Ihrem Documents Ordner.

Um jetzt darauf zugreifen zu können, müssen Sie nur noch cd [directory], wodurch Sie in das Verzeichnis der zugewiesenen Datei verschoben werden. Sie können zuerst ls eingeben, um den Verzeichnisinhalt aufzulisten, in dem Sie sich gerade befinden:

ls
cd /Documents
chmod 400 mycertificate.pem
ssh -i "mycertificate.pem" [email protected] -p 80
0
user4294909

Für mich war das Problem ein Tippfehler in meiner ~/.ssh/config - Datei. Ich hatte:

Host host1:
  HostName 10.10.1.1
  User jlyonsmith

Das Problem war der : Nach dem Host1 - er sollte nicht da sein. ssh gibt keine Warnungen für Tippfehler in der Datei ~/.ssh/config aus. Wenn es Host1 Nicht findet, sucht es lokal nach dem Computer, kann ihn nicht finden und gibt die kryptische Fehlermeldung aus.

0
jlyonsmith