Comment l'hôte local est partagé sur Internet?

1

Récemment, j'ai trouvé des sites Web qui génèrent une URL publique pour un hôte local donné. Je suis extrêmement intéressé à comprendre comment un hôte local peut être partagé sur Internet.

Après avoir beaucoup cherché, je me suis rendu compte qu'il s'agissait de "SSH Tunneling" et "Port Forwarding". Je ne connais pas grand-chose en réseau, mais souhaiterais en savoir plus sur la manière de générer une URL publique d'un hôte local.

Quelqu'un peut-il m'expliquer comment se passe ce processus? Ou peut m'indiquer les liens qui peuvent m'aider à comprendre l'ensemble du processus.

Wasim Thabraze
la source
Voulez-vous dire que si vous hébergez un serveur Web local, comment cela pourrait-il être rendu disponible pour un autre public?
Ivan Viktorovic
Ouais! @ IvanViktorovic
Wasim Thabraze
1
je voudrais fortement vous suggérons d’apprendre beaucoup sur le réseautage avant de continuer. Faire ce que vous avez besoin est impossible sans une compréhension approfondie du réseau - cela nécessite soit d'apprendre à contrôler le routeur domestique de tout le monde, soit de fournir votre propre réseau de serveurs pour fournir un proxy au site Web personnel de tout le monde, y compris les infrastructures VPN, DHCP et DNS.
qasdfdsaq

Réponses:

3

Tout d’abord, si votre ordinateur est connecté à Internet, il possède une sorte d’adresse IP publique (ou du moins votre routeur et pas votre ordinateur).

Cette adresse est par exemple 123.123.123.123. Selon votre FAI, cette adresse peut changer chaque fois que vous vous déconnectez et vous reconnectez à Internet. D'autres ordinateurs sur Internet peuvent atteindre votre réseau ou votre ordinateur à l'aide de cette adresse IP 123.123.123.123.

Désormais, si vous souhaitez configurer un serveur Web local sur Internet, vous devez configurer votre routeur (ou votre ordinateur) afin de permettre aux utilisateurs externes d’accéder à votre ordinateur via le port 80 (protocole HTTP) ou le port 443 (protocole https).

Dès que vous aurez défini ces règles, d’autres pourront accéder au site Web en utilisant votre adresse IP publique 123.123.123.123.

Maintenant, personne n'aime se souvenir des adresses IP comme 123.123.123.123 et c'est pourquoi il existe un système appelé DNS (Domain Name Service). Ce service vous permet de connecter des adresses telles que 123.123.123.123 à un nom tel que mywebsite.de. Donc, si quelqu'un tape www.mywebsite.de, le système DNS le résoudra en 123.123.123.123, qui pointe vers votre ordinateur.

J'espère que c'est en quelque sorte un début.

Ivan Viktorovic
la source
Merci @ Ivan. J'ai eu un aperçu de la façon dont cela fonctionne. Mais comment autoriser les utilisateurs externes à accéder à mon ordinateur? S'ils accèdent à mon PC via HTTP, comment peuvent-ils voir le site que je cours sur un hôte local particulier? Pouvez-vous m'indiquer des liens qui pourraient m'aider à approfondir cette question?
Wasim Thabraze
Vous autorisez les utilisateurs via des règles de routeur ou de pare-feu à accéder à votre ordinateur. Selon les ports que vous autorisez, vous pouvez utiliser différents services. Si vous exécutez un serveur Web sur votre ordinateur, ce serveur écoutera le port 80 (ou le port que vous souhaitez configurer pour l'écoute de votre ordinateur) s'il y a des demandes et répondez à ces demandes.
Ivan Viktorovic
votre idée est valable s'il a une adresse IP publique, mais comme je vois qu'il ne possède pas d'adresse IP publique
emirjonb
S'il n'a pas d'adresse IP publique, il pourrait utiliser les services DNS dynamiques. Ensuite, il doit installer un client sur son PC, puis il communique l'adresse IP chaque fois qu'il change.
Ivan Viktorovic
2

Si vous créez un tunnel SSH, vous créez un tunnel sécurisé vers l'ordinateur distant de votre réseau local (comme un VPN mais uniquement vers un seul ordinateur / périphérique). Ainsi, si vous accédez à votre serveur IP (réseau local IP), cela fonctionnera. comme si vous étiez dans votre réseau local (à la maison ou dans votre entreprise).

La redirection de port est différente car elle indique à votre modem / routeur d'ouvrir (et de diriger ("transférer")) les requêtes externes vers votre IP publique vers le périphérique serveur que vous avez choisi dans votre réseau local.

Je pense que vous faites principalement référence à la redirection de port car vous pouvez, en théorie, ouvrir votre "hôte local" à Internet. Techniquement, ce n'est pas "localhost" mais votre serveur Web qui écoute sur plus d'IP (votre IP LAN) que simplement "localhost" ...

Vous aurez toujours besoin de transférer le port pour permettre à SSH de fonctionner.

Kinnectus
la source
Je vous remercie! Mais je n'ai pas bien compris. La partie tunneling. Pouvez-vous s'il vous plaît l'expliquer d'une manière plus large? :)
Wasim Thabraze
2
La tunnelisation signifie que vous tunnelisez la connexion d'un point A à un point B. Par exemple, vous souhaitez vous connecter à la base de données MySQL sur un serveur. 80.100.120.1, mais n'accepte que les connexions de localhost Port 3306. Ensuite, vous créez d’abord un tunnel SSH de votre ordinateur au serveur. 80.100.120.1. Disons que vous voulez que lorsque vous vous connectez à locahost:3306 il va se connecter à 80.100.120.1:3306, alors vous créez un tunnel avec la commande suivante: ssh -L 3306:localhost:3306 80.100.120.1 -N Après cela, vous pouvez vous connecter au serveur MySQL via votre ordinateur.
Maksim Luzik
0

Pour répondre correctement, nous aurions besoin des adresses des sites Web dont vous parlez pour vérifier leur fonctionnement.

Un moyen possible pourrait être que:

  • vous installez un programme fourni par le site Web sur votre ordinateur
  • ce programme se connecte au serveur du fournisseur et établit un tunnel
  • une fois le tunnel établi, le fournisseur dispose d'un moyen d'accéder aux ressources de l'ordinateur.
  • le fournisseur crée un enregistrement DNS du type "customer17.providername.com" pour votre ordinateur. Ce point d'enregistrement sur le serveur du fournisseur
  • Lorsque quelqu'un tente de se connecter à votre ordinateur, il utilise le nom customer17.nomprovid.com.com, il est directement connecté au serveur du fournisseur qui envoie la demande à votre ordinateur via le tunnel.

C'est la façon dont Teamviewer fonctionne (bien qu'avec un enregistrement DNS mais avec un identifiant interne)

JFL
la source