Magazine Gadgets

Configurer un tunnel Cloudflare pour exposer les serveurs locaux à Internet

Publié le 02 novembre 2022 par Mycamer

Si vous utilisez un serveur local chez vous sur un ancien ordinateur portable ou PC, tel qu’un serveur Plex Media, un serveur de fichiers, un serveur Web ou tout autre serveur, vous pouvez l’exposer à Internet en utilisant l’option de redirection de port. dans votre routeur. Cependant, il n’est ni sécurisé ni recommandé d’accéder à un serveur de cette manière dans un environnement de production.

Nous vous montrerons comment exposer vos serveurs locaux en toute sécurité avec une connexion HTTPS à Internet à l’aide du service gratuit Cloudflare Tunnel, sans divulguer votre adresse IP publique.

Qu’est-ce que Cloudflare Tunnel ?

Cloudflare Tunnel, anciennement connu sous le nom d’Argo Tunnel, aide les utilisateurs à exposer en toute sécurité leurs ressources, telles que des serveurs locaux, à Internet sans adresse IP publique ni avoir à activer la redirection de port dans le routeur. Lorsque vous configurez un tunnel Cloudlfare dans votre système Windows, macOS ou Linux, un démon de tunneling léger (cloudflared) est installé et se situe entre votre ressource (serveur local) et le réseau Cloudflare. Avec Cloudflare Tunnel, vous pouvez exposer et connecter en toute sécurité n’importe quel serveur Web HTTP local, poste de travail distant, serveur SSH ou divers autres protocoles à Internet.

Ci-dessous, nos instructions étape par étape montrent comment configurer le démon de tunneling cloudflared sur Windows, macOS, Linux et Raspberry Pi pour exposer les serveurs locaux à Internet.

Avant que tu commences

Pour installer et configurer le démon de tunneling cloudflared sur votre système, vous devez remplir ces conditions préalables :

  1. Enregistrez un nom de domaine. Vous pouvez soit en acheter un auprès des fournisseurs de services, tels que GoDaddy, soit obtenir un domaine gratuit auprès de freenom.com.
  2. Après avoir enregistré le nom de domaine, créez un compte Cloudflare et ajoutez votre domaine—voir Configuration de Cloud Flare.
  3. Ensuite, modifiez ou mettez à jour les serveurs de noms de domaine vers les serveurs de noms Cloudflare—voir le Documentation Cloudflare. Ce paramètre est disponible sur le portail à partir duquel vous avez enregistré ou acheté le domaine.

Une fois ces exigences remplies, vous pouvez suivre les étapes ci-dessous pour configurer le tunnel Cloudflare sur votre ordinateur Windows, macOS, Linux ou Raspberry Pi.

Installer Cloudflare Tunnel sous Windows

La configuration de Cloudflare Tunnel sur un système Windows nécessite l’installation d’un démon léger côté serveur. Allez le versions cloudflared et téléchargez la version correcte pour votre version de Windows :

  • Windows 32 bits : cloudflared-windows-386.exe
  • Windows 64 bits : cloudflared-windows-amd64.exe

Après avoir téléchargé la configuration du démon cloudflared, accédez au dossier où se trouve la configuration et renommez le fichier en cloudflared.exe. Ouvrez ensuite l’invite de commande et accédez à l’emplacement où se trouve le démon cloudflared à l’aide du CD commande. Par exemple:

cd C:\Users\Ravi Singh\Downloads\Programs

Exécutez ensuite les commandes suivantes pour vérifier la version et installer la dernière mise à jour.

cloudflared.exe --version
cloudflared.exe update

Si vous voyez une sortie comme indiqué dans la capture d’écran ci-dessous, vous êtes prêt à partir.

installer cloudlfare sur windows

Vous devez vérifier les mises à jour cloudflared de temps en temps, pour maintenir la configuration à jour et éviter les problèmes de connectivité.

Installer Cloudflare Tunnel sur macOS

Sur macOS, vous pouvez utiliser l’application Terminal pour télécharger et installer le démon cloudflared, puis utiliser des commandes pour créer un tunnel sécurisé et exposer les serveurs locaux à Internet.

Pour télécharger cloudflared, exécutez la commande suivante dans le Terminal :

brew install cloudflare/cloudflare/cloudflared

Vous pouvez également exécuter cette commande pour télécharger cloudflared :

brew install cloudflared

Installer Cloudflare Tunnel sur Linux

En fonction du système d’exploitation Linux que vous utilisez, téléchargez le paquet cloudflared. Ouvrez ensuite l’application Terminal, accédez à l’emplacement où le package est téléchargé et installez-le. Alternativement, selon votre distribution Linux, vous pouvez utiliser l’une des commandes suivantes pour télécharger et installer cloudflared.

Installation DEB

wget -q https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb && dpkg -i cloudflared-linux-amd64.deb

​​​Installation RPM

wget -q https:

​​Arch Linux

Sur Arch Linux, utilisez l’outil pacman pour installer cloudflared.

pacman -Syu cloudflared

Installer Cloudflared Tunnel sur Raspberry Pi

Il n’y a pas de version ou de référentiel cloudflared officiel pour Raspberry Pi Zero, 2, 3 ou 4. Cependant, vous pouvez installer et utiliser les versions non officielles ARMv6 pour Raspberry Pi pour configurer le tunnel cloudlfared dans Raspberry Pi OS. Nous avons déjà couvert quelques tutoriels, tels que le gestionnaire de mots de passe BitWarden auto-hébergé sur Raspberry Pi Zerooù nous avons utilisé les versions non officielles pour exposer nos serveurs locaux à Internet avec une connexion HTTPS via un tunnel Cloudflare.

Pour installer cloudflared sur Raspberry Pi OS Bullseye (ou une autre version), exécutez la commande suivante dans le Terminal.

sudo wget https:
sudo tar -xvzf cloudflared_2022.8.2_arm.tar.gz
sudo cp ./cloudflared /usr/local/bin
sudo chmod +x /usr/local/bin/cloudflared
cloudflared -v

Pour vérifier les dernières versions non officielles de Raspberry Pi, consultez le Page des versions ARMv6.

Créer et configurer un tunnel Cloudflare

Une fois le démon cloudflared téléchargé et installé sur votre Windows, macOS, Linux ou Raspberry Pi, vous pouvez créer un tunnel Cloudflare en utilisant la commande suivante dans l’application Terminal ou l’invite de commande :

cloudflared login

Sous Windows, macOS ou Linux, cela ouvrira la page de connexion Cloudflare dans votre navigateur Web par défaut. Si la fenêtre du navigateur ne s’ouvre pas automatiquement, copiez l’URL affichée dans la sortie de la commande, puis collez-la dans le navigateur Web et connectez-vous à votre compte Cloudflare.

se connecter au compte cloudlfare

Une fois connecté, sélectionnez le domaine que vous avez ajouté au compte Cloudlfare et cliquez sur Autoriser.

autoriser le nom de domaine

Une fois autorisé, vous verrez le message “Vous vous êtes connecté avec succès…”. Il générera également une cert.pem fichier et stockez-le dans l’emplacement du répertoire cloudflared par défaut :

  • Les fenêtres: %USERPROFILE%\.cloudflared
  • Mac OS : ~/.cloudflared
  • Linux : /etc/cloudflared,
  • Tarte aux framboises: /usr/local/etc/cloudflared
autorisation réussie informations d'identification enregistrées dans le fichier cert pem

Ensuite, nous devons créer un tunnel en utilisant la commande suivante :

cloudflared tunnel create <YourTunnelName>

Vous pouvez nommer votre tunnel comme bon vous semble. Par exemple, nous hébergé un site WordPress sur un vieil ordinateur portable et utilisé le nom du site comme nom du tunnel ; cela facilite la mémorisation.

créer un tunnel cloudflared

La commande créera un tunnel ainsi qu’un fichier JSON avec un UUID de tunnel alphanumérique unique. Copiez le chemin du fichier JSON et l’UUID du tunnel, collez-le dans un bloc-notes ou une liste de notes et conservez-le en lieu sûr car nous en aurons besoin pour créer un fichier de configuration.

Pour créer le fichier de configuration sous macOS, Linux ou Raspberry Pi OS, exécutez la commande suivante,

sudo nano ~/.cloudflared/config.yml

Dans l’éditeur, collez le code suivant.

tunnel: <TunnelUUID>
credentials-file: /root/.cloudflared/<TuinnelUUID>.json
ingress:
- hostname: myhome.smartghar.org
service: http:
- service: http_status:404

Assurez-vous de remplacer le TunnelUUID et le chemin du fichier JSON dans le fichier-identifiants ligne de code. Presse CTRL + X ou Commande + X (macOS) puis le Oui touche suivie de Entrer pour enregistrer les modifications dans le config.yml dossier.

Sous Windows, vous pouvez utiliser l’explorateur de fichiers et accéder à l’emplacement suivant :

C:\Users\YourProfileName\.cloudflared

Puis faites un clic droit, sélectionnez Nouveau > Document texte, et collez le bloc de code susmentionné.

créer un fichier de configuration yaml dans Windows à l'aide du bloc-notes

Cliquez sur Voir dans l’explorateur de fichiers et activez le Extensions de nom de fichier option.

renommer le document texte en config yml

Modifiez ensuite le document texte nommé config.yml.

Vous pouvez ajouter plusieurs noms d’hôte et services dans le fichier de configuration pour y accéder via Internet via un tunnel Cloudlfare. Copiez simplement les deux premières lignes sous le entrée: ligne de code et collez-les avant la -service : http_status:404. Remplacez le nom d’hôte et les adresses IP du serveur local pour transférer le trafic d’Internet vers le serveur local particulier. Voir un exemple ci-dessous.

Un exemple pour plusieurs noms d’hôte et services :

tunnel: <TunnelUUID>
credentials-file: /root/.cloudflared/<TuinnelUUID>.json
ingress:
- hostname: myhome.smartghar.org
service: http:
- hostname: plex.smartghar.org
service: http:
- service: http_status:404

Enregistrez les modifications, puis créez les enregistrements CNAME dans Cloudflare DNS à l’aide de la commande suivante.

cloudflared tunnel route dns <TunnelName> <hostname>

Par exemple:

cloudflared tunnel route dns smartghar myhome.smartghar.org
créer une entrée cname dans cloudlfare dns

Une fois le CNAME ajouté, vous pouvez démarrer le tunnel pour accéder à votre serveur local via Internet en utilisant le nom d’hôte que vous avez attribué.

cloudflared tunnel run <TunnelName>
exécuter le tunnel cloudlfared sous windows macos linux ou raspberry

Si vous voyez une sortie similaire à celle de la capture d’écran ci-dessus, le tunnel a démarré avec succès. Vous pouvez maintenant ouvrir le navigateur Web sur n’importe quel appareil connecté à Internet et visiter le nom d’hôte. Pour ce cas, c’est myhome.smartghar.org.

Puisque nous voulons que le nom d’hôte charge notre page de configuration de routeur, nous avons ajouté l’IP 192.168.0.1qui n’était autrement accessible que via le réseau local.

routeur désormais accessible via internet

Vous devez activer l’option SSL/TLS sur Flexible ou Full (selon ce qui vous convient) pour activer une connexion HTTPS sécurisée avec votre instance locale.

activer ssl tls dans cloudflare

Des possibilités infinies

Avec Cloudlfare Tunnel, vous pouvez accéder gratuitement à n’importe quelle configuration de serveur chez vous via Internet. Vous pouvez utiliser ce service pour héberger un site Web sur un système local et le tester avant de le déployer sur un serveur Web ou d’autoriser l’accès au public. Vous pouvez également l’utiliser pour accéder en toute sécurité à votre maison intelligente locale fonctionnant sur Home Assistant ou tout autre serveur via Internet.

Nous avons mis en place le service Cloudflare Tunnel sur un Raspberry Pi Zero W, qui a un encombrement réduit, consomme moins d’énergie et fonctionne parfaitement bien, nous permettant d’accéder à distance à tous nos serveurs locaux.

— to news.google.com


Retour à La Une de Logo Paperblog

A propos de l’auteur


Mycamer Voir son profil
Voir son blog

l'auteur n'a pas encore renseigné son compte l'auteur n'a pas encore renseigné son compte

Magazines