Port forwarding con Rinetd

Reindirizzamento semplice del traffico TCP su VPS e server dedicati.

Rinetd è un proxy TCP leggero a processo singolo che inoltra le connessioni da un indirizzo IP e una porta a un altro. È la soluzione ideale per VPS e server dedicati quando hai bisogno di:

  • inoltrare una porta pubblica verso un server o servizio interno
  • eseguire più servizi sulla stessa porta pubblica
  • fornire accesso a servizi dietro NAT o in una rete privata
  • configurare rapidamente il port forwarding senza regole iptables complesse

Rinetd utilizza I/O non bloccanti e gira come processo singolo, gestendo così un elevato numero di connessioni simultanee con un impatto minimo sul server.

Installare Rinetd

Ubuntu / Debian:

sudo apt update
sudo apt install rinetd -y

CentOS / RHEL / AlmaLinux / Rocky:

sudo yum install rinetd -y
# oppure
sudo dnf install rinetd -y

Configurare il port forwarding

  1. Apri il file di configurazione:
sudo nano /etc/rinetd.conf
  1. Aggiungi le regole di inoltro in fondo al file nel seguente formato:
public_IP external_port internal_IP internal_port

Esempio (inoltro da un IP pubblico a più server interni):

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
  • Colonna 1: IP pubblico su cui il server è in ascolto (o 0.0.0.0 per tutte le interfacce)
  • Colonna 2: porta esterna su cui rinetd è in ascolto
  • Colonna 3: IP interno a cui inoltrare il traffico
  • Colonna 4: porta interna sulla macchina di destinazione

Usa gli spazi (non le tabulazioni) tra le colonne. Aggiungi una riga per ogni regola di inoltro. Salva il file (Ctrl+O → Invio → Ctrl+X).

I nostri prodotti e servizi

Hosting WebServizi di hosting affidabili per siti web di qualsiasi dimensione.
Ordina
VPSInfrastruttura cloud flessibile con accesso root completo.
Ordina
Server DedicatiServer dedicati per le massime prestazioni.
Ordina
  1. Riavvia rinetd per applicare le modifiche:
sudo systemctl restart rinetd
# oppure
sudo service rinetd restart

Verificare il funzionamento

  1. Controlla che il servizio sia in esecuzione:
sudo systemctl status rinetd
  1. Visualizza le porte su cui rinetd è in ascolto:
sudo ss -tuln | grep rinetd

oppure

sudo netstat -tuln | grep rinetd
  1. Testa l'inoltro:
  • Connettiti dall'esterno al tuo IP pubblico sulla porta 12341 → il traffico deve raggiungere 192.168.1.5:1234
  • Usa telnet, nc (netcat) o qualsiasi altro client per verificare.

Note utili

  • Per impostazione predefinita, rinetd non registra nulla. Per abilitare il logging, aggiungi in /etc/rinetd.conf:
log /var/log/rinetd.log
  • Per limitare l'accesso a specifici IP sorgente, usa le regole iptables o firewall-cmd prima di rinetd.
  • Sotto carico molto elevato (migliaia di connessioni), rinetd può consumare una quantità significativa di memoria — monitora con top o htop.
  • Alternative: socat, iptables DNAT, HAProxy, modulo stream di NGINX — rinetd resta però la soluzione più semplice e leggera per il port forwarding di base.

Aiuto

Hai domande o ti serve una mano? Scrivici tramite il sistema di ticket — siamo sempre qui per aiutarti!

Hai bisogno di aiuto?I nostri ingegneri ti aiuteranno gratuitamente con qualsiasi domanda in pochi minutiContattaci