Vous êtes sur la page 1sur 17

1 PfSense

Quest-ce que cest

une distribution base sur FreeBSD ;


un fournisseur de services :
 serveur de temps : NTPD ;
 relais DNS ;
 serveur DHCP ;
 portail captif de connexion ;
un routeur entre un WAN et un LAN, diffrents segments, VLANs avec 802.1Q trunking , DMZs :
 il implmente les protocoles RIP, OLSR, BGP
 il permet de mettre en place des VPNs : OpenVPN,
IPSEC, PPTP

un Firewall capable de :
 faire de la traduction dadresses : NAT, SNAT,
DNAT ;
 faire du filtrage de paquets : packet filter :
? entre WAN et LAN ;
? entre deux rseaux relis par VPN ;
 faire de la QoS : traffic shaper ;
 faire du load balancing avec plusieurs connexions
Internet.

Les VPNs, Virtual Private Network

Lutilisation dun VPN permet, 4 usages :


la connexion entre un Site et un autre Site :
 entre deux composantes dune mme entreprise spares gographiquement ;
 utilisant Internet pour faire circuler les donnes ;
 en assurant les proprits de scurits de confidentialit et dauthentification ;
Sans VPN, on utilise des rseaux WAN privs pour interconnecter ces diffrentes composantes :
 circuits point--point ddis comme ATM (rseau oprateur tlphonique), ou MPLS (rseau de type informatique),
ou une combinaison SDSL, Symmetrical Digital Subscriber Line + MPLS ; http://www.mympls.fr/haut-

debit/mympls/orangebusiness/sdsl?displaytop=mympls
 assurant une bonne latence, une meilleure disponibilit, mais coteux
un accs distant, remote access :
 permettre la connexion dun utilisateur depuis nimporte o sur Internet ;
 indispensable pour les roadwarriors , c--d. les employs dune socit qui doivent voyager souvent pour leur
travail ;
 permet la connexion de tl-travailleurs , de sous-traitants qui doivent disposer dun accs temporaire au rseau
de lentreprise.

une protection pour les rseaux sans-fil, wireless ;


un relais scuris : lorsque lon ne fait pas confiance au rseau local o lon est connect et que lon se sert du VPN
pour aller directement sur Internet (protection contre lARP Spoofing).

Pourquoi un VPN et Quel VPN

Un VPN doit possder les qualits suivantes :


linteroprabilit : il doit tre possible de mettre en place le VPN entre des matriels de diffrents constructeurs.
 IPsec est privilgier car disponible sur tous les matriels proposant du VPN ;
 OpenVPN est moins rpandu, surtout disponible dans les solutions OpenSource ;
 PPTP ne permet pas les connexions de site--site ;
les mthodes dauthentification :
 seul PPTP permet lauthentification par login/mdp ;
 IPsec et OpenVPN utilisent des cls partages, shared keys ou des certificats.
la facilit de configuration :
 PPTP est trs simple ;
 IPsec possde des options qui pour les non-initis peuvent tre complexes ;
 OpenVPN utilise des certificats quil faut savoir grer.
la disponibilit dun logiciel client pour les remote access :
 PPTP est intgr dans la plupart des systmes dexploitation ;
 pour IPsec, des client existent pour Windows, Linux, BSD mais ne sont pas toujours intgrs. Pour Mac
OS X, un client sans interface graphique est intgr ;
 pour OpenVPN, des clients existent pour toutes les plateformes me sont pas intgrs.
la possibilit de grer du Multi-WAN , c--d. utiliser plusieurs connexions simultanes Internet :
 PPTP utilise des tunnels GRE, Generic Routing Encapsulation, et ne sait pas grer le Multi-WAN ;
 OpenVPN et IPsec savent le grer.

)*!*!?!.& .

4  


  3
     


     

%       
 

 
   7     
 &  
Pourquoi un *
&*3 
%


  
  *
   7   
VPN et Quel VPN
4

 %
    
  &  
    
le passage travers un Firewall :
   &  7   &  
   &

 & &  7%

 PPTP utilise
une connexion de contrle TCP sur le port 1723 et le protocole GRE non scuris qui est souvent bloqu par
  /    
     
 %

&
 7  & 
les firewalls
;

  
      &    &  7&



 IPsec utilise
le protocole UDP sur le port 500 et des paquets IP bass sur le protocole ESP, Encapsulating Security Payloads.

*0 ( 
7.   
%  
    
Lutilisation   (
 
dESP entraine le chiffrement du contenu du paquet IP et donc, limpossibilit daccder au numro de port
source et destination, ce qui le rend difficile grer par un firewall pour effectuer du NAT.
. 
   *  *
&**
 ;  *7  
#
Il est possible
dutiliser du NAT-T, NAT Traversal, qui encapsule les paquets ESP dans UDP sur le port 4500.
   
   


B   &    7    
 OpenVPN peut utiliser UDP et TCP, ce qui le rend le plus apte tre utilis au travers dun firewall.
Pour passer
au travers dun firewall, on peut utiliser les ports UDP 53 (DNS), TCP 80 (HTTP), TCP 443 (HTTPS).
43G  

  

  F.   *  
 
scuris cryptographiquement :
 PPTP utilisant des login/mdp il est moins scuris que les autres solutions : le mdp peut tre crack par une mthode
bruteforce ;
 lutilisation%
de pre-shared
keys dans
peut le rendre
si cette
cl 
nest ( (
&
pas suffisamment
! 7 Y)   
 IPsec
  

 
 vulnrable
3 %Z
 & 
  robuste pour
rsister une
attaque bruteforce.
 
 
  (

 
 

 OpenVPN utilisant des certificats ou simplement des bicls (cl publique/cl prive) partage, il faut sassurer de la scurit
de la cl prive ou partage.

)*!*!B!

6%0 .

 
3.
    
$


3'0 .
& .



1%








  D&
 
3'%%E

 6%0







%% %



1

)*!)!
  

.6%0 .


 .

Les performances du Firewall et du VPN

La performance du routeur/firewall

la vitesse du routeur dpend de la qualit de la carte rseau et de la puissance du processeur :


 si le processeur est suffisamment puissant le choix de la carte est moins important ;
 pour traiter un dbit autour de 200 Mbps, un processeur
@ &  1Ghz est suffisant ;
 pour traiter un dbit autour de 400-500 Mbps, un processeur entre 2 et 3GHz est ncessaire.
%@
'5.CN6##
@=< 
.' <@=
3  @*
D <@= E

  C
+
C %4):::
C
& = 
> & = 
> & = 
>
>6

1

1

$"   D ##  1


&
 E

1

!6#

1

1

6 

8,


.."6#@= 1

@ & 


...
1
>,
! :
:##@=
A


-'9   *  B
 
F -'%!"7Y5   

%-'  
Z (
 

       A
  

, :<@= 1
$"   D ##  "86
     F

 

         *
7  
&
 E
     &
 A
  "!,>

-'    


*!)!
la quantit de mmoire 
     
 
pour
suivre lesC$$ & .%@
connexions, connexion tracking :


' F
*!-!)!)!%$  . +.
##7###

]$:

M  
 3.&
(


 
     &  
*

6##7###
],>>
- * &
  


  ;  A
    . M  

 *&

&   &
  ;M  


    
7###7###
]$:8
  
(;
  A
3.7   &
%! 7YB
% 

"7###7###
]!$##
;Z&
   & ; . (; 


    
  A
7  
 3. &
(
  
     7   
A
3.  ( 

 
  
*!,!(& '

$

*!-!)!*!/ &&& & 


*!-!*!*!6%0=.
>
0
=
 

  7 
   
 &    

% N
A
  
   *    3
 I &## . & *    
  
     & 
< &
  /   
2I% 
    
   7    
 
%
 
   

 < &
  
*7     G
*.14

 

< . %

C$$ & 

'9
$,
Les performances du Firewall
et du VPN
'9!68

C$$ &  =


7 >
",!

"6

",!

Lutilisation dun VPN entrane lutilisation de chiffrement qui peut tre coteux car il sapplique sur toutes les donnes
*!-!1%
 & . H'(1I
changes :
 IPsec utilise les algorithmes
de chiffrement suivant : DES, 3DES, Blowfish, CAST128, AES et AES 256 ;
%!67Y. %  ;Z  &  B
.    ;  
 &

 7 
  B
   
 (
 ; 
 il est possible dutiliser
des crypto-processeurs pour raliser le travail de chiffrement.
%@

.."6#
'5.CD6##@=E

"
 & = 
>
!,
86


...:##

"!$


, :<@=

6"$

Le choix dutiliser un VPN


ou de louer une connexion WAN prive (du type ATM ou MPLS) :
*!8!1%
 & .%@
 diffrence de latence@ &        & 
&
   . 
 A
7
:
? une connexion point--point
de type Ethernet assure une latence de 3 5ms ;
B &
 A ; 7   ;         
(

 

  . 
? une connexion, First Hop , vers Internet fournie par un FAI est plus importante > 20ms ;
? une connexion
par VPN augmente considrablement la latence : 30 60ms.
*!-!*!,!%+&

Il est possible de diminuer la latence en utilisant pour toutes les connexions entre site le mme FAI.
 * (


 
    &  A
 
  (
 

 importance*!-!*!,!)! 
de la latence sur les services utiliss :
? le partage de fichier
Microsoft, SMB : pour une latence < 10ms tout marche bien. partir dune latence de
 7   & *
 
  
   (

    *  7 
30ms ses performances
et 
50ms
devient 
insupportablement
lent
;   
A
 seffondrent,



    
-'7il

    
 
 !68
 
 

7  
 
 
<  
? lutilisation de Microsoft
Remote Desktop, RDP : une latence < 20ms
donne de bonnes performances.
La latence
de 50 et > 60ms donne par lutilsiation dun VPN rende le travail dun utilisateur distant difficile.
*!-!*!,!*!F
A


 B@%%  ( (
  *7
*.14  


   
 
 A
  

  
   .   7
      

 
( 
  


 
   
* 
   
 
 
O
   (  & *     
   


%         .   


     
7   &
   I*I
  
 
  

    & *    G 5'3.3 

B    3
 
 5'3
    
 .  . 
 

  
  4%
  7  .    .     
  
 
   &. 


  ) +* 7&
    
  
 
&
  &   G  
 7&
&

*  
 
    0'3
Site
       (  .  %*)
 
Site
" #7Y
 
. Z7 B

La configuration dIPsec
Connexion de

&),!):!1%

M   
   
&)
  " 7Y
'N 
     
 Z)
  " !7Y
N 
       Z  &    



&),!))!'H$
 

!,"

La configuration dIPsec

La configuration dIPsec

La configuration dIPsec

10

La configuration dIPsec
Visualisation des SAD, Security Association
Chaque SA correspond un sens de communication (configuration unidirectionnel des paramtres de scurit).
Pour une connexion, il y a donc deux SA associes, qui sont conserves dans le SPD, Security Policy Database.

11

Un autre VPN : OpenVPN

12

Les diffrences avec IPsec

? la possibilit de faire des tunnels de niveau 2 :


 PPTP, Point to Point Tunneling Protocol, RFC 2637 : capable mais limit un seul tunnel la fois entre deux interlocuteurs, dvelopp par Microsoft. Il peut nanmoins encapsul dautres protocoles quIP, comme IPX ;
 L2F, Layer 2 Forwarding, RFC 2341 : dvelopp en mme temps que PPTP par dautres socits dont CISCO et
permet de grer, entre autre, plusieurs tunnels ;
 L2TP, Layer 2 Tunneling Protocol, RFC 2661 : standard qui combine les avantages de PPTP et de L2F, en ajoutant
des possibilits amliores de scurit comme ceux dIPsec ;
 L2Sec, Layer 2 Security Protocol, RFC 2716 : dvelopp pour corriger des problmes de scurit dIPsec, mais plus
coteux en traitement, mieux scuriss et bas sur SSL/TLS.
? le fonctionnement du VPN de niveau 3 :
 le mode tunnel : lencapsulation dun paquet dans un autre, ce qui protge les @IP source et @IP destination des
paquets encapsuls (on en voit que les @IP des deux routeurs entre lesquels est mis en place le VPN).
 le mode transport : seul le chargement du datagramme, c--d. les donnes, sont protges ce qui allge la gestion
mais rend les mta-informations de lentte analysable.
Comment sy retrouver ?
Le choix doit tenir compte de :
 le choix des dispositifs dauthentification ;
 le support des techniques comme NAT (pour le traverser par exemple) ;
 la possibilit de fournir des adresses dynamiques dans le cas dune connexion de type road warrior ;
 le support dune PKI.

Les avantages dOpenVPN

13

Ils sont nombreux

? la possibilit de faire des VPNs de niveau 2 & 3 : dans le cas du niveau 2, le VPN peut transporter des trames,
?
?
?
?
?
?
?
?
?
?
?
?

et les protocoles Microsofts (qui sont des protocoles locaux, c--d. non routables).
la possibilit de bnficier du firewall du serveur sur lequel on se connecte : un road warrior peut bnficier
des mmes protections que les matriels connects directement dans le rseau de lentreprise ;
les connexions OpenVN peuvent traverser la plupart des firewalls et passer par des proxys : si on peut passer
en https alors on pourra passer in tunnel OpenVPN ;
un fonctionnement en mode client ou serveur, UDP ou TCP ;
un seul port ouvrir sur le firewall pour le support dOpenVPN avec la possibilit pour un serveur de grer
plusieurs clients avec ce seul port ;
pas de problme avec le NAT ;
la mise en oeuvre dOpenVPN en tant quajout de nouvelles interfaces virtuelles TUN/TAP sur le serveur et le
client autorise toutes les utilisation possibles du firewall et du routage !
trs extensible avec la possibilit de scripter la mise en place du VPN et la configuration du client et du
serveur ;
le support transparent des clients utilisant des adresses IP dynamiques sans perte de connexion ;
installation simple sur les diffrentes plateformes ;
design modulaire : le dcoupage clair entre rseaux et scurit permet denvisager de nombreuses possibilits ;
support des matriels mobiles et embarqus : Windows Mobile, Maemo de Nokia, OpenWRT etc.
trs actif au niveau de la communaut.

La configuration dans PFSense : ct serveur

14

La configuration dans PFSense : ct client

15

Un VPN Light avec SSH

16

Un VPN au travers de SSH

un VPN la demande :
 na pas besoin dtre configur de manire statique ;
 peut tre mis en place et dfait suivant les besoins de lutilisateur : depuis nimporte o et nimporte quel moment,
le rve du road warrior du dimanche ;

cre des interfaces virtuelles TUN/TAP (ncessite une configuration avec des droits dadministration. . . ) ;
Pour la configuration

? il faut installer sur le client tunctl :


sudo apt-get install uml-utilities
sudo apt-get install openssh-server

? il faut activer l IP forwarding sur les deux :


sysctl -w net.ipv4.ip_forward=1

? Pour la configuration du serveur SSH :


 dans le fichier /etc/ssh/sshd_config :
[ ... ]
# Enable layer-3 tunneling. Change the value to ethernet for layer-2 tunneling
PermitTunnel point-to-point

? Et du client SSH :
 dans le fichier /etc/ssh/ssh_config :
[ ... ]
# Enable layer-3 tunneling. Change the value to ethernet for layer-2 tunneling
Tunnel point-to-point

Un VPN Light avec SSH

17

Le dclenchement du VPN

? Pour pouvoir permettre le routage du trafic par lintermdiaire du VPN, il est ncessaire de dclencher le fonctionnement
en tant que routeur sur la machine :
$ sudo sysctl -w net.ipv4.ip_forward=1

? Ensuite, sur le poste client, vous excutez la commande suivante :


$ sudo ssh -f -w any:any root@adresse_serveur true

Ici, loption -f permet de mettre la commande ssh en tche de fond.


Le sudo est ncessaire pour permettre la cration dune nouvelle interface sur la machine.
Le any:any permet de slectionner des interfaces TUN local:distante libres.

? Une nouvelle interface est cree du ct client comme du ct serveur :


$ ifconfig -a
tun0

Link encap:UNSPEC

HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00

POINTOPOINT NOARP MULTICAST

MTU:1500

Metric:1

Packets reus:0 erreurs:0 :0 overruns:0 frame:0


TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:500
Octets reus:0 (0.0 B) Octets transmis:0 (0.0 B)

? Il est ensuite possible dactiver linterface et de la configurer pour permettre le routage au travers du VPN, ainsi que le
filtrage grce au fait que le VPN ajoute une interface virtuelle.
Il est possible dauto-configurer le VPN mis en place laide dune ligne de commande indique dans le fichier
~/.ssh/authorized_keys.