J'essaie de configurer un VPN avec un Raspberry Pi, et la première étape consiste à acquérir la possibilité d'accéder à ssh
l'appareil depuis l'extérieur de mon réseau local. Pour une raison quelconque, cela s'avère impossible et je n'ai pas la moindre idée de pourquoi. Lorsque j'essaye d' accéder ssh
à mon serveur avec user@hostname
, j'obtiens l'erreur:
ssh: Could not resolve hostname [hostname]: nodename nor servname provided, or not known
Cependant, je peux me connecter au serveur avec,
ssh user@[local IP]
Le serveur est un Raspberry Pi Model B exécutant la dernière distribution de Raspbian et la machine avec laquelle j'essaie de me connecter est un Macbook Pro exécutant Mavericks. ssh
a été activé sur le Raspberry Pi lorsque j'ai configuré Raspbian.
J'ai parcouru Stack Overflow pendant des heures pour essayer de voir si quelqu'un d'autre avait ce problème et je n'ai rien trouvé. Chaque ssh
tutoriel que je trouve dit que je devrais simplement pouvoir le configurer sur la machine distante et me connecter de n'importe où en utilisant un nom d'hôte, et je n'ai jamais eu de succès avec cela.
la source
[hostname]
ce que vous utilisez ne peut pas être résolu à partir de l'endroit où vous l'essayez. Nenslookup [hostname]
vous REDONNER le[local IP]
vous attendez?nslookup [hostname]
Crache; Serveur: 8.8.8.8 Adresse: 8.8.8.8 # 53 ** le serveur ne trouve pas [nom d'hôte]: NXDOMAIN lorsqu'il est exécuté à partir de mon Macbook[hostname]
, non?Server: 192.168.0.1 Address: 192.168.0.1#53 ** server can't find mrddr: NXDOMAIN
Réponses:
Récemment, je suis tombé sur le même problème. J'ai pu ssh à mon pi sur mon réseau, mais pas de l'extérieur de mon réseau domestique.
J'avais déjà:
De plus, j'ai configuré le transfert de port sur mon routeur pour héberger un site Web et j'avais même le port de transfert de port 22 vers l'adresse IP statique de mon pi pour ssh, mais j'ai laissé le champ vide où vous spécifiez l'application pour laquelle vous effectuez le transfert de port sur le routeur. Quoi qu'il en soit, j'ai ajouté 'ssh' dans ce champ et, VOILA! Une connexion ssh fonctionnelle de n'importe où à mon pi.
J'écrirai les paramètres de transfert de port de mon routeur.
Cependant, les paramètres de transfert de port peuvent être différents pour différents routeurs, alors recherchez les directions pour votre routeur.
Maintenant, quand je suis en dehors de mon réseau domestique, je me connecte à mon pi en tapant:
Ensuite, je peux saisir mon mot de passe et me connecter.
la source
Si vous êtes sur Mac, le redémarrage du répondeur DNS a résolu le problème pour moi.
la source
nslookup
fonctionne, mais que ssh / ping / quoi que ce soit ne fonctionne pas, cela résout le problème. Merci.J'ai eu le même problème de connexion à une machine distante. mais j'ai réussi à me connecter comme ci-dessous:
ou:
la source
ssh myName@hostname:myPort
Si vous avez besoin d'accéder à votre VPN de n'importe où dans le monde, vous devez enregistrer un nom de domaine et le faire pointer vers l'adresse IP publique de votre VPN / passerelle réseau. Vous pouvez également utiliser un service DNS dynamique pour connecter un nom d'hôte à votre adresse IP publique.
Si vous avez uniquement besoin de ssh de votre Mac vers votre Raspberry à l' intérieur de votre réseau local , procédez comme suit: Sur votre Mac, modifiez
/etc/hosts
. En supposant que le Raspberry a le nom d'hôte "berry" et l'ip "172.16.0.100", ajoutez une ligne:Maintenant:
ssh user@berry
devrait fonctionner.la source
J'ai eu le même problème, que j'ai pu résoudre en ajoutant un .local au nom d'hôte, ala
ssh [email protected]
la source
ping $(hostname)
fonctionnait mais doit fairessh $(hostname).local
. Mac est généralement génial ... mais quand ça craint, c'est vraiment le cas ...hadoop
doit fairessh user@hostname
et je ne peux pas simplement ajouter.local
manuellement. Je suis coincé.local
fait pour moi sur Ubuntu 19.10.Dans mon cas, j'essayais ssh comme ça
lorsque le format correct est:
la source
Si votre commande est:
Vous serez également confronté à la même erreur
quand vous manquez l'option
-i /path/to/pemfile
de sshLa commande devrait donc être:
la source
ssh -p xxxx user@hostname
J'avais besoin de me connecter au serveur Amazon distant
ssh -i ~/.ssh/test.pem -fN -L 5555:localhost:5678 [email protected]
J'obtenais l'erreur suivante.
ssh: Could not resolve hostname <hostname.com>: nodename nor servname provided, or not known
Solution pour Mac OSX
Le ping de l'hôte a résolu le problème. J'utilise Mac OSX Seirra.
ping hostname.com
Maintenant problème résolu. Capable de se connecter au serveur.
Remarque : j'ai également essayé cette solution . Mais ça n'a pas marché. Puis
ping
résolu le problème.la source
J'ai eu le même problème: l'adresse indiquée dans Préférences -> Partage -> Connexion à distance ne fonctionnait pas et j'ai obtenu un '... nom de nœud ni nom de service fourni, ou inconnu'. Cependant, lorsque j'ai modifié manuellement les paramètres (dans Préférences -> Partage -> Connexion à distance -> modifier) et activé "Utiliser le nom d'hôte global dynamique", cela a soudainement fonctionné.
la source
Il semble que certaines applications ne liront pas les liens symboliques
/etc/hosts
(au moins sur macOS), vous devez le lier en dur .ln /path/to/hosts_file /etc/hosts
la source
Cela m'arrivait en essayant d'accéder à Github. Le problème est que j'avais l'habitude de faire:
git remote add <xyz> ssh:\\[email protected]......
Mais, si vous rencontrez cette erreur de la question, la suppression
ssh:\\
peut résoudre le problème. Ça l'a résolu pour moi!Notez que vous devrez faire un
git remote remove <xyz>
et rajouter l'url distante sansssh:\\
.la source
ssh:\\
plutôt quessh://
?Pour moi, le problème était une faute de frappe sur mon
~/.ssh/config
fichier. J'ai eu:Le problème était l'
:
aprèshost1
- il ne devrait pas être là.ssh
ne donne aucun avertissement pour les fautes de frappe dans le~/.ssh/config
fichier. Lorsqu'il ne trouve pas,host1
il recherche la machine localement, ne peut pas le trouver et imprime le message d'erreur cryptique.la source
Essayez ceci, en tenant compte de vos ports autorisés. Stockez votre
.pem
fichier dans votreDocuments
dossier par exemple.Pour y accéder maintenant, tout ce que vous avez à faire est de
cd [directory]
vous déplacer vers le répertoire du fichier attribué. Vous pouvez d'abord taperls
, pour lister le contenu du répertoire dans lequel vous vous trouvez actuellement:la source
J'ai eu cette erreur en utilisant un fichier d'inventaire .yml dans ansible qui n'était pas correctement formaté. Pour plusieurs hôtes dans un groupe, chaque nom d'hôte doit se terminer par un deux-points ":". Sinon, ansible exécute les noms d'hôte ensemble et produit cette erreur ssh.
la source