Skip to main content

FRP (Fast Reverse Proxy)


🌐 Mettre en place un tunnel FRP

🧭 Objectif

Configurer un tunnel sécurisé entre :

  • đŸ«Â Serveur distant (ex : Ă©cole) inaccessible de l’extĂ©rieur
  • 🏠 Serveur personnel (chez vous) accessible via Internet

Le but est d’exposer un service local (ex : un site en localhost sur le port 3000) du serveur Ă©cole via un domaine (ex : mondomaine.fr) en passant par le serveur personnel.


đŸ“„ Étape 1 — TĂ©lĂ©charger FRP

Rendez-vous sur : https://github.com/fatedier/frp/releases

Téléchargez la derniÚre version pour Linux (ex : frp_0.62.0_linux_amd64.tar.gz).

Décompressez sur chaque machine :

tar -xvzf frp_0.62.0_linux_amd64.tar.gz
cd frp_0.62.0_linux_amd64


🏠 Étape 2 — Configurer le serveur FRP (frps) sur le serveur personnel

Créez le fichier frps.toml :

[common] 
bind_port = 7000 
vhost_http_port = 8080 
dashboard_port = 7500 
dashboard_user = "admin" 
dashboard_pwd = "admin" 
authentication_method = "token" 
token = "votreTokenSecret"
Lancer le serveur FRP :
./frps -c frps.toml
(Optionnel) Lancer via PM2 :
pm2 start ./frps --name frps -- -c ./frps.toml pm2 save pm2 startup

đŸ« Étape 3 — Configurer le client FRP (frpc) sur le serveur distant

Créez le fichier frpc.toml :

[common] 
server_addr = "IP_DU_SERVEUR_PERSONNEL" 
server_port = 7000 
authentication_method = "token" 
token = "votreTokenSecret" 

[appweb] 
type = "http" 
local_port = 3000 
custom_domains = "mondomaine.fr"
Lancer le client :
./frpc -c frpc.toml
(Optionnel) Lancer via PM2 :
pm2 start ./frpc --name frpc -- -c ./frpc.toml pm2 save pm2 startup

🌍 Étape 4 — Configurer le DNS

Ajoutez un enregistrement DNS :

Type Nom Valeur Proxy
A mondomaine.fr IP_DU_SERVEUR_PERSONNEL ✅ activĂ©

🌐 Étape 5 — (Optionnel) Reverse proxy avec Caddy

Si vous utilisez Caddy sur le serveur personnel :

mondomaine.fr { 
    reverse_proxy localhost:8080 {
    }
}
Recharger Caddy :
sudo systemctl reload caddy

đŸ§Ș VĂ©rification

  1. Accédez à https://mondomaine.fr

  2. Visitez le dashboard FRP (si activé) : http://IP:7500

  3. Consultez les logs avec pm2 logs frps ou frpc


✅ RĂ©sumĂ©

  • 🔐 Connexion sortante seulement depuis le serveur distant

  • 🌍 Tunnel HTTP sĂ©curisĂ© entre deux machines

  • 🔁 Service redirigĂ© automatiquement depuis un domaine public


📚 Liens utiles