User Tools

Site Tools


doc:appunti:net:source_routing

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
doc:appunti:net:source_routing [2015/03/13 11:13] – [Firewall dual homed e source routing con Shorewall] niccolodoc:appunti:net:source_routing [2025/10/07 10:56] (current) – [Firewall dual homed e source routing con Shorewall] niccolo
Line 64: Line 64:
 32767:  from all lookup default 32767:  from all lookup default
 </code> </code>
 +
 +Attenzione alla **priorità delle regole** (rules)! Il numero più basso ha priorità maggiore, se non viene indicato il parametro **''priority''** nel comando **''ip rule add''** viene assegnato automaticamente un numero decrescente a partire da **32767** (unsigned int). Secondo questa priorità automatica quindi **la regola inserita per ultima ha priorità maggiore**.
  
 ====== Source IP con ip route ====== ====== Source IP con ip route ======
Line 76: Line 78:
 ip route add 78.47.114.234/32 via 62.48.51.1 src 62.48.51.127 ip route add 78.47.114.234/32 via 62.48.51.1 src 62.48.51.127
 </code> </code>
 +
 ====== Routing in base al servizio ====== ====== Routing in base al servizio ======
  
Line 144: Line 147:
 ====== Firewall dual homed e source routing con Shorewall ====== ====== Firewall dual homed e source routing con Shorewall ======
  
-**Esempio**: collegamento a internet con due interfacce, **eth0** ADSL e **eth2** (94.94.64.138, HDSL). La rotta predefinita è su eth0, parte del traffico viene dirottato su eth2 tramite regole di ''iptables''. La **LAN** 10.22.20.0/24 è collegata su **eth1**.+**Esempio**: collegamento a internet con due interfacce, **eth0** (217.58.174.226, ADSLe **eth2** (94.94.64.138, HDSL). La rotta predefinita è su eth0, parte del traffico viene dirottato su eth2 tramite regole di ''iptables''. La **LAN** 10.22.20.0/24 è collegata su **eth1**.
  
 Queste le accortezze da utilizzare: Queste le accortezze da utilizzare:
  
   * In **''/etc/shorewall/interfaces''** si indicano le due interfacce collegate alla zona **net**.   * In **''/etc/shorewall/interfaces''** si indicano le due interfacce collegate alla zona **net**.
-  * In **''/etc/shorewall/shorewall.conf''** si imposta **''ROUTE_FILTER=No''**, altrimenti il traffico in uscita dalla eth2 viene filtrato come //martian source//. +  * In **''/etc/shorewall/shorewall.conf''** si imposta **ROUTE_FILTER=No**, altrimenti il traffico in uscita dalla eth2 viene filtrato come //martian source//. 
-  * Per lo stesso motivo di cui sopra **non** si deve mettere l'opzione **''routefilter''** in **''/etc/shorewall/interfaces''**.+  * In **''/etc/shorewall/interfaces''** **NON** ci deve essere l'opzione **routefilter=1** (misura anti-spoofing), per lo stesso motivo di cui sopra**ATTENZIONE**: Se in ''shorewall.conf'' c'è l'opzione ''ROUTE_FILTER=Yes'', impostare qui ''routefilter=0'' non è sufficiente. 
 +  * In **''/etc/shorewall/interfaces''** è opportuno avere l'opzione **sourceroute=0** (parametro accept_source_route del kernel) sulle interfacce collegate a peer non fidati (connessioni ISP, ecc). 
 + 
 +**''/etc/shorewall/interfaces''** 
 + 
 +<file> 
 +# Dual-homed external interfaces require global ROUTE_FILTER=No in shorewall.conf. 
 +# The safe policy for connections with untrusted peers is to set accept_source_route to 0. 
 +# Notice: source route packets are nonsensical on a PPP link. 
 +accept_source_route = 0 
 +net    eth0    tcpflags,nosmurfs,sourceroute=0 
 +net    eth2    tcpflags,nosmurfs,sourceroute=0 
 +# Enable route filter (rp_filter kernel paramter) specifically on the local interface. 
 +loc    eth1    dhcp,routefilter=1 
 +</file>
  
 **''/etc/iproute2/rt_tables''** **''/etc/iproute2/rt_tables''**
Line 179: Line 196:
 </file> </file>
  
-**''/etc/shorewall/masq''**+**''/etc/shorewall/snat''** (per il nuovo Shorewall v.5) 
 + 
 +<file> 
 +SNAT(217.58.174.226)    192.168.1.0/24   eth0    # LAN to internet via HDSL 
 +SNAT(94.94.64.138)      192.168.1.0/24   eth2    # LAN to internet via ADSL 
 +</file> 
 + 
 +**''/etc/shorewall/masq''** (per il vecchio Shorewall v.4)
  
 <file> <file>
Line 185: Line 209:
 eth2    10.22.20.0/24       # LAN to internet via ADSL eth2    10.22.20.0/24       # LAN to internet via ADSL
 </file> </file>
- 
  
 **''/etc/shorewall/start''** **''/etc/shorewall/start''**
doc/appunti/net/source_routing.1426241639.txt.gz · Last modified: by niccolo