<fs x-large>Freelan</fs>
Freelan est un logiciel Open Source permettant de mettre en place un réseau VPN en plusieurs mode ( Peer-to-peer, Client-server, Hybride ).
Dans mon architecture, j'ai choisi la méthode Peer-to-peer.
Mes serveurs étant en Debian Wheezy, j'ai du modifier les paquets d'origines pour qu'ils prennent en compte le fait que les librairies libboost-* sont maintenant en version 1.49 au lieu de la version 1.48.
Voici les sources : freelan-wheezy.tgz
Décompressez les sources, et lancez le script install.sh.
Une fois les paquets installés, il faut que vous créiez votre fichier de configuration.
Voici le mien :
# more dm.conf
# This is the FreeLAN configuration file # [fscp] hostname_resolution_protocol=ipv4 listen_on=0.0.0.0:12000 hello_timeout=3000 contact=<server1> contact=<server2> contact=... [tap_adapter] enabled=yes ipv4_address_prefix_length=<ip_tunnel_du_node> ipv6_address_prefix_length=<ipv6_tunnel_du_node> arp_proxy_enabled=no arp_proxy_fake_ethernet_address=<fausse_mac_address_du_node> dhcp_proxy_enabled=yes dhcp_server_ipv4_address_prefix_length=<reseau_dhcp> dhcp_server_ipv6_address_prefix_length=fe80::/10 [switch] routing_method=switch relay_mode_enabled=no [security] signature_certificate_file=/etc/freelan/<certificat>.crt signature_private_key_file=/etc/freelan/<certificat>.key certificate_validation_method=none certificate_revocation_validation_method=none
Les champs <server1> <server2> doivent contenir les noms ( ou IP publiques ) des serveurs composant le réseau freelan. C'est par ce moyen que les nodes se contactent.
Si vous avez des règles firewall, n'oubliez pas d'ouvir le port 12000 en UDP.
Les champs <ip_tunnel_du_node> et <ipv6_tunnel_du_node> doivent contenir l'IP v4 et v6 que le node aura sur l'interface tap0.
Le champ <fausse_mac_address_du_node> doit contenir un Mac Address.
Le champ <reseau_dhcp> doit contenir le réseau tap0 choisi. Si vous ne voulez pas activer le DHCP mettre dhcp_proxy_enabled=no.
Il faut que vous criez un certificat autosigné.
Ensuite, il faut que vous activiez votre configuration. Pour cela, il faut modifier le fichier /etc/default/freelan
# This is the configuration file for /etc/init.d/freelan # Configuration files to load. # # Values should be separated by spaces. # Each entry must match a file at /etc/freelan/<entry>.conf # #CONFIGURATIONS="freelan" CONFIGURATIONS="dm" # Additional options that are passed to the Daemon. # #DAEMON_OPTS=""
Et pour finir lancer le service freelan.
# /etc/init.d/freelan start
Vérifier ensuite que vous ayez bien une interface tap0 de montée sur votre serveur.
# ifconfig
(...)
tap0 Link encap:Ethernet HWaddr 7a:31:9d:97:3c:97
inet addr:192.168.3.205 Bcast:192.168.3.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1391 Metric:1
RX packets:83973561 errors:0 dropped:0 overruns:0 frame:0
TX packets:85056067 errors:0 dropped:546 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:29902617417 (27.8 GiB) TX bytes:24106246167 (22.4 GiB)
(...)
Faire ensuite cela sur tous les serveurs que vous voulez mettre dans votre réseau freelan.
Une fois, les serveurs dans le réseau, vous pouvez les pinguer via l'interface tap0.
Vous avez maintenant, un réseau VPN entre tous vos serveurs.