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 :
- 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.
- Après avoir enregistré le nom de domaine, créez un compte Cloudflare et ajoutez votre domaine—voir Configuration de Cloud Flare.
- 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.
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.
Une fois connecté, sélectionnez le domaine que vous avez ajouté au compte Cloudlfare et cliquez sur Autoriser.
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
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.
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é.
Cliquez sur Voir dans l’explorateur de fichiers et activez le Extensions de nom de fichier option.
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
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>
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.
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.
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