# CONFIGURATION DE BASE - VOUS NE VOULEZ PROBABLEMENT PAS TOUCHER À ÇA
# GÉNÉRIQUE
; Démon et loguera avec l'identifiant « ovpn-arn »
daemon ovpn-arn	

# OPTIONS CLIENT
client
remote vpn.arn-fai.net
nobind

dev tun ; Type d'interface

# TLS : TODO CHANGER $login par votre login 
# par exemple: Jean Dupont => jdupont (login fourni)
ca /etc/openvpn/keys/ca-server.crt
cert /etc/openvpn/keys/user.crt
key /etc/openvpn/keys/user.key

remote-cert-tls server

# DIVERS
; Logs
verb 3
; On ne garde pas plus de 10 messages consécutifs de la même catégorie afin d'alléger
mute 10	

comp-lzo ; Compression dans le tunnel

; Le client doit se signaler toutes les 10 secondes au serveur. 
; Si rien au bout de 30 secondes, il doit redémarrer sa session. 
; Si rien au bout de 60 secondes, le serveur l'oubli.
keepalive 10 30

# CONFIGURATION PERSONNALISABLE
# GÉNÉRIQUE

; Réduction des privilèges
; Ne fonctionne pas sous Windows !
; user openvpn
; group openvpn

; Ne pas relire les clés lors d'un ping-restart suite d'une réduction de privilèges
; persist-key

; Ne pas fermer la TUN, ne pas relancer les scripts up/down lors d'un ping-restart
; persist-tun 

# OPTIONS CLIENT
; UDP (v4 ou v6) doit être privilégié sur TCP
proto udp
;proto udp6
;proto tcp-client
;proto tcp6-client

; LES DEUX OPTIONS SUIVANTES FONCTIONNENT UNIQUEMENT AVEC UDP
; Pour contrer les encapsulations (ADSL, ...) et l'absence de découverte de la MTU
fragment 1300 
mssfix

; Changer de port peut servir à contourner la politique de sécurité d'un réseau
; port 1194

; Éventuellement, on peut avoir besoin de passer par un proxy http. 
; Dans ce cas, décommenter cette ligne en mettant l'adresse et le port du proxy.
; http-proxy 192.0.2.1 8080

# CONFIG RESEAU
; IPv4
; Décommenter cette ligne pour faire passer tout le trafic IPv4 via le VPN
redirect-gateway def1

; On peut vouloir faire passer uniquement quelques destinations dans la VPN
; IPv4 par le tunnel, par exemple ici tout LDN
; route 80.67.188.0 255.255.255.0

; IPv6
; IPv6 dans le tunnel
tun-ipv6

; Bloc délégué. Aucun moyen de gérer ici (le ifconfig-ipv6 d'interco pushé par le serveur 
; sera le seul pris en compte).
; De plus, OpenVPN autorise seulement bloc <= 64. Seule solution Ajout manuel ou script.

; Décommenter cette ligne pour faire passer tout le trafic IPv6 via le VPN
route-ipv6 ::/0

; ATTENTION : utiliser l'option précédente depuis un réseau disposant nativement d'IPv6 ne fonctionnera pas.
; Décommenter plutôtt la ligne suivante:
; route-ipv6 2000::/3

; ATTENTION : si vous établissez le tunnel au dessus d'IPv6 (proto udp6 ou tcp6-client), les deux lignes précédentes ne 
; fonctionneront pas. Utiliser plutôtt les commandes suivantes (dans un shell, pas en les décommentant !)
; ip -6 route add $IPv6_SERVEUR_OPENVPN via $GATEWAY_NATIVE_v6
; ip -6 route replace default via $IP_INTERCO_VPN_v6

; On peut vouloir plutôtt faire passer uniquement quelques destinations IPv6 par le tunnel, par exemple ici tout LDN
; route-ipv6 2001:913::/36

; DNS
; Si vous redirigez tout votre trafic (IPv4 ou IPv6 ou les deux), vous pouvez rencontrer des problèmes pour résoudre les noms de domaine. 
; Dans ce cas, utilisez le serveur DNS récursif d'ARN en décommentant les deux lignes suivantes :
; script-security 2
; route-up /etc/openvpn/client-handler

; Ne plus utiliser le DNS récursif d'ARN lorsque le VPN est demonté. 
; La deuxièmeme ligne permet de combiner avec la réduction des privilèges.
; route-pre-down /etc/openvpn/client-handler
; down-pre /etc/openvpn/client-handler
; plugin /usr/lib/openvpn/openvpn-plugin-down-root.so "script_type=route-pre-down /etc/openvpn/client-handler"

; Le client prévient le serveur de son départ (EN UDP UNIQUEMENT, automatique en TCP)
explicit-exit-notify