= Configurazione di un link fra due reti con chiave preshared = Questa e` la configurazione piu` semplice del mondo, non la piu` sicura. Tuttavia è comoda da realizzare, e non è meno sicura del 99% delle connessioni ipsec che vedo in giro dai clienti con i loro firewall commerciali da 10.000 euro, una chiave preshared e algoritmi obsoleti. Questa configurazione crea un tunnel, non un bridge. In altri termini fa routing a layer 3 e non bridging a layer 2. * Su una delle due macchine, creare la pre-shared key con {{{openvpn --genkey --secret }}} * Creare un file di configurazione minimale come questo: {{{ # device per il tunnel dev tun0 # indirizzi ip pubblici locale e remoto remote 62.123.191.1 local 82.88.19.1 # porta udp esterna (se non uso il default) port 4242 # indirizzi ip privati locale e remoto (uso quelli delle eth locali, ma # potrei anche usarne altri due a caso non usati nelle reti) ifconfig 192.168.1.254 192.168.2.1 # routing (indico che la rete remota va routata per la vpn) # qui metto indirizzo e netmask della rete REMOTA. route 192.168.2.0 255.255.255.0 # pre shared key secret # dropppo i privilegi user nobody group nogroup # log level 3 verb 3 }}} * Copiare tutto sulla macchina remota, ed editare il file sulla macchina remota per ribaltare local con remote, modificare il routing per indicare la rete remota. * Lanciare openvpn su tutte due le macchine con {{{/etc/init.d/openvpn start}}} === Keepalive per link rognosi === Se ci sono dei nat in mezzo, e il link non resta su quando non c'e` traffico, si possono aggiungere nei file di configurazione di tutti e due gli endpoint un paio di righe per il keepalive. {{{ # Ogni 60 secondi manda un keepalive, e se non hai risposta in 120 secondi, resetta il link keepalive 60 120 # Quanto sopra vale SOLO quando sei in connessione stabilita ping-timer-rem # tieni "buono" il tunnel anche se ci sono interruzioni sull' UDP persist-tun # se devi resettare il tunnel, non rileggere la chiave ma usa quella che hai in ram persist-key }}} === Link fra due ip dinamici con dns dinamico === Per una vpn fra due endpoint (non in stile client/server) con ip e dns dinamico, si puo` cercare di ovviare ai problemi di cambio di indirizzo ip di uno dei due endpoint (anche di tutti e due, nel caso) cosi`: {{{ ping 60 ping-restart 300 # 5 minutes resolv-retry 300 # 5 minutes persist-tun persist-key replay-persist replay-persist-file }}} In questo modo se uno dei due endpoint cambia indirizzo, dopo 300 secondi di disconnessione (causata dal cambio di indirizzo) openvpn riavvia l'handshake provvedendo anche a ri-risolvere dal dns l'ip del remoto (resolv-retry).