J'ai récemment configuré SSH sur mon Raspberry Pi. Cela va très bien, d'autant plus que je peux contrôler l'ordinateur via mon iPhone avec l'application Server Auditor . Malheureusement, cela ne fonctionne que via le réseau local.
Comment puis-je faire fonctionner mon SSH lorsque je suis hors de la maison? (Fonctionne de préférence avec l'application.)
Réponses:
Voici les étapes que j'ai utilisées (sur debian) qui pourraient vous être utiles.
1.Réglage de l'IP statique pour le Pi.
a. Ouvrez le fichier d'interface à l'aide de la commande
b.Changez le fichier d'interfaces comme suit (cela fonctionne pour moi, je ne sais pas si quelques lignes peuvent être exclues).
c.Vérifiez si l'Ip est modifié à l'aide de la commande ifconfig
2. Configuration d'un DNS dynamique
Très probablement, l'adresse IP attribuée par votre FAI est dynamique et nous avons donc besoin d'un moyen de résoudre les changements d'adresse IP. J'utilise les logiciels dnsdynamic et ddclient pour y parvenir.
Créer un compte avec dnsdynamic
b.Ajoutez un nouveau domaine et sélectionnez un nom et le domaine dans la liste.Vous pouvez choisir l'un des domaines disponibles avec votre choix de sous-domaine.Cliquez sur vérifier la disponibilité , puis ajoutez
3.Définir ddclient sur Pi
a.Installez ddclient à l'aide de la commande
b.Ouvrez le fichier de configuration de ddclient à l'aide de la commande suivante et ajoutez les lignes suivantes.
et modifiez le fichier comme suit.
et enregistrez le fichier.
d. Nous souhaitons que le service ddclient démarre automatiquement au redémarrage. Procédez comme suit.
Ajoutez la commande suivante avant de quitter 0 (qui est la dernière ligne)
Enregistrez le fichier.Pour démarrer ddclient, redémarrez votre pi ou exécutez la commande ci-dessus à l'invite.Il gardera votre nom de domaine mis à jour avec l'adresse IP actuelle changeant si nécessaire.
4. Transfert de port
a. Trouvez le modèle de votre routeur.
b.Allez sur portforward.com
c.Entrez la marque et le modèle de votre routeur pour trouver le guide détaillé sur le port de transfert.
d.Après avoir sélectionné la marque et le modèle du routeur, cliquez sur le guide par défaut dans la page redirigée.
e.Dans la zone de texte IP statique, entrez l'IP statique du Pi que vous avez donné à l'étape 1.
f. Suivez les étapes et le port de transfert 22. Le port source doit être 22 et le port de destination peut être n'importe quoi. N'oubliez pas d'utiliser le port de destination lors de la saisie dans pi. Port.
Si vous suiviez le didacticiel, connectez-vous à votre pi de n'importe où en utilisant le remplacement de l'adresse IP par le nom de domaine. par exemple, j'utilise [email protected]: 22 pour ssh dans mon pi.
la source
sudo
dans/etc/rc.local
, n'est-ce pas déjà en cours d'exécution en tant que root?Vous devez d'abord configurer la redirection de port. Chaque routeur est légèrement différent, vous devrez donc rechercher les spécificités de votre routeur.
Il existe des guides pratiques de redirection de port générique qui peuvent fonctionner pour la plupart des routeurs, mais je vous suggère de trouver un guide pour votre modèle de routeur actuel.
Définissez un port mémorable à lier à votre Raspberry Pi, tel que 23456 ou quelque chose. Veillez à ne pas écraser les numéros de port courants .
Enfin, en utilisant ssh, procédez comme suit:
Où:
-p
commande indique à ssh le port dans lequel essayer le tunnella source
Accéder à votre RaspberryPi (ou même à des ordinateurs portables / serveurs) depuis l'extérieur de votre réseau domestique (c'est-à-dire depuis Internet) n'est pas une tâche facile, car votre ordinateur portable domestique ou RaspberryPi n'a qu'une adresse IP locale (dans la plage 10.xxx ou 192.168.xx intervalle). Il n'a pas d'adresse IP publique visible sur Internet.
La réponse simple à votre question est d'utiliser des services en ligne gratuits comme SocketXP qui fournit un point de terminaison de tunnel public sécurisé à SSH dans votre RaspberryPi depuis l'extérieur du réseau domestique.
SocketXP fournit un moyen simple, sécurisé et facile d'accéder à votre RaspberryPi domestique depuis le réseau extérieur. SocketXP ne vous oblige pas à pirater les paramètres de votre routeur WiFi. Cela fonctionne hors de la boîte. Pour savoir comment configurer votre RaspberryPi en SSH de l'extérieur, lisez ce blog sur la façon de connecter SSH à distance à votre RaspberryPi à l'aide de SocketXP.
Comment configurer SocketXP:
Étape 1 : installez le client SocketXP sur votre RaspberryPi à l'aide de la commande suivante.
Étape 2: connectez le client SocketXP au service cloud SocketXP à l'aide de la commande suivante. Vous devez vous inscrire sur https://portal.socketxp.com pour obtenir votre jeton d'authentification unique.
Étape 3 : Obtenez un point de terminaison de tunnel public pour accéder à votre RaspberryPi depuis Internet.
Étape 4 : SSH dans votre RaspberryPi depuis Internet en utilisant la commande suivante.
où "raspberry-username" est le nom d'utilisateur / mot de passe que vous utilisez pour vous connecter SSH à votre RaspberryPi.
la source
Cette question est ancienne, car avec le temps, il y a moins de chances que vous obteniez une adresse IPv4 accessible au public. Vous êtes probablement derrière un CGNAT, ce qui signifie que vous partagez un IPv4 public unique avec d'autres clients du FAI. Il n'est donc pas possible de faire un transfert de port vers votre PI ou autre chose.
Si vous avez IPv6, vous pouvez donner à votre PI une adresse statique et autoriser l'accès à celle-ci sur votre routeur. De nombreux fournisseurs de téléphonie mobile donnent désormais IPv6 aux téléphones. Les anciens FAI «terrestres» (fibre, DSL, coaxial, etc.) traînent souvent les pieds.
Vous pouvez également obtenir un VPS (serveur privé virtuel) bon marché avec un IPv4 public quelque part dans le cloud et créer un tunnel SSH du PI au VPS.
la source
En plus de la réponse de phalt, vous devriez vérifier l'un des services DNS dynamiques, tels que No IP . Ils vous permettent d'accéder à votre réseau domestique sous un nom d'hôte statique, bien que votre adresse IP puisse changer quotidiennement, en raison de la déconnexion de votre fournisseur de câble ou DSL. Ils ont également une belle page de démarrage , qui vous présente également la configuration de votre routeur en conséquence.
Vous souhaiterez peut-être installer le
inadyn
package sur votre Raspberry Pi pour mettre à jour vos entrées DNS sans IP lorsque l'IP change. Vous pouvez le faire en exécutant:Du README inadyn j'ai pris cet exemple d'appel:
J'espère que cela t'aides.
la source
Supplémentaire à la réponse de Steve Irwin:
Étape 1:
si vous vous connectez via wlan, utilisez:
Étape 2:
après avoir modifié ce qui précède, vous devez redémarrer
networking
:la source
De plus, certains routeurs ont une prise en charge intégrée pour certains services DNS dynamiques, vous pouvez activer cette option (si elle existe) dans votre routeur pour éviter d'installer le client sur votre PI (et économiser un peu de temps pendant que vous y êtes).
la source
Donc, vous avez un serveur ssh (votre Raspberry PI) derrière un pare-feu (votre routeur) et vous voulez le connecter de n'importe où. Supposons que votre serveur ssh soit correctement configuré, c'est-à-dire que l'exécution de 'ssh username @ localhost date' sur votre Raspberry affiche la date / heure actuelle.
Vous devez résoudre deux problèmes:
Transfert de port et DynDNS
Des solutions existent (comme cela a été souligné par d'autres):
S'il est correctement configuré, la connexion de votre rasbperry pi peut être possible avec:
Utilisation de sshhub.de
Une autre solution très pratique, non mentionnée jusqu'à présent, est SSHHub (divulgateur, je suis l'auteur). Il utilise le transfert de ssh pour accéder à votre Rasperry PI de n'importe où. C'est fiable, gratuit et assez simple à installer . Inscrivez-vous une fois:
exécuter sur votre Raspberry PI:
...et c'est tout! Vous pouvez connecter votre Raspberry Pi de n'importe où:
la source
Vous pouvez utiliser un VPN pour activer l'accès entrant à votre pi. OpenVPN est une solution, qui nécessiterait que vous ayez un ordinateur accessible depuis Internet (un port entrant). Cependant, tant qu'un ordinateur est accessible, les autres ordinateurs ne doivent pas nécessairement l'être car ils peuvent être des clients du serveur OpenVPN.
Une autre option serait d'utiliser un service tel que ZeroTier, qui fournit des serveurs centralisés pour créer un VPN, de sorte que vous n'auriez pas besoin d'exécuter votre propre serveur. C'est également gratuit.
la source