| Creare una Rete Privata Virtuale(VPN) - conf server |
Pagina 6 di 7 esempio file di configurazione Server, in neretto le direttive
#################################################
# Esempio di OpenVPN 2.0 config file per # # multi-client server. # # # # Questo file è per la configurazione # # OpenVPN lato server fra diversi # # clients e un server # # # # OpenVPN supporta anche la configurazione # # fra singole macchine # # (vedere le pagine di esempio sul sito # # per più info ). # # # # Questa configurazione lavora su Windows # # o su Linux/BSD systems. Occorre ricordare # # che per windows nei percorsi bisogna usare # # doppio backslashes, esempio: # # "C:\\Program Files\\OpenVPN\\config\\foo.key" # # # # I commenti sono preceduti da '#' o ';' # #################################################
# quale tipo di indirizzo IP locale OpenVPN # deve utilizzare ;local a.b.c.d
# quale tipo di porta TCP o UDP deve utilizzare OpenVPN # Se occorrono istanze multiple di OpenVPN # sulla stessa macchina, bisogna utilizzare # un numero di porta diverso per ogni istanza. # bisogna inoltre aprire le porte nel firewall. port 1194
# TCP or UDP server? ;proto tcp proto udp
# "dev tun" creerà un routed IP tunnel, # "dev tap" creerà un ethernet tunnel. # Usare "dev tap0" se avete un ethernet bridging # ed avete precreato un'interfaccia virtuale tap0 # da mettere in bridged con la vostra rete reale. # Se volete controllare gli accessi # nella vostra VPN, dovete creare # delle regole nel firewall per le interfacce TUN/TAP. # Nei sistemi non-windows, potete dare # un numero esplicito come tun0. # In Windows a questo scopo usare "dev-node". # In molto sistemi, la VPN non funzionerà # senza rimuovere parzialmente o totalmente # il controllo firewall dalle interfacce TUN/TAP. ;dev tap usare tap anche nella modalità routed in quanto nel caso di reti miste LINUX WINXP funziona ugualmente dev tun
# Windows ha bisogno di un nome per il TAP-Win32 # nelle connessioni di rete se ci sono # più di una interfaccia virtuale. # In xp sp2 o superiori occorre disabilitare # il Windows firewall per ogni TAP. # Gli altri sistemi di solito non ne hanno bisogno. ;dev-node nomeTAP
# SSL/TLS certificato root (ca), certificate # (cert), chiave privata (key). Ogni client # ed il server devono avere i loro file con certificati # e chiavi.Il server e tutti i clients useranno # i medesimi ca file. # # La cartella "easy-rsa" contiene # gli sript utili alla generazione dei # certificati RSA e le chiavi private. Ricordare # di usare un unico Common Name per il server # ed in ogni certificato client. # # Può essere usato qualsiasi sistema X509 di generazione chiavi. # OpenVPN può utilizzare anche un PKCS #12 file chiavi preformati # (vedere le direttive specifiche per "pkcs12" ).
ca "c:\\programmi\\openvpn\\config\\keys\\ca.crt" cert "\\programmi\\openvpn\\config\\keys\\server.crt" key "c:\\programmi\\openvpn\\config\\keys\\server.key" # questi file dovrebbero essere mantenuti segreti
# Parametri Diffie hellman. # Generate i vostri con: # openssl dhparam -out dh1024.pem 1024 # Sostituite 1024 con 2048 se usate # chiavi a 2048bit. dh "c:\\programmi\\openvpn\\config\\keys\\dh1024.pem"
# Configura il modo server così che possa creare # una sottorete VPN che fornisca gli IP ai clients. # Il server prenderà l'indirizzo 10.8.0.1, # i restanti indirizzi saranno utilizzabili dai clients. # Ogni client sarà abilitato a contattare il server all'IP # 10.8.0.1. Commentare questa direttiva se si usa # un ethernet bridging. server 10.8.0.0 255.255.255.0 Caso A, B, e C
# Registrare in questo file l'associazione fra client # ed indirizzo IP virtuale. Se OpenVPN viene # riavviato, i clients si vedranno assegnare lo stesso # indirizzo IP virtuale precedentemente # ricevuto. ifconfig-pool-persist ipp.txt
# Configura il modo server per ethernet bridging. # Verificare che il proprio OS possa effettuare il bridging # tra l'interfaccia TAP e la rete reale # Manualmente bisogna settare # IP/netmask nell'interfaccia bridge in questo # caso con 10.8.0.4/255.255.255.0. Infine # bisogna settare un intervallo di IP range in questa sottorete # (nizio=10.8.0.50 fine=10.8.0.100) da assegnare # ai clients che si connettono. Lasciare questa linea commentata # se non avete ethernet bridging. ;server-bridge 10.8.0.4 255.255.255.0 10.8.0.50 10.8.0.100
# Push routes permette # di raggiungere altre reti private dietro # il server. Ricordare che queste # reti private dovranno conoscere # la route della rete dei client OpenVPN # nell'esempio (10.8.0.0/255.255.255.0) # dietro il server OpenVPN. ;push "route 192.168.10.0 255.255.255.0" ;push "route 192.168.20.0 255.255.255.0"
# Per specificare gli indirizzi IP da assegnare # a specifici clients o se un client fosse in una rete # privata dietro quella che dovrebbe avere l'accesso VPN, # usare la sottodirectory "ccd" per il file di # configurazione specifica dei clients.
# ESEMPIO: supponiamo che un client # abbia come certificate common name "Thelonious" # ed inoltre appartenga ad una piccola sottorete dietro la # sua connessione, come 192.168.40.128/255.255.255.248. # Primo deccommentare queste linee: ;client-config-dir ccd ;route 192.168.40.128 255.255.255.248 # Quindi creare un file ccd/Thelonious con questa linea: # iroute 192.168.40.128 255.255.255.248 # Questo permetterà alla sottorete privata "Thelonious" # di accedere alla VPN. Questo esempio vale solo # per la modalità routing non bridging, i.e. occorre # usare "dev tun" e la direttiva "server".
# ESEMPIO: supponiamo si voglia assegnare a # "Thelonious" un indirizzo IP fisso come 10.9.0.1. # primo decommentare queste linee: ;client-config-dir ccd ;route 10.9.0.0 255.255.255.252 # Quindi aggiungere questa linea nel file ccd/Thelonious: # ifconfig-push 10.9.0.1 10.9.0.2
# Supponiamo si voglia abilitare diversi # controlli firewall per gruppi differenti di # clients. Ci sono due metodi: # (1) Avviare diversi OpenVPN daemons,uno per ogni # gruppo, e configurare il firewall per ciascuna # interfaccia TUN/TAP relativa al gruppo. # (2) (Avanzato) Creare uno script che dinamicamente # modifica il firewall in risposta agli accessi # dei differenti clients. ;learn-address ./script
# Se abilitata questa direttiva configurerà # tutti i clients a reindirizzare il loro # gateway di default sulla VPN, facendo # così passare tutto il traffico IP web e DNS # attraverso la rete VPN # (La macchina che fa da server OpenVPN deve poter # "nattare" l'interfaccia TUN/TAP con internet # affinchè questa direttiva lavori correttamente). # CAVEAT: potrebbero bloccarsi i pacchetti dei server DHCP # di configurazione di rete che i clients ricevono se questi # passano attraverso il tunnel. Soluzione: verificare # che il server DHCP dei clients sia raggiungibile # attraverso diverse specifiche route che # e non la sola di deafault 0.0.0.0/0.0.0.0. ;push "redirect-gateway"
# Certi specifici setting di rete di Windows # possono essere imposti ai client, come # gli indirizzi dei server DNS e WINS. ;push "dhcp-option DNS 10.8.0.1" ;push "dhcp-option WINS 10.8.0.1"
# Decommentare questa linea per permettere # ai diversi clients di vedere tutti gli altri. # Di default i clients vedranno solo il server. # Per forzare i clients a vedere solo il server, # occorre configurare il firewall per l'interfaccia # TUN/TAP del server. ;client-to-client
# Decommentare questa direttiva se più clients # devono connettersi con i medesimi file di # certificati/chiavi o common names. E' raccomandato # usare uniche chiavi e certificati solo in fase di test. # Nell'uso produttivo ogni clients dovrà avere # le proprie chiavi e certificati di parità # # SE NON AVETE GENERATO CHIAVI E CERTIFICATI # DI PARITA' PER OGNI CLIENT, # ED E' IN USO UN'UNICO "COMMON NAME", # DECOMMENTATE QUESTA LINEA. ;duplicate-cn
# La direttiva keepalive determina un intervallo # di generazione di ping per verificare # la connessione dell'altra parte che viene considerata # down se nel tempo stabilito non riceve risposta. # Il Ping parte ogni 10 seconds, se non # riceve risposta entro 120 secondi considera # il collegamento remoto down. keepalive 10 120
# Come ulteriore sicurezza ottenuta tramite # SSL/TLS, è creare un "HMAC firewall" # per bloccare gli attacchi DOS e UDP port flooding. # # Si fa generando la chiave con: # openvpn --genkey --secret ta.key # # Il server e ogni client devono avere # una copia di questa chiave. # Il secondo parametro deve essere '0' # nel server ed '1' nei clients. ;tls-auth ta.key 0 # Questo file è segreto
# Seleziona il sistema crittografico. # Questa configurazione dovrà essere # identica nelle configurazioni client. ;cipher BF-CBC # Blowfish (default) ;cipher AES-128-CBC # AES ;cipher DES-EDE3-CBC # Triple-DES
# Abilita la compressione nei collegamenti VPN. # Se viene abilita qui anche nei file # di configurazione dei client va abilitata. comp-lzo
# Massimo numero\di client collegati ammesso ;max-clients 100
# E' buona cosa ridurre i privilegi # dell'OpenVPN dopo l'inizializzazione. # # Decommentare questa linea # solo nei sistemi diversi da Windows. ;user nobody ;group nobody
# Questa direttiva prova ad evitare # a il ripetersi dell'accesso al riavvio # per certe risorse che potrebbero non riuscirvi # per il downgrade dei privilegi. persist-key persist-tun
# Log di stato della connessione # Connessione corrente, # riaggiornata ogni minuto. status openvpn-status.log
# Di default i Log andranno in syslog (per # Windows, se lanciato come servizio, i Log # andranno nella cartella "\Program Files\OpenVPN\log"). # Usare questa direttiva per cambiare dal deafult. # "log" interromperà il log file all'avvio riuscito di OpenVPN, # "log-append" scriverà ogni evento sul file log. Usare uno # dei due, no entrambi. ;log openvpn.log ;log-append openvpn.log
# Settare la verbosità dei log # # 0 silente, eccetto errori fatali # 4 uso generale # 5 e 6 può aiutare per risolvere problemi # 9 massima verbosità verb 3
# Ogni 20 messaggi sequenziali della stessa categoria # viene generato un output sul file Log. ;mute 20
|






























