Redirection de ports avec Rinetd
Redirection simple du trafic TCP sur VPS et serveurs dédiés.
Rinetd est un proxy TCP léger à processus unique qui redirige les connexions d'une adresse IP et d'un port vers une autre. Il est idéal pour les VPS et les serveurs dédiés lorsque vous avez besoin de :
- rediriger un port public vers un serveur ou un service interne
- faire tourner plusieurs services sur le même port public
- fournir l'accès à des services derrière un NAT ou dans un réseau privé
- mettre en place une redirection de port rapide sans règles iptables complexes
Rinetd utilise des I/O non bloquantes et fonctionne en tant que processus unique, ce qui lui permet de gérer un grand nombre de connexions simultanées avec un impact minimal sur le serveur.
Installer Rinetd
Ubuntu / Debian :
sudo apt update
sudo apt install rinetd -y
CentOS / RHEL / AlmaLinux / Rocky :
sudo yum install rinetd -y
# ou
sudo dnf install rinetd -y
Configurer la redirection de port
- Ouvrez le fichier de configuration :
sudo nano /etc/rinetd.conf
- Ajoutez les règles de redirection à la fin du fichier dans ce format :
public_IP external_port internal_IP internal_port
Exemple (redirection depuis une IP publique vers plusieurs serveurs internes) :
85.85.85.85 12341 192.168.1.5 1234
85.85.85.85 12342 192.168.1.6 1234
85.85.85.85 12343 192.168.1.7 1234
85.85.85.85 12344 192.168.1.8 1234
85.85.85.85 12345 192.168.1.9 1234
- Colonne 1 : IP publique sur laquelle le serveur écoute (ou
0.0.0.0pour toutes les interfaces) - Colonne 2 : port externe sur lequel rinetd écoute
- Colonne 3 : IP interne vers laquelle le trafic est redirigé
- Colonne 4 : port interne sur la machine cible
Utilisez des espaces (et non des tabulations) entre les colonnes. Ajoutez une ligne par règle de redirection. Enregistrez le fichier (Ctrl+O → Entrée → Ctrl+X).
Nos produits et services
- Redémarrez rinetd pour appliquer les modifications :
sudo systemctl restart rinetd
# ou
sudo service rinetd restart
Vérifier le fonctionnement
- Vérifiez que le service est en cours d'exécution :
sudo systemctl status rinetd
- Affichez les ports sur lesquels rinetd écoute :
sudo ss -tuln | grep rinetd
ou
sudo netstat -tuln | grep rinetd
- Testez la redirection :
- Connectez-vous depuis l'extérieur à votre IP publique sur le port 12341 → le trafic doit atteindre 192.168.1.5:1234
- Utilisez
telnet,nc(netcat) ou tout autre client pour vérifier.
Remarques utiles
- Par défaut, rinetd n'enregistre rien. Pour activer la journalisation, ajoutez ceci dans
/etc/rinetd.conf:
log /var/log/rinetd.log
- Pour restreindre l'accès à des IP sources spécifiques, utilisez des règles
iptablesoufirewall-cmdavant rinetd. - Sous forte charge (des milliers de connexions), rinetd peut consommer beaucoup de mémoire — surveillez-le avec
topouhtop. - Alternatives : socat, iptables DNAT, HAProxy, module stream NGINX — rinetd reste cependant la solution la plus simple et la plus légère pour une redirection de port basique.
Aide
Une question ou besoin d'un coup de main ? Écrivez-nous via le système de tickets — nous sommes toujours là pour vous aider !