Pagina 1 di 1

openvpn client non pinga server

Inviato: martedì 1 novembre 2011, 18:22
da MaxUb
Ciao a tutti ragazzi,

E' da un bel pò che stò costruendo una rete vpn con openvpn e ubuntu server ma sto letteralmente impazzendo vi spiego meglio la situazione:

PC A fuori dalla rete con ip vpn 10.8.0.6
Server vpn:10.8.0.1 mentre lato lan:192.168.1.5

Il pc A si collega benissimo al server vpn,riesce a pingarlo e tranquillamente riesce persino a montare cartelle condivise con samba sul server vpn
Il server vpn a sua volta riesce benissimo a pingare il pc A che è fuori dalla rete

Il pc B(windows 7) che è all'interno della lan dove è presente il server vpn riesce anche lui a collegarsi tranquillamente al server vpn infatti ottiene l'ip vpn:10.8.0.10 mentre lato lan:192.168.1.7,ma non riesce nè a pingare il server vpn e neanche a pingare il pc A,ovviamente anche il pc A non riesce a pingare il pc B

Come mai?Eppure la configurazione è corretta allego qui

CLIENT
client
dev tun
proto udp
remote prova.no-ip.org
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert pincopallo.crt
key pincopallo.key
ns-cert-type server
comp-lzo
verb 3
-----------
SERVER
port 1194
proto udp
dev tun
ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/server.crt
key /etc/openvpn/keys/server.key
dh /etc/openvpn/keys/dh2048.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push “route 192.168.1.5 255.255.255.0″
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
verb 3

Cosa può essere??

Grazie mille come sempre!

Re: openvpn client non pinga server

Inviato: mercoledì 2 novembre 2011, 16:01
da thece
Ciao,
per raggiungere la rete 192.168.1.0 dal client connesso tramite VPN, sulla configurazione del client devi aggiungere la riga

Codice: Seleziona tutto

route 192.168.1.0 255.255.255.0
mentre sulla configurazione del server puoi togliere la riga

Codice: Seleziona tutto

push “route 192.168.1.5 255.255.255.0″
Inoltre sul server devi abilitare l'inoltro dei pacchetti IP tra le varie interfacce di rete:

- nel file /etc/sysctl.conf devi decommentare la riga net.ipv4.ipforward=1

- tramite terminale devi dare questo comando a IPTables:

Codice: Seleziona tutto

iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
eth0 è l'intefaccia di rete con cui il server vede la rete 192.168.1.0, cambialo se usi un'altra interfaccia
Il comando di cui sopra è volatile, ossia come riavvi la macchina server viene dimenticato. Per renderlo persistente esistono diverse tecniche, guarda un pò con Google quella che preferisci. Una tecnica è questa:

Esempio di file /etc/network/interfaces

Codice: Seleziona tutto

# Interfaccia di rete di loopback
auto lo
	iface lo inet loopback
	address 127.0.0.1
	netmask 255.0.0.0

# Prima interfaccia di rete
auto eth0
	iface eth0 inet static
	address 192.168.0.11
	netmask 255.255.255.0
	network 192.168.0.0
	broadcast 192.168.0.255
	gateway 192.168.0.1
	# IPTables: salvataggio e ripristino delle regole di firewall
	pre-up iptables-restore < /scripts/iptables_rules.txt
	post-down iptables-save > /scripts/iptables_rules.txt


Re: openvpn client non pinga server

Inviato: mercoledì 2 novembre 2011, 16:11
da thece
... dimenticavo, con la configurazione di VPN che hai fatto, i client della VPN non possono pingarsi fra loro! Le connessioni VPN che hai configurato sono praticamente punto-a-punto con il server VPN

Codice: Seleziona tutto

           PC A                   Server VPN                 PC B
       10.8.0.6 <----- VPN -----> 10.8.0.1 <----- VPN -----> 10.8.0.10
###.###.###.###                   192.168.1.5                192.168.1.7

Non ricordo come modificare questo comportamento: dovresti leggerti la documentazione di OpenVPN.

Però tutti i client VPN (10.8.0.###) dovrebbero riuscire a pingare il server VPN (10.8.0.1). Inoltre il client 192.168.1.7 dovrebbe riuscire comunque a pingare il server 192.168.1.5 poichè appartengono alla stessa rete

Re: openvpn client non pinga server

Inviato: mercoledì 2 novembre 2011, 19:41
da MaxUb
grande!In effetti hai perfettamente ragione ora funziona tutto alla perfezione,per far si che si pingassero bisognava inserire la direttiva client-to-client nel file di openvpn

Visto che ci sei ne approfitto e ti chiedo questo,avrei necessità di crittografare tutto il traffico web del client tramite il file server vpn

mi spiego meglio:

Client fuori dalla rete dove è presente il serverv vpn  --->Server vpn-->Internet

nella configurazione standard è crittografato solo il traffico tra client e server vpn,io invece vorrei anche crittografare il traffico web che genera il mio client

come potrei agire?

Re: openvpn client non pinga server

Inviato: mercoledì 2 novembre 2011, 21:46
da thece
Per chiarirti meglio le idee, questa

Codice: Seleziona tutto

route 192.168.1.0 255.255.255.0
inserita nel file di configurazione del client VPN, all'atto della creazione della connessione VPN, questa direttiva inserisce una rotta nella tabella di routing del client che indica al client stesso come instradare il traffico IP per la rete 192.168.1.0, tutta la rete 192.168.1.0.
Ti puoi rendere conto della funzionalità di questo meccanismo con un semplice confronto. Da prima, commenta la direttiva nel file di configurazione del client, avvia la connessione VPN e dalla shell dai il comando:

Windows 7:

Codice: Seleziona tutto

route print -4 
oppure

Linux:

Codice: Seleziona tutto

route -n
A questo punto chiudi la connessione VPN. Decommenta la direttiva e riavvia la connessione VPN. Dalla shell ridai il comando di cui sopra e guarda le differenze tra le due tabelle di routing.



Non sono pratico di server Web, ma direi che devi abilitare/usare solo il protocollo HTTPS invece del protocollo HTTP. Altri utenti potranno aiutarti meglio di me su questo punto



PS: se vuoi agire completamente lato server, ho verificato che la direttiva da inserire nel file di configurazione è questa

Codice: Seleziona tutto

push "route 192.168.1.0 255.255.255.0"

Re: openvpn client non pinga server

Inviato: giovedì 3 novembre 2011, 10:21
da MaxUb
ciao per prima cosa grazie mille per le tue spiegazioni esaurienti..

La direttiva route 192.168.1.0 255.255.255.0 instrada il traffico per tutta la rete 192.168.1.0,ma come fa a capire a chi deve inoltrarla?? Viene inoltrata al server vpn??

Esempio faccio un ping di una macchina con indirizzo ip locale 192.168.1.6 dal client esterno (10.8.0.6) connesso in vpn al server tun0:(10.8.0.1) eth0:192.168.1.5

Quando il client inizia a mandare i pacchetti icmp a chi vengono inoltrati prima di arrivare alla macchina in questione?Al server vpn che a sua volta essendo collegato alla stessa lan dove è presente il pc 192.168.1.6?

Re: openvpn client non pinga server

Inviato: giovedì 3 novembre 2011, 10:36
da thece
MaxUb ha scritto: La direttiva route 192.168.1.0 255.255.255.0 instrada il traffico per tutta la rete 192.168.1.0,ma come fa a capire a chi deve inoltrarla?? Viene inoltrata al server vpn??
Ciao,
il client capisce dove inviare il traffico attraverso la tabella di routing. Non è un discorso particolarmente difficile, e prescinde dalla VPN, ma di certo non si può spiegare in poche righe e senza qualche piccolo disegno esplicativo. Se cerchi in rete troverai tutte le informazioni che ti occorrono

Questo equesto sono due ottimi punti di partenza

Re: openvpn client non pinga server

Inviato: giovedì 3 novembre 2011, 10:38
da MaxUb
ok,inserendo quella direttiva nel client connesso in vpn riesco benissimo a pingare 192.168.1.5 (indirizzo ip locale lan) del server vpn ma tutti gli altri client connessi in vpn ad esempio 192.168.1.6 no non riesco a pingarli

Dovrei pingare anche quelli no?

Re: openvpn client non pinga server

Inviato: giovedì 3 novembre 2011, 10:40
da thece
Ha abilitato l'inoltro dei pacchetti IP sul server, come ti ho spiegato sopra?

Re: openvpn client non pinga server

Inviato: giovedì 3 novembre 2011, 10:42
da MaxUb
cioè?Ho solo inserito la direttiva route nel client..

il pc che sto cercando di pingare è win7 con firewall disattivato

Re: openvpn client non pinga server

Inviato: giovedì 3 novembre 2011, 10:45
da thece
Leggi tutta la soluzione che ti postato, non solo le prime 5 righe  >:(

Re: openvpn client non pinga server

Inviato: giovedì 3 novembre 2011, 11:00
da MaxUb
si ecco ci sono riuscito scusami ma avevo sbagliato a leggere

Ascolta ma siccome voglio capire,la regola di iptables sostanzialmente cosa dice di fare al server vpn??

Vediamo un pò:

direttiva route per far capire al client come deve gestire il traffico per la rete 192.168.1.x e si può fare direttamente nel client oppure mandare questa direttiva dal server e fin qui ok

mentre lato server vpn?

Giusto per capire..

Re: openvpn client non pinga server

Inviato: giovedì 3 novembre 2011, 11:50
da thece
E' un discorso che non è direttamente collegato alla VPN, ma ha un contesto più generico (ad esempio leggi qui).
I comandi per IPTables fanno due cose:
- il primo abilita l'inoltro del traffico IP tra le interfacce di rete, nel tuo caso tra eth0 e tun0 e viceversa;
- il secondo dice a IPTables: tutto il traffico proveniente dall'interfaccia tun0 inoltralo in uscita sull'interfaccia eth0 e mascheralo come fosse stato generato da questa interfaccia di rete, in modo tale che tutte le risposte generate per questo traffico vengano prima inviate all'interfaccia eth0, successivamente rimascherate e inoltrate indietro all'interfaccia tun0

Mi rendo conto che puoi aver capito ben poco, ti ripeto è un discorso un pò lungo. Prova ad usare Wireshark (un analizzatore di traffico) puntandolo sulle varie interfacce di rete, potrebbe aiutarti a capire come gira il traffico ... oppure confonderti ancora di più le idee  :-[

Re: openvpn client non pinga server

Inviato: giovedì 3 novembre 2011, 12:04
da MaxUb
sei stato chiarissimo invece!Si in effetti lo so che è un discorso più generico che non è strettamente collegato alle vpn,ma visto che è uscito fuori è meglio approfondire il discorso interfacce,inoltro,nat,bridge ecc