Ich versuche, ein VPN mit einem Raspberry Pi einzurichten. Der erste Schritt besteht darin, ssh
von außerhalb meines lokalen Netzwerks in das Gerät zu gelangen. Aus irgendeinem Grund erweist sich dies als unmöglich und ich habe nicht die geringste Ahnung warum. Wenn ich versuche, mit ssh
auf meinen Server zuzugreifen user@hostname
, wird folgende Fehlermeldung angezeigt:
ssh: Could not resolve hostname [hostname]: nodename nor servname provided, or not known
Ich kann mich jedoch beim Server anmelden mit:
ssh user@[local IP]
Der Server ist ein Raspberry Pi Model B, auf dem die neueste Distribution von Raspbian ausgeführt wird, und der Computer, mit dem ich eine Verbindung herstellen möchte, ist ein Macbook Pro mit Mavericks. ssh
wurde auf dem Raspberry Pi aktiviert, als ich Raspbian einrichtete.
Ich habe den Stapelüberlauf stundenlang durchgesehen und versucht, festzustellen, ob jemand anderes dieses Problem hatte, und ich habe nichts gefunden. Jedes ssh
Tutorial, das ich finde, besagt, dass ich es einfach auf dem Remote-Computer einrichten und mich von überall mit einem Hostnamen anmelden kann, und damit hatte ich noch nie Erfolg.
quelle
[hostname]
Sie verwenden, kann nicht von dem Ort aus behoben werden, von dem aus Sie es versuchen. Gibtnslookup [hostname]
es Ihnen das zurück, was[local IP]
Sie erwarten?nslookup [hostname]
ausspucken; Server: 8.8.8.8 Adresse: 8.8.8.8 # 53 ** Server kann [Hostname]: NXDOMAIN nicht finden, wenn er von meinem Macbook ausgeführt wird[hostname]
, oder?Server: 192.168.0.1 Address: 192.168.0.1#53 ** server can't find mrddr: NXDOMAIN
Antworten:
Kürzlich bin ich auf das gleiche Problem gestoßen. Ich konnte auf meinem Netzwerk in meinem Netzwerk ssh, aber nicht von außerhalb meines Heimnetzwerks.
Ich habe schon:
Außerdem habe ich auf meinem Router die Portweiterleitung für das Hosten einer Website eingerichtet, und ich hatte sogar die Portweiterleitung für Port 22 an die statische IP meines Pi für ssh, aber ich habe das Feld leer gelassen, in dem Sie die Anwendung angeben, für die Sie die Portweiterleitung durchfü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 werde die Portweiterleitungseinstellungen meines Routers aufschreiben.
Die Einstellungen für die Portweiterleitung können jedoch für verschiedene Router unterschiedlich sein. Suchen Sie daher nach den Anweisungen für Ihren Router.
Wenn ich mich außerhalb meines Heimnetzwerks befinde, verbinde ich mich mit meinem Pi, indem ich Folgendes eingebe:
Dann kann ich mein Passwort eingeben und eine Verbindung herstellen.
quelle
Wenn Sie einen Mac verwenden, wurde das Problem durch einen Neustart des DNS-Responders behoben.
quelle
nslookup
funktioniert, aber ssh / ping / was auch immer nicht, behebt dies das Problem. Vielen Dank.Ich hatte das gleiche Problem beim Verbinden mit einem Remote-Computer. aber ich konnte mich wie folgt anmelden:
oder:
quelle
ssh myName@hostname:myPort
Wenn Sie von überall auf der Welt Zugriff auf Ihr VPN benötigen, müssen Sie einen Domainnamen registrieren und ihn 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 zu Ihrer Himbeere in Ihrem lokalen Netzwerk ssh müssen , 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:Jetzt:
ssh user@berry
sollte funktionieren.quelle
Ich hatte das gleiche Problem, das ich beheben konnte, indem ich dem Hostnamen eine .local hinzufügte, ala
ssh [email protected]
quelle
ping $(hostname)
funktionierte aber muss tunssh $(hostname).local
. Mac ist normalerweise großartig ... aber wenn eshadoop
muss tunssh user@hostname
und ich kann nicht einfach.local
manuell hinzufügen . Ich stecke fest.local
hat es für mich unter Ubuntu 19.10 getan.In meinem Fall habe ich ssh so versucht
wenn das richtige Format ist:
quelle
Wenn Ihr Befehl lautet:
Sie werden auch den gleichen Fehler sehen
wenn Sie die Option
-i /path/to/pemfile
von ssh verpassenBefehl sollte also sein:
quelle
ssh -p xxxx user@hostname
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
Das Pingen des Hosts hat das Problem behoben. Ich benutze Mac OSX Seirra.
ping hostname.com
Jetzt Problem behoben. Kann eine Verbindung zum Server herstellen.
Hinweis : Ich habe diese Lösung auch ausprobiert . Aber es hat nicht geklappt. Dann wurde
ping
das Problem behoben.quelle
Ich hatte das gleiche Problem: Die in den Einstellungen -> Freigabe -> Remote-Anmeldung angegebene Adresse funktionierte nicht und ich erhielt einen "... Knotennamen oder Servnamen angegeben oder nicht bekannt". Als ich jedoch die Einstellungen manuell bearbeitete (unter Einstellungen -> Freigabe -> Remote-Anmeldung -> Bearbeiten) und "Dynamischen globalen Hostnamen verwenden" aktivierte, funktionierte dies plötzlich.
quelle
Es scheint, dass einige Apps nicht symlinked lesen
/etc/hosts
(zumindest unter macOS), Sie müssen es fest verknüpfen.ln /path/to/hosts_file /etc/hosts
quelle
Dies passierte mir, als ich versuchte, auf Github zuzugreifen. Das Problem ist, dass ich die Gewohnheit hatte:
git remote add <xyz> ssh:\\[email protected]......
Wenn Sie jedoch diesen Fehler in der Frage haben, entfernen Sie ihn
ssh:\\
kann das Problem durch behoben werden. Es hat es für mich gelöst!Beachten Sie, dass Sie eine
git remote remove <xyz>
ausführen und die Remote-URL ohne erneut hinzufügen müssenssh:\\
.quelle
ssh:\\
eher verwendet alsssh://
?Für mich war das Problem ein Tippfehler in meiner
~/.ssh/config
Datei. Ich hatte:Das Problem war das
:
nach demhost1
- es sollte nicht da sein.ssh
gibt keine Warnungen für Tippfehler in der~/.ssh/config
Datei. Wenn es nicht gefunden werdenhost1
kann, sucht es lokal nach dem Computer, kann es nicht finden und gibt die kryptische Fehlermeldung aus.quelle
Versuchen Sie dies unter Berücksichtigung Ihrer zulässigen Ports. Speichern Sie Ihre
.pem
Datei beispielsweise in IhremDocuments
Ordner.Um jetzt darauf zugreifen zu können, müssen
cd [directory]
Sie nur noch in das Verzeichnis der zugewiesenen Datei wechseln. Sie können zuerst Folgendes eingebenls
, um den Verzeichnisinhalt aufzulisten, in dem Sie sich gerade befinden:quelle
Ich habe diesen Fehler durch die Verwendung einer .yml-Inventardatei in ansible erhalten, die nicht richtig formatiert wurde. Bei mehreren Hosts in einer Gruppe muss jeder Hostname mit einem Doppelpunkt ":" enden. Andernfalls führt ansible die Hostnamen zusammen aus und erzeugt diesen SSH-Fehler.
quelle