Pourquoi exécuter votre propre relais ?
Exposer votre PC principal à Internet par une redirection de port est un risque de sécurité, et le laisser allumé en permanence gaspille de l’énergie. Un petit serveur Linux ou un relais Raspberry Pi vous offre la latence la plus faible possible, aucune redirection de port vers les PC auxquels vous accédez, une consommation d’énergie réduite, aucune inquiétude RGPD liée aux serveurs tiers et le Wake‑on‑LAN depuis l’extérieur de votre réseau. Même si le relais est attaqué, toutes les données qui y transitent sont chiffrées avec des clés que le serveur ne possède jamais.
Ce guide suppose que vous disposez déjà d’un accès SSH à la machine Linux et des autorisations nécessaires.
La version 2 du Remotly Relay Server ajoute la prise en charge de TLS et d’un mot de passe d’accès. Même sans TLS, chaque connexion est chiffrée de bout en bout avec RSA-4096 et AES-256 ; TLS ajoute une couche de transport redondante pour les pare‑feu stricts, au prix d’une charge CPU supplémentaire. Le mot de passe d’accès empêche des utilisateurs aléatoires qui découvriraient l’IP et le port de votre serveur de l’utiliser.
1. Choisir le paquet pour votre appareil
Exécutez uname -m sur le serveur et téléchargez le paquet correspondant au résultat :
- x86_64 — Linux amd64 (serveurs et VPS Intel/AMD 64 bits) : remotly‑relay‑linux‑amd64-v2.zip
- aarch64 — ARM64 (Raspberry Pi 3, 4 et 5 avec un système 64 bits, instances cloud ARM) : remotly‑relay‑linux‑arm64-v2.zip
- armv7l — ARM 32 bits (Raspberry Pi 2, 3 et 4 avec Raspberry Pi OS 32 bits) : remotly‑relay‑linux‑arm7-v2.zip
Les Raspberry Pi Zero et Raspberry Pi 1 (ARMv6) ne sont pas pris en charge.
2. Installation
- Connectez‑vous au serveur en SSH (par exemple avec OpenSSH, WinSCP ou FileZilla). Toutes les commandes suivantes s’exécutent sur le serveur.
- Téléchargez le paquet pour votre architecture, par exemple pour ARM64 : wget https://downloads.mirillis.com/files/remotly‑relay‑linux‑arm64-v2.zip
- Décompressez‑le : unzip remotly‑relay‑linux‑arm64-v2.zip — si unzip est absent, installez‑le avec sudo apt‑get update && sudo apt‑get install unzip.
- Déplacez les fichiers vers /srv/remotly, où le service les attend : sudo mv remotly‑relay /srv/remotly
- Définissez le propriétaire et les droits : sudo chown -R root:root /srv/remotly && sudo chmod -R 755 /srv/remotly. La configuration contient le mot de passe, rendez‑la lisible par root uniquement : sudo chmod 600 /srv/remotly/config/remotly‑relay.json
uname -m
wget https://downloads.mirillis.com/files/remotly‑relay‑linux‑arm64-v2.zip
unzip remotly‑relay‑linux‑arm64-v2.zip
sudo mv remotly‑relay /srv/remotly
sudo chown -R root:root /srv/remotly
sudo chmod -R 755 /srv/remotly
sudo chmod 600 /srv/remotly/config/remotly‑relay.json3. Configuration
Modifiez la configuration : sudo nano /srv/remotly/config/remotly‑relay.json. Utilisez si possible le port HTTPS standard 443, qui passe le mieux les pare‑feux.
Configuration sans TLS :
{
"tlsEnabled": false,
"key": "",
"cert": "",
"forceTLS": false,
"domain": "",
"port": 443,
"max_bandwidth": 40000000,
"allowed_bandwidth": 30000000,
"password": "PasswordPasswordPasswordPassword"
}Configuration TLS (définissez forceTLS sur true pour n’autoriser que les connexions encapsulées dans TLS) :
{
"tlsEnabled": true,
"key": "/etc/letsencrypt/live/relay.example.com/privkey.pem",
"cert": "/etc/letsencrypt/live/relay.example.com/fullchain.pem",
"forceTLS": false,
"domain": "relay.example.com",
"port": 443,
"max_bandwidth": 40000000,
"allowed_bandwidth": 30000000,
"password": "PasswordPasswordPasswordPassword"
}- tlsEnabled — active le chiffrement TLS supplémentaire ; des chemins cert et key valides sont requis lorsque la valeur est true.
- key — chemin absolu vers la clé privée du certificat au format PEM, par exemple /etc/letsencrypt/live/relay.example.com/privkey.pem.
- cert — chemin absolu vers le certificat avec la chaîne complète au format PEM, par exemple /etc/letsencrypt/live/relay.example.com/fullchain.pem.
- forceTLS — lorsque la valeur est true, seules les connexions TLS 1.2 / 1.3 sont acceptées ; le client et l’hôte doivent tous deux utiliser TLS.
- domain — nom de domaine attribué à l’IP du relais dans le DNS (recommandé, utilisé pour le SNI).
- port — port utilisé par le relais pour la communication.
- password — au moins 32 caractères pour restreindre l’accès ; laissez vide pour fonctionner sans mot de passe. Un mot de passe non vide plus court empêche le démarrage du serveur.
4. Démarrer le service
- Enregistrez le service systemd : sudo bash /srv/remotly/script/installremotlyrelay.sh
- Démarrez‑le : sudo bash /srv/remotly/script/startremotlyrelay.sh
- Vérifiez qu’il fonctionne : systemctl status remotly‑relay doit afficher active (running).
sudo bash /srv/remotly/script/installremotlyrelay.sh
sudo bash /srv/remotly/script/startremotlyrelay.sh
systemctl status remotly‑relay
# to stop
sudo bash /srv/remotly/script/stopremotlyrelay.shOuvrez ensuite http://<IP du relais>:<port>/connectionTest (ou https://<domaine du relais>:<port>/connectionTest avec TLS) dans un navigateur. Vous devriez voir le message OK.
Le service démarre avec le système. Après une modification de la configuration, relancez le script de démarrage (il redémarre le service) ; stopremotlyrelay.sh l’arrête. Le journal se trouve dans /srv/remotly/logs/remotly‑relay.log.
5. Enregistrement du relais dans votre compte
Connectez‑vous sur remotly.com, ouvrez Custom Relays et cliquez sur Add relay server. Indiquez l’adresse IP, le ou les ports de remotly‑relay.json, un nom d’appareil visible dans les applications, le code pays et le même mot de passe que dans le fichier de configuration.


Lors de la connexion à un autre ordinateur avec Force Connect Anywhere activé, vous ne devriez désormais voir que le code pays et le nom de votre relais privé.
Dépannage
- connectionTest affiche OK mais les connexions relayées échouent : votre serveur n’est probablement pas accessible depuis l’extérieur de votre réseau. Configurez la redirection de port sur votre IP publique et testez depuis un navigateur externe.
- connectionTest affiche OK mais les connexions passent par un relais officiel Remotly : vous n’avez pas ajouté le relais personnalisé à votre compte dans le panneau web.
- Le relais fonctionne mais connectionTest est inaccessible : depuis l’intérieur de votre réseau, vérifiez que le pare‑feu du serveur ne bloque pas le port du relais ; si le problème ne survient que depuis l’extérieur, corrigez la redirection de port sur votre routeur.
Des questions ? Visitez la communauté Remotly.