📝 Sintesi
Guida rapida per configurare una VPS Linux come router per VPN (es. WireGuard). Include la verifica delle regole, l'attivazione del kernel forwarding e le regole di NAT (Masquerade) necessarie per permettere ai client di navigare.
📌 Punti Chiave
1. Diagnostica e Verifica
Comandi per controllare lo stato attuale del firewall.
- Tutte le regole: Elenca tutto con dettagli (
-v) e IP numerici (-n).
bash iptables -L -v -n - Catene specifiche: Focus solo su Forwarding o NAT.
bash iptables -L FORWARD -v -n iptables -t nat -L POSTROUTING -n -v
2. Abilitazione IP Forwarding
Essenziale per permettere il passaggio di pacchetti tra interfacce.
- Verifica stato (Output:
0disabilitato,1abilitato):
bash sysctl net.ipv4.ip_forward - Abilitazione immediata (non persistente):
bash sysctl -w net.ipv4.ip_forward=1 - Abilitazione permanente:
Modificare il file/etc/sysctl.confaggiungendo o de-commentando:
conf net.ipv4.ip_forward=1
3. Configurazione NAT (Masquerade)
Permette alla subnet privata (VPN) di uscire su internet usando l'IP pubblico del server.
-
Caso A: Subnet
10.10.0.0/24su interfacciaens6
bash iptables -t nat -A POSTROUTING -s 10.10.0.0/24 -o ens6 -j MASQUERADE -
Caso B: Subnet
10.0.0.0/24su interfacciaeth0
bash iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -o eth0 -j MASQUERADE
4. Regole di Forwarding (Esempio WireGuard)
Regole per permettere il traffico tra l'interfaccia VPN (wg0) e quella fisica (ens6).
# Accetta traffico dalla VPN verso l'esterno
iptables -A FORWARD -i wg0 -o ens6 -j ACCEPT
# Accetta traffico di risposta (connessioni già stabilite)
iptables -A FORWARD -i ens6 -o wg0 -m state --state RELATED,ESTABLISHED -j ACCEPT
✅ Azioni (Next Steps)
🔗 Collegamenti/Idee Correlate
Setup tipico per VPS con WireGuard in cloud (DigitalOcean, Hetzner, OVH).
Possibile estensione: hardening firewall (limitazione porte, rate limiting, logging).
Evoluzione futura: migrazione anftableso gestione via Ansible.