3 155
contributi
Wtf (discussione | contributi) |
Wtf (discussione | contributi) |
||
Riga 242: | Riga 242: | ||
==== Uso di una VPN commerciale ==== | ==== Uso di una VPN commerciale ==== | ||
Questo esempio si basa sulla precedente configurazione (''Wireless access point e ADSL'') per adattarla al caso in cui si decida di configurare il proprio gateway per far transitare tutto il traffico della propria LAN attraverso un tunnel VPN. Si ipotizza inoltre che sul computer che agisce come gateway sia in funzione un servizio che richiede di accettare nuove connessioni dall'esterno attraverso la porta 6666 e che il proprio fornitore di VPN permetta di reindirizzare una sola porta, la 6666 appunto (motivo per cui è stato eliminata la parte di configurazione relativa al forwording delle nuove connessioni come quelle basate sulla porta 20800). | |||
{{Suggerimento|Prima di procedere si consiglia la lettura della corrispondente sezione presente nella guida dedicata a [[Openvpn]].}} | |||
{{Box|Nota|La seguente configurazione farà si che tutte le connessioni provenienti da internet non transitanti per il tunnel VPN saranno rifiutate. | |||
}} | |||
<pre> | |||
#!/bin/bash | |||
# | |||
# INTERFACCE: br0 è l'interfaccia LAN, mentre ppp0 quella ADSL | |||
# ------------ | |||
# FILTER TABLE | |||
# ------------ | |||
# INPUT chain | |||
# ----------- | |||
# Politica del negare in modo .predefinito quando non esplicitamente permesso | |||
iptables -P INPUT DROP | |||
# Permette tutto il traffico su loopback (lo0) ed elimina tutto il traffico che non usa lo0 verso 127/8 | |||
iptables -A INPUT -i lo -j ACCEPT | |||
iptables -A INPUT ! -i lo -d 127.0.0.0/8 -j REJECT | |||
# Accetta tutte le nuove connessioni che NON provengono da internet | |||
iptables -A INPUT -m state --state NEW -i br0 -j ACCEPT | |||
# Accetta tutte le connessioni già stabilite | |||
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT | |||
# Accetta anche le nuove connessioni per la porta 6666 | |||
iptables -A INPUT -i tun0 -m state --state NEW -p tcp --dport 6666 -j ACCEPT | |||
# Permettere ping | |||
# notare che bloccare altri tipi di pacchetti icmp è considerata da alcuni una cattiva idea | |||
# rimuovere -m icmp --icmp-type 8 da questa riga per permettere tutti i tipi di icmp: | |||
# https://security.stackexchange.com/questions/22711 | |||
iptables -A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT | |||
# Registrare le sole chiamate negate (accesso via il comando 'dmesg') | |||
iptables -A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied: " --log-level 7 | |||
# Respingere tutto il resto del traffico in entrata: politica del negare | |||
# in modo predefinito quando non esplicitamente permesso | |||
iptables -A INPUT -j REJECT | |||
# OUTPUT chain | |||
# ------------ | |||
# Imposta il comportamento predefinito (accetta tutto) | |||
iptables -P OUTPUT ACCEPT | |||
# FORWARD chain | |||
# ------------- | |||
# Imposta il comportamento predefinito (scarta tutto) | |||
iptables -P FORWARD DROP | |||
# Accetta tutto il traffico entrante diretto alla lan (br0), | |||
# purché veicolato da connessioni già stabilite o ad esse riconducibile | |||
iptables -A FORWARD -i ppp0 -o br0 -m state --state ESTABLISHED,RELATED -j ACCEPT | |||
# Non inoltrare il restante traffico in entrata | |||
iptables -A FORWARD -i tun0 -o br0 -j REJECT | |||
# Inoltra tutto il traffico uscente proveniente dalla LAN | |||
iptables -A FORWARD -i br0 -o tun0 -j ACCEPT | |||
# Inoltra tutto il traffico proveniente da wlan0 a eth0 e viceversa (quindi entrante e uscente | |||
# da br0) | |||
iptables -A FORWARD -i br0 -o br0 -j ACCEPT | |||
# --------- | |||
# NAT table | |||
# --------- | |||
# POSTROUTING chain | |||
# ----------------- | |||
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE | |||
</pre> | |||
== Approfondimenti == | == Approfondimenti == |
contributi