Newsgroup: it.comp.os.linux.sys
Titolo: Mi aiutate a fare questo debug per OpenVPN? (lungo)

Sono alle prese con una lan di una 10 di macchine.
Questi pc navigano attraverso una macchina che fa da firewall con 
debian+shorewall. La eth1 ha ip pubblico.
Mi e' stato chiesto di fare in modo che alcuni portatili debbono potersi 
collegare alla lan quando sono fuori sede, e devono poter accedere alle 
risorse condivise di vari pc nella lan.
Allora ho installato OpenVPN sul firewall, ho creato i certificati, ho 
configurato openvpn in modalita' server e ho installato openvpn sui 
portatili. Fin qui tutto bene.
I portatili riescono perfettamente ad agganciarsi al firewall, ottengono 
l'ip e riescono a pingare il firewall stesso... purtroppo non riesco a 
pingare le macchine "dietro" il firewall.
Da premettere che la direttiva client-to-client sul server l'ho messa, ed il 
firewall l'ho configurato per far passare il traffico generato dalla vpn 
seguendo 
http://www.shorewall.net/2.0/OPENVPN.html
Ora vi posto le configurazioni.
OpenVPN - Server:
port 5000
proto udp
dev tap
ca ca.crt
cert server.crt
dh dh1024.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
client-to-client
keepalive 10 120
comp-lzo
persist-key
status openvpn-status.log
log         openvpn.log
verb 3
OpenVPN Client:
client
dev tap
dev-node tap-vpn
proto udp
remote <ip-pubblico-firewall> 5000
resolv-retry infinite
nobind
persist-key
ca ca.crt
cert client.crt
key client.key
comp-lzo
verb 3
Configurazioni aggiunte a shorewall:
interfaces:
vpn     tap+            detect          routeback
tunnels:
openvpnserver   net     
0.0.0.0/0
zones:
vpn     ipv4
rules:
ACCEPT  net     $FW     udp     5000    -
policy:
vpn             all             ACCEPT          info
Infatti dai log del firewall si evince che il traffico vpn passa senza 
problemi. Non e' sicuramente un problema di firewall.
Chi mi aiuta?

 Chi mi aiuta?
Io :D
Cosi' a naso mi sembra che ti manchi la direttiva push-route che da al
client la route verso la tua rete locale.
Ciao
-- 
Nobusama on GSR 600
http://steve.amiciscemi.org

 client la route verso la tua rete locale.
Ciao e grazie per avermi risposto.
La route l'avevo aggiunta io manualmente sul client.
Infatti con un traceroute si vede chiaramnete che se pingo una macchian 
della lan, il primo hop lo fa proprio sul 10.8.0.1 (indirizzo del tap1 del 
firewall) ma poi la richiesta mure li!

Davide D'Amico wrote:

Io proverei a mettere la direttiva push-route. Non so se senza il firewall
sa dove instradare i pacchetti di ritorno dalle macchine lan verso la vpn.
Se poi anche con questa prova la cosa non funziona allora tocca cercare il
problema altrove.


 Io proverei a mettere la direttiva push-route.
Ho fatto. Ma il risultato e' lo stesso. 

Davide D'Amico wrote:

Mmm.. le policy per la zona lan?
Da vpn a all ai ACCEPT ma da lan a vpn?
-- 
Nobusama on GSR 600
Http://steve.amiciscemi.org

 Da vpn a all ai ACCEPT ma da lan a vpn?
               ^^^      
Ussignur... come sono messo...
Ciao
-- 
Nobusama on GSR 600
http://steve.amiciscemi.org

 firewall) ma poi la richiesta mure li!
se fai routing, dal firewall ti converra' nattare, altrimenti gli host 
nella sua lan "locale" non sapranno a chi rispondere :P
da un altro post :
 > tunnels:
 > openvpnserver   net     
0.0.0.0/0
 > rules:
 > ACCEPT  net     $FW     udp     5000    -
occhio che, da tunnels:
# If type is "openvpn", "openvpnclient" or
# "openvpnserver" it may optionally be followed
# by ":" and the port number used by the tunnel. if no
# ":" and port number are included, then the default port
# of 1194 will be used. . Where both the protocol and port
# are specified, the protocol must be given first (e.g.,
# openvpn:tcp:4444).
quindi, se non dannoso, il tunnels file e' ridondante. Sempre che il 
default non fosse 5000, prima che iana assegnasse 1194, ma non so la tua 
versione :P
se hai una debian (ma probabilmente anche altre) probabilmente sarebbe 
piu' figo metter insieme i pezzi via ifupdown (cfr. 
http://snipurl.com/19v87
)
ciao,
--
oggei