erlug
[Top] [All Lists]

Re: [Erlug] Domanda non banale su ipsec e SNAT

To: ERlug - Lista Pubblica <erlug@xxxxxxxxxxxxxx>
Subject: Re: [Erlug] Domanda non banale su ipsec e SNAT
From: Fabio Muzzi <kurgan@xxxxxxxxxx>
Date: Sat, 26 May 2007 16:47:40 +0200
Hello m,

Wednesday, May 23, 2007, 4:48:41 PM, you wrote:

>> > perche` ti serve un interfaccia ? non ti basta un -s 10.0.0.0/8 -d
>> > $quel -j MASQUERADE
>> In effetti non e` detto che mi serva una interfaccia, occorre pero` vedere
>> se  cosi` funziona... e lo scopriro` quando sara` troppo tardi per tornare
>> indietro se non funziona.


> why not ? e` un metodo consolidato che si usa tutte le volte che non sai
> a priori che interfaccia avrai, come col ppp (sort of, e` piu` o meno
> possibile assegnarle un interfaccia ppp staticamente, ma e` un po' un
> accrocchio AFAIK)

Ecco, non funziona.

Prima  di  tutto,  non  posso  usare  MASQUERADE  perche` *non esiste* una
interfaccia  di  uscita  (cioe`  si`, esiste, ed e` quella pubblica che va
verso  internet,  ma non e` questo che vogliamo ottenere, no?) dalla quale
prendere  un  IP.  Ti  ricordo  che  ipsec  nel kernel 2.6 non produce una
interfaccia virtuale di alcun tipo.

Secondariamente, usando (come ho provato)

iptables -t nat -A POSTROUTING  -j SNAT -s 10.0.0.0/16 -d 151.95.0.0/16 
--to-source 151.95.160.2

succede una serie di cose carine:

1-   siccome  151.95.160.2  non  e`  un  indirizzo  assegnato  a  NESSUNA
interfaccia  (dovrebbe  essere assegnato alla virtuale ipsec, se ci fosse)
ho dovuto assegnarlo come alias ad una interfaccia a caso.

2-  i  pacchetti  escono  su internet attraverso il routing standard e non
entrano nel tunnel.


Allora  ho  tentato  di  aggiungere  delle  policy  di routing dentro alla
configurazione  di  ipsec (si`, perche` il routing per ipsec e` a parte, e
non si legge con "ip route"), cosi`:

 echo " spdadd  10.0.0.0/16[any] 151.95.0.0/16[any] any -P fwd ipsec 
esp/tunnel/83.211.205.162-81.200.226.14/require;" | setkey -c

Ora  i  pacchetti  spariscono nel nulla e non entrano nel tunnel ipsec ne`
escono su internet ne` fanno qualsiasi altra cosa.

Mi  sa  che fare SNAT sulla stessa macchina che e` endpoint del tunnel NON
sia piu` supportato con il kernel 2.6.

Mi  tocchera`  montare  una  seconda  macchina  che  fa da terminatore del
tunnel,  attaccarla  con  un cavo cross al filrewall, e quest'ultimo fara`
SNAT e basta.

Ovviamente  adesso  siamo  senza  servizio  fino a che non modifico tutto,
$divinita` $animale.



-- 

 Fabio "Kurgan" Muzzi

Giaaaanniiii! Sono alcolista!!!
Vedo macchine con le calze a rete... porte che si masturbano!

<Prev in Thread] Current Thread [Next in Thread>