Rete vpn site to site - problema



  • Salve a tutti,
    grazie a voi, ho realizzato una rete vpn a "stella" tramite il modulo OpenVPN, configurata in site to site, in questo modo:

    SEDE A (SERVER)
    SEDE B (CLIENT1)
    SEDE C (CLIENT2)
    SEDE D (CLIENT3)

    SEDE         LAN                         WAN                     TUNNEL                     GW                    PORTA
    SEDE A    192.168.1.22/24 192.168.0.100/24           -            192.168.1.1/24         
    SEDE B 192.168.3.22/24 192.168.5.X/24       192.168.10.X/24       192.168.3.22/24          1194
    SEDE C 192.168.2.22/24 192.168.8.X/24       192.168.12.X/24       192.168.2.22/24          1195
    SEDE D 192.168.4.22/24 192.168.6.X/24       192.168.13.X/24       192.168.4.22/24          1196

    In questo modo, la SEDE A, può comunicare con tutte le sedi e di conseguenza, può vedere tutte le rispettive LAN, mentre le SEDI B-C e D, possono vedere solo la LAN della SEDE A, ma non le sedi tra di loro.

    La mia prima domanda è, posso far in modo che le SEDI riescano a vedere anche le LAN tra loro? ovvero, SEDE B vede SEDE C e D, la SEDE C vede la B e D, la SEDE D vede la C e la B?

    poi, oltre a questo sistema, ho anche configurato un Client per installarlo sul mio pc di casa e collegarmi tramite la VPN alla rete della SEDE A, per farlo ho installato su pfsense SEDE A, il pacchetto "openvpn-client-export", ed ho esportato l'installer per windows.
    Anche il Client funziona regolarmente, solo che chiaramente, riesco a vedere solo la rete LAN della SEDE A; cosa devo modificare per far si che riesca a vedere tutte le LAN di tutte le SEDI dal mio pc?

    Sicuro ho tralasciato qualche informazione che vi servirà per aiutarmi, ma sto davanti al pc e verifico ogni 10 minuti se mi rispondete  :), quindi se avete domande o chiarimenti, chiedete….
    Spero possiate aiutarmi, grazie in anticipo a tutti



  • Ciao,
    ti mancano tutte le regole di routing. Se non istruisci ogni client vpn su come deve fare a raggiungere le altre sedi, non potrà che vedere solo la rete che gli è stata indicata dal server openvpn
    Sul pfsense che fa da server openvpn devi aggiungere tutti i "PUSH ROUTE …." per istruire i client openvpn.
    Questo lo fai sia nella configurazione genericha che nel client specific override.
    Stessa cosa vale per il client che usi per collegarti da casa.

    Dai un occhiata a questi articoli
    http://www.pfsenseitaly.com/2016/03/openvpn-server-su-pfsense-23.html
    http://www.pfsenseitaly.com/2013/08/openvpn-per-accesso-remoto-piu-sedi.html

    Ciao Fabio



  • Ciao Fabio, e grazie per avermi risposto;
    ti elenco quello che ho fatto:
    Entro nel PfSense "Server",
    Ho modificato il "CLIENT" con il quale utilizzo, per connettermi dal mio portatile

    Inserisco le "rotte" di tutte le sedi:

    poi vado in "Client Specific Overrides" e creo:



    Ma comunque no và  :-[
    Probabilmente sbaglio qualcosa;
    Nelle guide che mi hai proposto, mi chiede anche di assegnare una network, cosi:
    [url=https://postimages.org/]
    dentro lascio tutto di default e creo la relativa regola sul firewall:

    Poi ho messo le rotte anche in System -> Routing -> Static Routes

    e nello specifico, questo:

    Ma nulla ancora  :-[

    Mi puoi dare una mano? scusa se ti disturbo…



  • Bho… scusa se mi permetto, ma mi pare che hai fatto un pò di confusione.
    Se ho capito bene, guardando i tuoi screenshot, hai attivano N daemon openvpn per ogni rete, il che non mi risulta necessario.
    Secondo me, basta creare UN servizio openvpn su udp 1194 al centro stella, immagino essere il pfsense della sede A, e poi ogni client ci si collega ognuno col suo account/certificato
    A quel punto ogni pfsense delle varie sedi, si beccherà un ip del tunnel... supponiamo che azienda (il centro stella) A il cui tunnel ha 192.168.10.0/24, quindi openvpn si beccherà 192.168.10.1, a quel punto sede B,C e D si beccheranno rispettivamente .10.2, 10.3 e 10.4.
    A quel punto fai i routing statici dove  192.168.1.0/24 gw 192.168.10.1,  192.168.3.0/24 gw 192.168.10.2 etc.etc.
    Fatto questo metti nelle rules openvpn nel pfsense centro stella, il solito pass su any tcp/udp, e teoricamente dovrebbe andare.



  • @sisko212:

    Bho… scusa se mi permetto, ma mi pare che hai fatto un pò di confusione.
    Se ho capito bene, guardando i tuoi screenshot, hai attivano N daemon openvpn per ogni rete, il che non mi risulta necessario.
    Secondo me, basta creare UN servizio openvpn su udp 1194 al centro stella, immagino essere il pfsense della sede A, e poi ogni client ci si collega ognuno col suo account/certificato
    A quel punto ogni pfsense delle varie sedi, si beccherà un ip del tunnel... supponiamo che azienda (il centro stella) A il cui tunnel ha 192.168.10.0/24, quindi openvpn si beccherà 192.168.10.1, a quel punto sede B,C e D si beccheranno rispettivamente .10.2, 10.3 e 10.4.
    A quel punto fai i routing statici dove  192.168.1.0/24 gw 192.168.10.1,  192.168.3.0/24 gw 192.168.10.2 etc.etc.
    Fatto questo metti nelle rules openvpn nel pfsense centro stella, il solito pass su any tcp/udp, e teoricamente dovrebbe andare.

    Ciao sisko… si, la sede A è la sede "server" del pfsense, dove ci sono tutti i profili delle varie sedi. Tutte queste sedi (B - C -D) hanno.anche loro un pfsense adibito però a client e tra queste sedi e la sede principale, è stato configurato openvpn in "site to site". In una guida che ho seguito per creare tutto ciò, mi ha fatto settare ogni "tunnel" con una rete diversa, infatti una è 192.168.10.0, un altra è 192.168.12.0 e l altra 192.168.13.0.... poi successivamente, ho creato unaltro profilo e l'ho chiamato Client, dove ho inseito il certificato creato in precedenza, ho messo la stessa porta che utilizza una delle sedi, la 1194, e infine gli ho settato un ennesimo tunnel diverso, la 192.168.22.0...
    Se, come mi suggerisci tu, metto quelle rotte, le sedi hanno indirizzi di tunnel differenti dalla classe 192.168.10.0.... come potrebbero vederle ugualmente?
    Forse ho sbagliato dal principio? Cioè, bisognava settare tutti i tunnel di tutte le sedi con 192.168.10.0/24?



  • Ciao,
    Ti basta un server solo e di conseguenza una subnet sola per il tunnel.
    Sempre sul server, per ogni sede devi creare uno specific override, questo ti permette di "personalizzare" le tabelle di routing dei vari client.

    Ciao



  • in sostanza le route statiche non sono altro che le rotte per le quali i pacchetti ip passano per un dato gateway, in modo da raggiungiugere una rete.
    Faccio un esempio generale, ma che in linea di massima dovrebbe essere applicabile a tutte, indipendentemente che ci sia un mezzo un tunnel vpn o meno
    Supponiamo di avere N reti

    A-lan= 192.168.10.x/24;  B-lan = 192.168.11.x/24;    C-lan = 192.168.12.x/24;    D-lan = 192.168.13.x/24

    a questo punto tutte queste reti, devono avere un gateway in comune per cui possano passare pacchetti dall'una all'altra.
    Questo può essere lo stesso vpn, o server con più schede di rete, vlan o appunto un tunnel vpn
    Tornando all'esempio, diciamo che A oltre alla LAN di cui sopra, ha un tunnel openvpn, supponiamo 192.168.254.x/24, per cui il device tun A-tun=192.168.254.1/24, e tutte le altre B-tun=192.168.254.2/24  C-tun=192.168.254.3/24;  D-tun=192.168.254.4/24etc.etc.

    a questo punto i route in A diventano:
    route add -net 192.168.11.0 netmask 255.255.255.0 gw 192.168.254.2  // raggiungo lan su B
    route add -net 192.168.12.0 netmask 255.255.255.0 gw 192.168.254.3 // raggiungo lan su C
    route add -net 192.168.13.0 netmask 255.255.255.0 gw 192.168.254.4 // raggiungo lan su D

    sul server B diventano:
    route add -net 192.168.10.0 netmask 255.255.255.0 gw 192.168.254.1  // raggiungo lan su A
    route add -net 192.168.12.0 netmask 255.255.255.0 gw 192.168.254.3 // raggiungo lan su C
    route add -net 192.168.13.0 netmask 255.255.255.0 gw 192.168.254.4 // raggiungo lan su D

    e così via per C e D
    Ossia, a ogni server "dici" che per raggiungere una data lan, devi passare per un dato gateway.
    Ovviamente i gateway, devono essere frà di loro "visibili", per questo sono su una stessa classe di IP.
    Infine il default gateway, che va per ultimo, sono tutte le altre reti che non sono state dichiarate precedentemente.

    Nel tuo caso, il server in A avrà il server openvpn che sarà il centro stella, e le rotte statiche le setti con il "push route" che è appunto un settaggio di openvpn, piuttosto che come route statica (che si trova nei menu di pfsense)
    Se non ricordo male, dovrebbe essere possibile settarla dviersa per ogni client (i tuoi server B C e D). Se non fosse possibile, è una cosa che comunque dovresti poter impostare anche dentro i singoli file di configurazione .ovpn che userai nei tuoi B C e D.



  • Ragazzi, ora mi è più chiaro. Quindi non c'è bisogno di assegnare un ip diverso per ogni tunnel, basta assegnarne uno uguale per tutte le sedi, tipo 192.168.10.x/24. Però ho una perplessità, non vorrei che le sedi B - C e D riescano a raggiungersi tra di loro, per una questione di sicurezza, ma che raggiungano solo la sede A, come attualmente succede. Vorrei solo IO poter vedere tutte le Lan di tutte le sedi, quando mi collego con il mio notebook alla vpn tramite il software che ho scaricato dall'applicazione. Non ricordo se l'ho menzionato nei post precedenti, ma una volta che ho finito tutta la vpn e funziona come volevo io, successivamente ho creato un altro profilo "tun" per collegarmi; infatti ho scaricato ed installato un package "openvpn-client-export" ed ho esportato l'eseguibile per Windows 7. L'ho installato e si collega perfettamente… ma vedo solo la LAN della Sede A, mentre vorrei vedere tutte le LAN delle altre sedi, solo ed esclusivamente da questa connessione...

    Vi chiedo scusa se sono stato ripetitivo, ma ho paura di non sapermi spiegare molto bene...



  • Openvpn ha da qualche parte la configurazione per far in modo che i client non vedano gli altri client, per cui vedono solo il server.
    Mi pare che su pfsese si chiami "Inter Client communications".
    Nell'eventualità non dovesse andare ci sono sempre le rules classiche di pfsense



  • Ciao,
    A questo punto togli le route per ogni rete e lascia solo PUSH "ROUTE [ip lan rete server] 255.255.255.0" in modo che ogni client sappia come raggiungere la LAN della sede centrale
    Sulla tua connessione devi invece aggiungere le route per poter raggiungere le subnet di tutte le sedi come da articolo che ti avevo girato

    L'opzione "inter-client communication" serve solo per connessioni "remote access" (quelle usate dai client) per permettere la comunicazione tra gli stessi (ma solo tra questi e non con tutta la sottorete)

    Ciao



  • Ragazzi… grazie della pazienza, comunque una cosa stranissima..... appena inserisco le route statiche.... va giù il profilo VPN di quella determinata "SEDE"... bha... ho dovuto collegarmi da remoto sul client e togliere la route...
    Stessa cosa se cerco di inserire le route sul profilo che utilizzo io, remote access, non si collega più... va giù il servizio e non andava più più su.... ho dovuto riavviare pfsense Server per avviare nuovamente il servizio....

    Cmq giusto per chiarezza, le route le inserisco in VPN-->OPENVPN-->SERVER-->ACTION - MODIFICA su ogni sede (SEDE A -B -C) e inserisco le route in "Advanced Configuration" - "Custom Option" con la formula "iroute 192.168.1.0 255.255.255.0" dove 192.168.1.0 è la LAN lato Server.
    Mentre per il "Remote Access", sempre in  VPN-->OPENVPN-->SERVER-->ACTION - MODIFICA sul profilo che uso come Remote Access, e inserisco le route sempre in "Advanced Configuration" - "Custom Option" con la formula "iroute 192.168.2.0 255.255.255.0" "iroute 192.168.3.0 255.255.255.0"  dove 192.168.2.0 e 192.168.3.0 sono le LAN delle SEDI....
    Dove sbaglio secondo voi?



  • Ciao,
    gli IROUTE che hai messo sono sbagliati.
    Non capisco perchè ti stai complicando la vita.

    Per configurare le vpn site to site puoi seguire questa guida
    http://www.pfsenseitaly.com/2016/03/openvpn-server-su-pfsense-23.html
    e poi puoi replicare n volte la parte dei client

    Per la parte di remote access (la tua vpn di gestione) segui questa guida
    http://www.pfsenseitaly.com/2013/08/openvpn-per-accesso-remoto-piu-sedi.html

    Ciao Fabio


Log in to reply