SwilaPass - Bypassing Firewall avec un RPi Si tu veux faire ce tutoriel sur autre chose qu'un rpi, vérifie que le kernel ( uname -r ) est une version au délà de 4.19 J'ai mis à jour ce tutoriel pour fonctionner avec le projet wg-easy pour avoir une sympatique interface pour gérer les différents clients du VPN (et aussi simplifier l'installation) Dans ce tutoriel: Configurer un raspberry PI sans écran, clavier ou souris à connecter dessus (headless) Ouvrir les ports d'un modem Installation de Docker sur un serveur Debian/Raspbian Installation de wg-easy sur Docker (wg-easy contient wireguard en plus d'une interface pour y accéder simplement) Ajouter et configurer des clients Wireguard sur PC et téléphone 🧰 Matériel requis Un ordinateur Un raspberry Pi (dans ce cas, un Rpi4) Une carte micro SD (et un adaptateur pour l'ordi si besoin) Une alimentation pour le raspberry Un cable éthernet pour une connection optimale 🔌 Préparation du raspberry D'abord il faut installer l'OS de raspberry, dans ce cas ci, on va utiliser rpi-imager pour l'installer sur la micro SD et on va choisir Raspberry Pi OS Lite . yay rpi-imager sudo rpi-imager Dans l'installateur, sélectionne Raspberry Pi OS Lite pour l'OS, puis ta carte micro SD, puis va dans les paramètres et configure le. Brancher le Raspberry Pi et attendre un peu, ensuite se connecter via SSH: (avec le mot de passe choisi dans l'étape précédente) ssh pi@raspberrypi 🌐 Préparation du réseau Trouve l'addresse privée de ton raspberry pi hostname -I Va sur http://192.168.1.1 et connecte toi (les identifiants sont souvent écrit derrière le modem) Va dans la redirection des ports et ajoute la règle suivante: Protocol Début du port externe Fin du port externe Port interne Hôte interne Nom UDP 53 53 53 wireguard 🐳 Installation de Docker Pour installer docker on peut utiliser les commandes suivantes : sudo mkdir -p /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt update sudo apt install docker-ce sudo systemctl start docker 📦 Installation de wg-easy Maintenant vous pouvez simplement lançer le bloc de commandes suivant pour automatiquement installer Wireguard (une petite interface web en prime) : read -p "Le mot de passe pour l'administration de votre VPN: " PASSWORD sudo docker run --name wg-easy -d \ -e WG_HOST=$(curl ifconfig.me) \ -e PASSWORD=$PASSWORD \ -e WG_PORT=53 \ -e WG_DEFAULT_ADDRESS=192.168.215.x \ -p 53:51820/udp -p 51821:51821/tcp \ --restart unless-stopped \ --cap-add=NET_ADMIN \ --cap-add=SYS_MODULE \ --sysctl="net.ipv4.conf.all.src_valid_mark=1" \ --sysctl="net.ipv4.ip_forward=1" \ weejewel/wg-easy Note: Vous devez juste être sur qu'il n'y a pas de firewall et si il y en a un, que les ports 53 et 51821 soit accessibles. Je vous invite vivement de transformer cette commande en Docker-Compose comme vu dans 📝 Utiliser Docker Compose ⚙ Configurer les clients Maintenant il suffit d'installer Wireguard sur son téléphone et son ordi. Puis d'aller sur le lien http://ADDR_LOCALE_DU_RPI:51821 et se connecter. Une fois dans le panel, il suffit de cliquer sur "New" puis donner un nom à l'appareil. Ensuite on peut afficher son QR code ou son fichier de configuration qu'il suffit d'ajouter dans l'application. Sur Linux il faut l'ajouter dans /etc/wireguard/wg0.conf en ayant wireguard-tools installé. Ensutite on peut lançer sudo systemctl start wg-quick@wg0 pour démarrer le VPN. Et c'est tout !