RESOLU - PB avec un nouveau tunnel OpenVPN (site à site)



  • Bonjour à tous,
    un petit PB de tunnel VPN entre 2 sites avec du pfSense de chaque côté :

    Contexte : pro, niveau expertise de l'administrateur : çà va ! pf en prod sur ce firewall depuis 3 mois pour le siège et année sur le site distant
    1 concentrateur OpenVPN en pfSense en 2.2.6 (ne fait que çà, le firewall est une autre machine, le concentrateur est en DMZ et tous les flux sont bien ouvert, car même règle pour tous les sites et les ports)
    23 sites distants OK en pfSense de la version 2.15 à la 2.3.1 (en cours de montée de version)
    1 site distant posant PB en 2.1.5

    Type de tunnel OpenVPN : Peer to Peer Shared Key, 1 port UDP par site distant (1100 <> 1200)

    Besoin : mettre en place un tunnel VPN de type OpenVPN entre un concentrateur OpenVPN au siège, avec un site existant mais sur une nouvelle interface WAN

    Schéma :
    sur le site distant posant PB
    WAN (modem/routeur/box) : 2 WAN PPOE, 1 IP pub / interface, pas de multiwan,
    IP PUBLIQUE :
    WAN1:
    217.15.82.145
    WAN2 : (default gateway)
    37.97.87.106

    _LAN : 1 LAN, pas de vlan

    DMZ : pas de DMZ

    WIFI : pas de wifi_

    Règles Firewall :
    sur pf du siège :
    en entrée sur son WAN allow * sur RANGE UDP > 1100

    sur pf site distant :

    • en sortie sur le site distant,
      en entrée sur WAN 1 et 2 :
      règle allow sur l'IP et la CARP de la pf du siège avec Range de port UDP  incluant celui nécessaire à l'établissement du tunnel

    Packages ajoutés : N/A

    Autres fonctions assignées au pfSense : VPN

    action effectuée :
    sur la pf du site distant, ajout d'une nouvelle interface WAN (avec un boitier fibre), configuration de la nouvelle interface, changement de la gateway par défaut, changement de la conf OpenVPN pour dire de sortir par cette nouvelle interface
    sur le concentrateur OpenVPN du siège, changement de la conf avec ce site avec la nouvelle IP publique
    arrêt/relance du service OpenVPN sur le serveur et sur le client

    PB rencontré : le nouveau tunnel ne monte pas, pire en paramétrant l'ancien il ne monte plus !

    Pistes envisagées tests effectués :
    prend pas en compte la nouvelle conf, recréation d'un nouveau site OpenVPN sur la pf du siège et d'un nouveau client sur le site distant : KO
    packet capture sur les 2 pf, çà sort du site distant, çà arrive sur le siège et c'est tout…
    vérification des paramètres open VPN, regénération d'une nouvelle clé...

    Logs :
    RQ : les pf sont à l'heure mais pas synchro à la seconde près.
    celui du site distant:
    Jun 23 17:24:48 openvpn[94808]: UDPv4 link remote: [AF_INET]62.23.118.29:1199
    Jun 23 17:24:48 openvpn[94808]: UDPv4 link local (bound): [AF_INET]37.97.87.106
    Jun 23 17:24:48 openvpn[93735]: /usr/local/sbin/ovpn-linkup ovpnc2 1500 1560 192.168.202.2 192.168.202.1 init
    Jun 23 17:24:48 openvpn[93735]: /sbin/ifconfig ovpnc2 192.168.202.2 192.168.202.1 mtu 1500 netmask 255.255.255.255 up
    Jun 23 17:24:48 openvpn[93735]: do_ifconfig, tt->ipv6=1, tt->did_ifconfig_ipv6_setup=0
    Jun 23 17:24:48 openvpn[93735]: TUN/TAP device /dev/tun2 opened
    Jun 23 17:24:48 openvpn[93735]: TUN/TAP device ovpnc2 exists previously, keep at program end
    Jun 23 17:24:48 openvpn[93735]: NOTE: the current –script-security setting may allow this configuration to call user-defined scripts
    Jun 23 17:24:48 openvpn[93735]: OpenVPN 2.3.3 amd64-portbld-freebsd8.3 [SSL (OpenSSL)] [LZO] [MH] [IPv6] built on Aug 15 2014

    les log du siège (passé en niveau 4 sinon on voyait rien, attention plusieurs sites donc des entrées peuvent correspondre à un autre site) :
    Jun 23 17:25:10 openvpn[68020]: MANAGEMENT: Client disconnected
    Jun 23 17:25:10 openvpn[68020]: MANAGEMENT: CMD 'quit'
    Jun 23 17:25:10 openvpn[68020]: MANAGEMENT: CMD 'status 2'
    Jun 23 17:24:10 openvpn[76872]: UDPv4 link remote: [undef]
    Jun 23 17:24:10 openvpn[76872]: UDPv4 link local (bound): [AF_INET]62.23.118.20:1199
    Jun 23 17:24:10 openvpn[76872]: Expected Remote Options hash (VER=V4): 'e6028c9c'
    Jun 23 17:24:10 openvpn[76872]: Local Options hash (VER=V4): 'f5f64a35'
    Jun 23 17:24:10 openvpn[76872]: Expected Remote Options String: 'V4,dev-type tun,link-mtu 1561,tun-mtu 1500,proto UDPv4,tun-ipv6,ifconfig 192.168.202.1 192.168.202.2,comp-lzo,cipher AES-128-CBC,auth SHA1,keysize 128,secret'
    Jun 23 17:24:10 openvpn[76872]: Local Options String: 'V4,dev-type tun,link-mtu 1561,tun-mtu 1500,proto UDPv4,tun-ipv6,ifconfig 192.168.202.2 192.168.202.1,comp-lzo,cipher AES-128-CBC,auth SHA1,keysize 128,secret'
    Jun 23 17:24:10 openvpn[76872]: Data Channel MTU parms [ L:1561 D:1450 EF:61 EB:143 ET:0 EL:3 AF:3/1 ]
    Jun 23 17:24:10 openvpn[76872]: /sbin/route add -net 10.2.0.0 192.168.202.2 255.255.0.0
    Jun 23 17:24:10 openvpn[76872]: /usr/local/sbin/ovpn-linkup ovpns4 1500 1561 192.168.202.1 192.168.202.2 init
    Jun 23 17:24:10 openvpn[76872]: /sbin/ifconfig ovpns4 192.168.202.1 192.168.202.2 mtu 1500 netmask 255.255.255.255 up
    Jun 23 17:24:10 openvpn[76872]: do_ifconfig, tt->ipv6=1, tt->did_ifconfig_ipv6_setup=0
    Jun 23 17:24:10 openvpn[76872]: TUN/TAP device /dev/tun4 opened
    Jun 23 17:24:10 openvpn[76872]: TUN/TAP device ovpns4 exists previously, keep at program end
    Jun 23 17:24:10 openvpn[76872]: ROUTE_GATEWAY 62.23.118.30
    Jun 23 17:24:10 openvpn[76872]: Socket Buffers: R=[42080->65536] S=[57344->65536]
    Jun 23 17:24:10 openvpn[76872]: LZO compression initialized
    Jun 23 17:24:10 openvpn[76872]: Static Decrypt: Using 160 bit message hash 'SHA1' for HMAC authentication
    Jun 23 17:24:10 openvpn[76872]: Static Decrypt: Cipher 'AES-128-CBC' initialized with 128 bit key
    Jun 23 17:24:10 openvpn[76872]: Static Encrypt: Using 160 bit message hash 'SHA1' for HMAC authentication
    Jun 23 17:24:10 openvpn[76872]: Static Encrypt: Cipher 'AES-128-CBC' initialized with 128 bit key
    Jun 23 17:24:10 openvpn[76872]: NOTE: the current –script-security setting may allow this configuration to call user-defined scripts
    Jun 23 17:24:10 openvpn[76872]: MANAGEMENT: unix domain socket listening on /var/etc/openvpn/server4.sock
    Jun 23 17:24:10 openvpn[76836]: library versions: OpenSSL 1.0.1l-freebsd 15 Jan 2015, LZO 2.09
    Jun 23 17:24:10 openvpn[76836]: OpenVPN 2.3.8 amd64-portbld-freebsd10.1 [SSL (OpenSSL)] [LZO] [MH] [IPv6] built on Aug 21 2015
    Jun 23 17:24:10 openvpn[76836]: auth_user_pass_file = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: pull = DISABLED
    Jun 23 17:24:10 openvpn[76836]: client = DISABLED
    Jun 23 17:24:10 openvpn[76836]: port_share_port = 0
    Jun 23 17:24:10 openvpn[76836]: port_share_host = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: auth_user_pass_verify_script_via_file = DISABLED
    Jun 23 17:24:10 openvpn[76836]: auth_user_pass_verify_script = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: max_routes_per_client = 256
    Jun 23 17:24:10 openvpn[76836]: max_clients = 1024
    Jun 23 17:24:10 openvpn[76836]: cf_per = 0
    Jun 23 17:24:10 openvpn[76836]: cf_max = 0
    Jun 23 17:24:10 openvpn[76836]: duplicate_cn = DISABLED
    Jun 23 17:24:10 openvpn[76836]: enable_c2c = DISABLED
    Jun 23 17:24:10 openvpn[76836]: push_ifconfig_ipv6_remote = ::
    Jun 23 17:24:10 openvpn[76836]: push_ifconfig_ipv6_local = ::/0
    Jun 23 17:24:10 openvpn[76836]: push_ifconfig_ipv6_defined = DISABLED
    Jun 23 17:24:10 openvpn[76836]: push_ifconfig_remote_netmask = 0.0.0.0
    Jun 23 17:24:10 openvpn[76836]: push_ifconfig_local = 0.0.0.0
    Jun 23 17:24:10 openvpn[76836]: push_ifconfig_defined = DISABLED
    Jun 23 17:24:10 openvpn[76836]: tmp_dir = '/tmp'
    Jun 23 17:24:10 openvpn[76836]: ccd_exclusive = DISABLED
    Jun 23 17:24:10 openvpn[76836]: client_config_dir = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: client_disconnect_script = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: learn_address_script = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: client_connect_script = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: virtual_hash_size = 256
    Jun 23 17:24:10 openvpn[76836]: real_hash_size = 256
    Jun 23 17:24:10 openvpn[76836]: tcp_queue_limit = 64
    Jun 23 17:24:10 openvpn[76836]: n_bcast_buf = 256
    Jun 23 17:24:10 openvpn[76836]: ifconfig_ipv6_pool_netbits = 0
    Jun 23 17:24:10 openvpn[76836]: ifconfig_ipv6_pool_base = ::
    Jun 23 17:24:10 openvpn[76836]: ifconfig_ipv6_pool_defined = DISABLED
    Jun 23 17:24:10 openvpn[76836]: ifconfig_pool_persist_refresh_freq = 600
    Jun 23 17:24:10 openvpn[76836]: ifconfig_pool_persist_filename = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: ifconfig_pool_netmask = 0.0.0.0
    Jun 23 17:24:10 openvpn[76836]: ifconfig_pool_end = 0.0.0.0
    Jun 23 17:24:10 openvpn[76836]: ifconfig_pool_start = 0.0.0.0
    Jun 23 17:24:10 openvpn[76836]: ifconfig_pool_defined = DISABLED
    Jun 23 17:24:10 openvpn[76836]: push_entry = 'route 10.75.0.0 255.255.0.0'
    Jun 23 17:24:10 openvpn[76836]: server_bridge_pool_end = 0.0.0.0
    Jun 23 17:24:10 openvpn[76836]: server_bridge_pool_start = 0.0.0.0
    Jun 23 17:24:10 openvpn[76836]: server_bridge_netmask = 0.0.0.0
    Jun 23 17:24:10 openvpn[76836]: server_bridge_ip = 0.0.0.0
    Jun 23 17:24:10 openvpn[76836]: server_netbits_ipv6 = 0
    Jun 23 17:24:10 openvpn[76836]: server_network_ipv6 = ::
    Jun 23 17:24:10 openvpn[76836]: server_netmask = 0.0.0.0
    Jun 23 17:24:10 openvpn[76836]: server_network = 0.0.0.0
    Jun 23 17:24:10 openvpn[76836]: tls_auth_file = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: tls_exit = DISABLED
    Jun 23 17:24:10 openvpn[76836]: push_peer_info = DISABLED
    Jun 23 17:24:10 openvpn[76836]: single_session = DISABLED
    Jun 23 17:24:10 openvpn[76836]: transition_window = 3600
    Jun 23 17:24:10 openvpn[76836]: handshake_window = 60
    Jun 23 17:24:10 openvpn[76836]: renegotiate_seconds = 3600
    Jun 23 17:24:10 openvpn[76836]: renegotiate_packets = 0
    Jun 23 17:24:10 openvpn[76836]: renegotiate_bytes = 0
    Jun 23 17:24:10 openvpn[76836]: tls_timeout = 2
    Jun 23 17:24:10 openvpn[76836]: ssl_flags = 0
    Jun 23 17:24:10 openvpn[76836]: remote_cert_eku = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: remote_cert_ku _= 0
    Jun 23 17:24:10 openvpn[76836]: remote_cert_ku _= 0
    Jun 23 17:24:10 openvpn[76836]: remote_cert_ku _= 0
    Jun 23 17:24:10 openvpn[76836]: remote_cert_ku _= 0
    Jun 23 17:24:10 openvpn[76836]: remote_cert_ku _= 0
    Jun 23 17:24:10 openvpn[76836]: remote_cert_ku _= 0
    Jun 23 17:24:10 openvpn[76836]: remote_cert_ku _= 0
    Jun 23 17:24:10 openvpn[76836]: remote_cert_ku _= 0
    Jun 23 17:24:10 openvpn[76836]: remote_cert_ku _= 0
    Jun 23 17:24:10 openvpn[76836]: remote_cert_ku _= 0
    Jun 23 17:24:10 openvpn[76836]: remote_cert_ku _= 0
    Jun 23 17:24:10 openvpn[76836]: remote_cert_ku _= 0
    Jun 23 17:24:10 openvpn[76836]: remote_cert_ku _= 0
    Jun 23 17:24:10 openvpn[76836]: remote_cert_ku _= 0
    Jun 23 17:24:10 openvpn[76836]: remote_cert_ku _= 0
    Jun 23 17:24:10 openvpn[76836]: remote_cert_ku _= 0
    Jun 23 17:24:10 openvpn[76836]: ns_cert_type = 0
    Jun 23 17:24:10 openvpn[76836]: crl_file = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: verify_x509_name = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: verify_x509_type = 0
    Jun 23 17:24:10 openvpn[76836]: tls_export_cert = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: tls_verify = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: cipher_list = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: pkcs12_file = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: priv_key_file = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: cert_file = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: dh_file = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: ca_path = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: ca_file = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: key_method = 2
    Jun 23 17:24:10 openvpn[76836]: tls_client = DISABLED
    Jun 23 17:24:10 openvpn[76836]: tls_server = DISABLED
    Jun 23 17:24:10 openvpn[76836]: test_crypto = DISABLED
    Jun 23 17:24:10 openvpn[76836]: use_iv = ENABLED
    Jun 23 17:24:10 openvpn[76836]: packet_id_file = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: replay_time = 15
    Jun 23 17:24:10 openvpn[76836]: replay_window = 64
    Jun 23 17:24:10 openvpn[76836]: mute_replay_warnings = DISABLED
    Jun 23 17:24:10 openvpn[76836]: replay = ENABLED
    Jun 23 17:24:10 openvpn[76836]: engine = DISABLED
    Jun 23 17:24:10 openvpn[76836]: keysize = 0
    Jun 23 17:24:10 openvpn[76836]: prng_nonce_secret_len = 16
    Jun 23 17:24:10 openvpn[76836]: prng_hash = 'SHA1'
    Jun 23 17:24:10 openvpn[76836]: authname = 'SHA1'
    Jun 23 17:24:10 openvpn[76836]: authname_defined = ENABLED
    Jun 23 17:24:10 openvpn[76836]: ciphername = 'AES-128-CBC'
    Jun 23 17:24:10 openvpn[76836]: ciphername_defined = ENABLED
    Jun 23 17:24:10 openvpn[76836]: key_direction = 0
    Jun 23 17:24:10 openvpn[76836]: shared_secret_file = '/var/etc/openvpn/server4.secret'
    Jun 23 17:24:10 openvpn[76836]: management_flags = 256
    Jun 23 17:24:10 openvpn[76836]: management_client_group = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: management_client_user = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: management_write_peer_info_file = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: management_echo_buffer_size = 100
    Jun 23 17:24:10 openvpn[76836]: management_log_history_cache = 250
    Jun 23 17:24:10 openvpn[76836]: management_user_pass = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: management_port = 0
    Jun 23 17:24:10 openvpn[76836]: management_addr = '/var/etc/openvpn/server4.sock'
    Jun 23 17:24:10 openvpn[76836]: route 10.2.0.0/255.255.0.0/nil/nil
    Jun 23 17:24:10 openvpn[76836]: allow_pull_fqdn = DISABLED
    Jun 23 17:24:10 openvpn[76836]: max_routes = 100
    Jun 23 17:24:10 openvpn[76836]: route_gateway_via_dhcp = DISABLED
    Jun 23 17:24:10 openvpn[76836]: route_nopull = DISABLED
    Jun 23 17:24:10 openvpn[76836]: route_delay_defined = DISABLED
    Jun 23 17:24:10 openvpn[76836]: route_delay_window = 30
    Jun 23 17:24:10 openvpn[76836]: route_delay = 0
    Jun 23 17:24:10 openvpn[76836]: route_noexec = DISABLED
    Jun 23 17:24:10 openvpn[76836]: route_default_metric = 0
    Jun 23 17:24:10 openvpn[76836]: route_default_gateway = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: route_script = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: lzo = 1
    Jun 23 17:24:10 openvpn[76836]: fast_io = DISABLED
    Jun 23 17:24:10 openvpn[76836]: sockflags = 0
    Jun 23 17:24:10 openvpn[76836]: sndbuf = 65536
    Jun 23 17:24:10 openvpn[76836]: rcvbuf = 65536
    Jun 23 17:24:10 openvpn[76836]: occ = ENABLED
    Jun 23 17:24:10 openvpn[76836]: status_file_update_freq = 60
    Jun 23 17:24:10 openvpn[76836]: status_file_version = 1
    Jun 23 17:24:10 openvpn[76836]: status_file = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: gremlin = 0
    Jun 23 17:24:10 openvpn[76836]: mute = 0
    Jun 23 17:24:10 openvpn[76836]: verbosity = 4
    Jun 23 17:24:10 openvpn[76836]: nice = 0
    Jun 23 17:24:10 openvpn[76836]: suppress_timestamps = DISABLED
    Jun 23 17:24:10 openvpn[76836]: log = DISABLED
    Jun 23 17:24:10 openvpn[76836]: inetd = 0
    Jun 23 17:24:10 openvpn[76836]: daemon = ENABLED
    Jun 23 17:24:10 openvpn[76836]: up_delay = DISABLED
    Jun 23 17:24:10 openvpn[76836]: up_restart = DISABLED
    Jun 23 17:24:10 openvpn[76836]: down_pre = DISABLED
    Jun 23 17:24:10 openvpn[76836]: down_script = '/usr/local/sbin/ovpn-linkdown'
    Jun 23 17:24:10 openvpn[76836]: up_script = '/usr/local/sbin/ovpn-linkup'
    Jun 23 17:24:10 openvpn[76836]: writepid = '/var/run/openvpn_server4.pid'
    Jun 23 17:24:10 openvpn[76836]: cd_dir = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: chroot_dir = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: groupname = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: username = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: resolve_retry_seconds = 1000000000
    Jun 23 17:24:10 openvpn[76836]: passtos = DISABLED
    Jun 23 17:24:10 openvpn[76836]: persist_key = ENABLED
    Jun 23 17:24:10 openvpn[76836]: persist_remote_ip = DISABLED
    Jun 23 17:24:10 openvpn[76836]: persist_local_ip = DISABLED
    Jun 23 17:24:10 openvpn[76836]: persist_tun = ENABLED
    Jun 23 17:24:10 openvpn[76836]: remap_sigusr1 = 0
    Jun 23 17:24:10 openvpn[76836]: ping_timer_remote = ENABLED
    Jun 23 17:24:10 openvpn[76836]: ping_rec_timeout_action = 2
    Jun 23 17:24:10 openvpn[76836]: ping_rec_timeout = 60
    Jun 23 17:24:10 openvpn[76836]: ping_send_timeout = 10
    Jun 23 17:24:10 openvpn[76836]: inactivity_timeout = 0
    Jun 23 17:24:10 openvpn[76836]: keepalive_timeout = 60
    Jun 23 17:24:10 openvpn[76836]: keepalive_ping = 10
    Jun 23 17:24:10 openvpn[76836]: mlock = DISABLED
    Jun 23 17:24:10 openvpn[76836]: mtu_test = 0
    Jun 23 17:24:10 openvpn[76836]: shaper = 0
    Jun 23 17:24:10 openvpn[76836]: ifconfig_ipv6_remote = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: ifconfig_ipv6_netbits = 0
    Jun 23 17:24:10 openvpn[76836]: ifconfig_ipv6_local = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: ifconfig_nowarn = DISABLED
    Jun 23 17:24:10 openvpn[76836]: ifconfig_noexec = DISABLED
    Jun 23 17:24:10 openvpn[76836]: ifconfig_remote_netmask = '192.168.202.2'
    Jun 23 17:24:10 openvpn[76836]: ifconfig_local = '192.168.202.1'
    Jun 23 17:24:10 openvpn[76836]: tun_ipv6 = ENABLED
    Jun 23 17:24:10 openvpn[76836]: topology = 1
    Jun 23 17:24:10 openvpn[76836]: lladdr = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: dev_node = '/dev/tun4'
    Jun 23 17:24:10 openvpn[76836]: dev_type = 'tun'
    Jun 23 17:24:10 openvpn[76836]: dev = 'ovpns4'
    Jun 23 17:24:10 openvpn[76836]: ipchange = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: remote_random = DISABLED
    Jun 23 17:24:10 openvpn[76836]: Connection profiles END
    Jun 23 17:24:10 openvpn[76836]: explicit_exit_notification = 0
    Jun 23 17:24:10 openvpn[76836]: mssfix = 1450
    Jun 23 17:24:10 openvpn[76836]: fragment = 0
    Jun 23 17:24:10 openvpn[76836]: mtu_discover_type = -1
    Jun 23 17:24:10 openvpn[76836]: tun_mtu_extra_defined = DISABLED
    Jun 23 17:24:10 openvpn[76836]: tun_mtu_extra = 0
    Jun 23 17:24:10 openvpn[76836]: link_mtu_defined = DISABLED
    Jun 23 17:24:10 openvpn[76836]: link_mtu = 1500
    Jun 23 17:24:10 openvpn[76836]: tun_mtu_defined = ENABLED
    Jun 23 17:24:10 openvpn[76836]: tun_mtu = 1500
    Jun 23 17:24:10 openvpn[76836]: socks_proxy_retry = DISABLED
    Jun 23 17:24:10 openvpn[76836]: socks_proxy_port = 0
    Jun 23 17:24:10 openvpn[76836]: socks_proxy_server = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: connect_retry_max = 0
    Jun 23 17:24:10 openvpn[76836]: connect_timeout = 10
    Jun 23 17:24:10 openvpn[76836]: connect_retry_seconds = 5
    Jun 23 17:24:10 openvpn[76836]: bind_local = ENABLED
    Jun 23 17:24:10 openvpn[76836]: bind_defined = DISABLED
    Jun 23 17:24:10 openvpn[76836]: remote_float = DISABLED
    Jun 23 17:24:10 openvpn[76836]: remote_port = 1194
    Jun 23 17:24:10 openvpn[76836]: remote = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: local_port = 1199
    Jun 23 17:24:10 openvpn[76836]: local = '62.23.118.20'
    Jun 23 17:24:10 openvpn[76836]: proto = udp
    Jun 23 17:24:10 openvpn[76836]: Connection profiles [default]:
    Jun 23 17:24:10 openvpn[76836]: show_tls_ciphers = DISABLED
    Jun 23 17:24:10 openvpn[76836]: key_pass_file = '[UNDEF]'
    Jun 23 17:24:10 openvpn[76836]: genkey = DISABLED
    Jun 23 17:24:10 openvpn[76836]: show_engines = DISABLED
    Jun 23 17:24:10 openvpn[76836]: show_digests = DISABLED
    Jun 23 17:24:10 openvpn[76836]: show_ciphers = DISABLED
    Jun 23 17:24:10 openvpn[76836]: mode = 0
    Jun 23 17:24:10 openvpn[76836]: config = '/var/etc/openvpn/server4.conf'
    Jun 23 17:24:10 openvpn[76836]: Current Parameter Settings:

    Des idées où chercher ? d'autres info à vous donner ?
    Merci d'avance pour toute l'aide apportée________________



  • Bravo pour l'utilisation du formulaire : il y a de l'info, la trace de votre démarche, des log, … Continuez !

    Il y a des choses pas claires :

    • Concentrateur ?
      '1 concentrateur OpenVPN en pfSense en 2.2.6 (ne fait que çà, le firewall est une autre machine'
      Devons comprendre qu'il y a, sur le site central, :
      Internet <-> Firewall (DMZ) <-> pfSense <->
      Le firewall n'est pas un pfSense lui-même ?
    • nouvelle interface WAN ?
      Si le schéma est : le concentrateur Vpn est un pfSense en DMZ du firewall; alors le nouveau WAN est une interface du firewall ?

    Concernant le dernier point :
    Si un firewall dispose de 2 interfaces WAN, Il n'y a normalement rien à faire de spécial si le flux est entrant sur une ip de WAN2.



  • Merci de votre aide.
    Je vois que je n'ai pas été assez clair, pas si facile en fait….

    donc:
    concentrateur VPN : pour dire que ce cluster pfSense ne fait que concentrer tous les tunnels Open VPN, il y a un autre firewall qui n'est pas sous pfSense (Juniper) projet de remplacement d'ici la fin de l'année.
    au siège :  Internet <-> Firewall Juniper <-> en DMZ cluster pfSense OpenVPN <->

    La nouvelle interface WAN c'est sur le firewall du site distant (pas au siège)
    1 WAN existant avec une SDSL toute pourri
    1 nouveau WAN avec une liaison Fibre derrière

    Le but étant de faire sortir la connexion VPN depuis le site distant par ce nouveau WAN (çà c'est bon)
    au siège le noeud maitre du cluster pf reçoit bien sur çà VIP (CARP) les paquets UDP en provenance de la bonne IP publique du site distant, mais rien n'a l'aire de ressortir.

    Comme je connais pas bien les tunnels OpenVPN, je connais mieux l'IPSEC, je ne sais pas ce que la pf du siège est censé répondre aux prmiers paquets reçus.
    Vous voulez des packets capture ?



  • J'avoue ne pas comprendre l'intérêt d'utiliser pfSense uniquement comme serveur VPN.
    Pourquoi dans ce cas ne pas juste installer un serveur OpenVPN sur une machine dédiée dans avoir à se trimballer toute la couche pfSense ?



  • merci pour l'intérêt porté à mon pb.
    d'abord ce n'est pas directement mon choix.
    et puis cela se justifie par le fait que l'admin principal n'a pas de compétence Linux, il veut une interface graphique qu'il connait (comme il y en a déjà sur tous ses sites distants)
    il voulait un cluster et connait le mécanisme CARP sur pfSense.
    voulait un système de mise à jour, intégrant l'OS et les packages.
    çà le rassurait dans l'interopérabilité (implémentation identique de part et d'autres)
    de plus l'interface identique permet de comparer le paramétrage.
    de plus le remplacement de FW par du pfSense est bien prévu.

    sinon vous avez une idée à mon PB ?
    A notez qu'entre temps j'ai mis à jour la version de pfSense d'autres sites distants sans PB.
    J'ai voulu faire de même pour le site posant pb, çà n'a rien changé…



  • @nc21:

    sinon vous avez une idée à mon PB ?
    A notez qu'entre temps j'ai mis à jour la version de pfSense d'autres sites distants sans PB.
    J'ai voulu faire de même pour le site posant pb, çà n'a rien changé…

    Si tu as du pfSense de partout et que c'est l'interface connue de l'admin, pourquoi pas  ;)

    J'essaie de reformuler le problème de manière simple car à la lecture de ton post initial, je ne comprends pas tout :

    • 24 sites distants doivent se connecter en VPN (OpenVPN) à un site central.
    • ça fonctionne pour 23 sites mais pas pour le 24ème

    Ce que je ne comprends pas bien, c'est si ce 24ème site est le seul à avoir 2 interfaces WAN.
    Si c'est le cas et que, comme je comprends, cette nouvelle interface FTTH est supposée remplacer l'interface SDSL, pourquoi ne pas se simplifier la vie en passant tout sur l'interface FTTH, qui a garder le SDSL uniquement en fail-over ?
    Mais c'est de toute façon une question annexe puisque coté configuration OpenVPN, tu décris l'interface que tu veux utiliser… sauf qu'il y a une pratique courante qui consiste à avoir le serveur OpenVPN qui écoute sur le port localhost et de faire du forward des différentes interfaces WAN quand il y en a plusieurs.

    Bref, ce serait intéressant de décrire cet aspect des choses.

    Coté central, as-tu fait des essais en mode "simple" c'est à dire sans CARP, pfSync etc... pour t'assurer que le problème ne vient pas de la configuration du cluster ou des VIP ?



  • Merci pour tes conseils.
    J'ai trouvé hier soir, tard…
    le pb ne venait pas du site distant mais bien de la config du cluster du siège.
    l'OpenVPN du noeud maître écoutait sur l'IP de son interface au lieu d'écouter sur la VIP !
    t'étais sur la bonne piste.
    Merci.
    Super boulot ce que vous faites.

    PS: plusieurs sites avec 2 WAN et elles sont bien en Failover.



  • L'essentiel étant que maintenant ça fonctionne  ;)

    Finalement le problème était assez simple et tenait en quelques lignes 8)

    Question subsidiaire, par curiosité : pourquoi le choix OpenVPN pour faire du site-to-site plutôt que de l'IPSec qui, pour le moment, bénéficie de AES-NI au contraire de OpenVPN ?



  • Oui c'est vrai (j'ai voulu être exhaustif comme avec le formulaire) déjà que c'est du support en Best Effort, j'ai voulu donné toutes les infos (mais trop d'infos tue l'info)
    En fait moi aussi j'aurais fait de l'IPSEC, mais l'Admin avait commencé à mettre çà en place tout seul, il s'est formé seul sur pf avec des tutos et il en a trouvé 1 sur OpenVPN…
    le seul truc pas mal avec l'OpenVPN c'est qu'il y a un process par site et on peut en redémarrer juste 1, avec IPSEC si le process déconne (racoon /charon (en 2.2.x) / je ne sais pas son nom en 2.3), faut couper tous les tunnels  :'(
    pour le support des instructions AES-NI il faut que ce soit forcément un proc Intel ?
    sur les sites distants, ils ont des boitiers Alix avec des proc AMD, mais sans carte d'accélération matériel.
    et au siège c'est un proc Intel® Atom™ Processor C2358 (1M Cache, 1.70 GHz)



  • Malgré le formulaire, il manquait des détails, que je reprends ici :

    Siège :
    Internet <-> Firewall (DMZ) <-> cluster pfSense <-> réseau interne

    Le cluster de pfSense concentre les tunnels OpenVpn des sites distants

    Sites distants :
    Internet <-> pfSense <-> réseau local

    Problématique :
    1 site distant ne se connecte pas alors que les autres sont OK

    Pour cette description, on voit un cluster de pfSense (sur le site central).
    Il faut être très attentif, du fait de CARP, il est important que chaque pfSense écoute bien sur la VIP (Virtual IP) et non sa propre WAN address !
    Néanmoins cela aurait entrainé un non fonctionnement général …

    Concernant les liens sites à sites, bien qu'on puisse utiliser OpenVpn pour cela, il est bien plus fréquent d'utiliser Ipsec.
    Il y a les contraintes habituelles lié à NAT (NAT traversal), bien connu avec Ipsec.
    Mais on peut aussi 'interopérer' : les sites distants n'ont pas obligation d'être de même type (Fortinet, WatchGuard, Stormshield, ...)

    Concernant le support des instructions AES-NI, il faut regarder la (bonne) doc : https://doc.pfsense.org/index.php/Are_cryptographic_accelerators_supported qui donne le support pour OpenVpn et Ipsec.
    Et c'est assez normal de s'y intéresser sur un 'concentrateur' ...



  • @nc21:

    Oui c'est vrai (j'ai voulu être exhaustif comme avec le formulaire) déjà que c'est du support en Best Effort, j'ai voulu donné toutes les infos (mais trop d'infos tue l'info)

    C'est un peu aussi mon avis  ;)
    Mais c'est sûr qu'il est difficile de trouver le juste milieu entre en dire le strict minimum et tout (ou presque) détailler. Surtout que ce n'est souvent que lorsque tu as trouvé la solution que tu te rends compte qu'il y avait soit trop de détails inutiles soit que malgré avoir pensé tout expliquer, ça passait à coté du point finalement en cause  ;)
    Bref, ce n'est pas important.  ::)

    pour le support des instructions AES-NI il faut que ce soit forcément un proc Intel ?
    sur les sites distants, ils ont des boitiers Alix avec des proc AMD, mais sans carte d'accélération matériel.
    et au siège c'est un proc Intel® Atom™ Processor C2358 (1M Cache, 1.70 GHz)

    Non, il y a des AMD avec du support AES-NI. Par exemple, chez PCengines, ça.
    De plus, je n'ai pas suivi ça de très près pour le moment faute de temps mais il semble que le support de AES-NI au niveau de OpenVPN évolue.

    Il ne faut pas non plus faire une fixation sur cette fonctionnalité : par exemple mettre AES-NI sur le chemin critique de ton design si c'est pour derrière connecter les sites en ADSL, ça ne présente pas beaucoup d'intérêt à cause du coté asymétrique des débits qui ne te permettra pas de tirer parti de l'accélération apportée par AES-NI.
    En VDSL (proche du DSLAM), SDSL ou FTTH, c'est autre chose  8)



  • trop d'infos tue l'info

    C'est un problème de logique :
    pas d'infos = pas de compréhension = pas d'aide possible !
    pas assez d'infos = compréhension incomplète = nécessité de demander à compléter.

    Il vaut, donc, bien mieux trop d'infos que pas d'infos !
    Le seul défaut d'avoir trop d'infos est que le lecteur soit obligé de faire le tri.
    C'est vraiment gênant quand il y a des logs de 100 lignes (dont seules 3 lignes ont de l'intérêt).

    Mais, on le voit très régulièrement, trop nombreux sont les débutants qui, soit ne fournissent pas d'infos, soit n'en fournissent pas assez.
    Je passe sur ceux qui ne fournissent pas d'infos : on se demande s'ils veuillent être aider parce que c'est assez stupide de croire que la seule question pourrait avoir une réponse !
    Ceux qui n'en fournissent pas assez font 'leur' tri : ils mettent ce qui, à leur yeux, a de l'intérêt, mais comme ils sont débutants, ils passent à côté d'informations qui sont utiles !

    Donc il vaut bien de lire trop d'infos.