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
mentre sulla configurazione del server puoi togliere la riga
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
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:
oppure
Linux:
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
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 e
questo 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