Openstuff Wiki : HowtoIPsec

HomePage :: Categories :: PageIndex :: RecentChanges :: RecentlyCommented :: Login/Register

Revision [363]

Last edited on 2007-08-02 14:47:00 by StanKju
Additions:
Pour plus d'information, voir le document de Pascal Gachet sur la [[http://www.td.unige.ch/VPN2/Documents/EIVD/Gestion_cles_IPSec_PG.pdf Gestion des clés pour Ipsec]].


Revision [263]

Edited on 2007-05-20 23:29:27 by StanKju
Additions:
IPsec est une extension du protocole IP permettant de sécuriser les échanges en mettant en place de l'authentification ou du chiffrage. Il est implémenté dans ""IPv6"" et a été //backporté// pour ""IPv4"". Commençons par quelques notions relatives à IPsec ...
Les communications peuvent être protégées suivant deux modèles:
~- une **signature RSA** (//authentication_method rsasig//) - chaque machine possède un certificat X.509 ainsi qu'une clé privée. L'authentification se fait via l'échange et la validation des certificats
Deletions:
IPsec est une extension du protocole IP permettant de sécuriser les échanges en mettant en place de l'authentification ou du chiffrage. Il est implémenté dans ""IPv6"" et a été //backporté// pour ""IPv4"". Commençons par quelques notions relatives a IPsec ...
Les communications peuvent être protégé suivants deux modèles:
~- une **signature RSA** (//authentication_method rsasig//) - chaque machine posséde un certificat X.509 ainsi qu'une clé privé. L'authentification se fait via l'échange et la validation des certificats


Revision [243]

Edited on 2007-05-04 19:32:38 by StanKju
Additions:
Cette configuration peut être appliqué automatiquement via les scripts de démarrage ///etc/init.d/setket// et ///etc/init.d/racoon//. Pensez à modifier le fichier ///etc/default/setkey// en dé-commentant la ligne suivante (setkey est désactivé par défaut):
Deletions:
Cette configuration peut être appliqué automatiquement via les script de démarage ///etc/init.d/setket// et ///etc/init.d/racoon//. Pensez à modifier le fichier ///etc/default/setkey// en décommentant la ligne suivante (setkey est désactivé par défaut):


Revision [242]

Edited on 2007-05-04 19:30:23 by StanKju
Additions:
~- des **clés partagés** (//authentication_method pre_shared_key//) - les deux machines s'accordent sur un secret partagé qui est manuellement configuré via le fichier ///etc/racoon/psk.txt//
~- une **signature RSA** (//authentication_method rsasig//) - chaque machine posséde un certificat X.509 ainsi qu'une clé privé. L'authentification se fait via l'échange et la validation des certificats
~- **GSSAPI** - utilisation de Kerberos pour authentifier chaque machine
~- la clé privée du certificat dans ///etc/racoon/certs/machine.key//
~- le certificat signé public dans ///etc/racooon/certs/machine.crt//
~- et le certificat du CA dans ///etc/racoon/certs/ca.crt//
Lancement du démon Racoon avec les options de //debug//:
# /etc/racoon/setkey.sh
==2.3.4 Automatisation==
Cette configuration peut être appliqué automatiquement via les script de démarage ///etc/init.d/setket// et ///etc/init.d/racoon//. Pensez à modifier le fichier ///etc/default/setkey// en décommentant la ligne suivante (setkey est désactivé par défaut):
%% RUN_SETKEY=yes %%
Pensez également à mettre la configuration de setkey dans le fichier ///etc/ipsec-tools.conf//.
Deletions:
~- des clés partagés (authentication_method pre_shared_key) - les deux machines s'accordent sur un secret partagé qui est manuellement configuré via le fichier /etc/racoon/psk.txt
~- une signature RSA (authentication_method rsasig) - chaque machine posséde un certificat X.509 ainsi qu'une clé privé. L'authentification se fait via l'échange et la validation des certificats
~- GSSAPI - utilisation de Kerberos pour authentifier chaque machine
~- la clé privée du certificat dans /etc/racoon/certs/machine.key
~- le certificat signé public dans /etc/racooon/certs/machine.crt
~- et le certificat du CA dans /etc/racoon/certs/ca.crt
Lancement du démon Racoon:
/etc/racoon/setkey.sh


Revision [241]

Edited on 2007-05-04 19:20:20 by StanKju
Additions:
~- des clés partagés (authentication_method pre_shared_key) - les deux machines s'accordent sur un secret partagé qui est manuellement configuré via le fichier /etc/racoon/psk.txt
Deletions:
~- des clés partagés (authentication_method pre_shared_key) - les deux machines s'accordent sur un secret partagé qui est manuellement configurer via le fichier /etc/racoon/psk.txt


Revision [240]

Edited on 2007-05-04 19:14:58 by StanKju
Additions:
Pour cela, IPsec met en oeuvre des associations de sécurité **SA**. Ces associations sont unidirectionnelles et définissent les mécanismes de sécurité à appliquer. Ces associations sont stockées dans une **SAD** (Security Association Database) qui contient donc l'ensemble des associations de sécurité. Une association regroupe différentes informations, dont:
~- l'adresse source et destination des paquets devant être //protégé// (dans le mode transport ce sont les mêmes adresses que ceux présents dans la SA, en mode tunnel ils peuvent être différent)
Il y a deux principales extensions IPsec:
~- l'extension de confidentialité **ESP** (Encapsulating Security Payload) permet de protéger à la fois l'intégrité et la confidentialité
~~- en mode transport, seules les données de niveau transport du paquet IP sont protégés (TCP, UDP, ICMP)
Il existe deux méthodes pour la configuration des associations de sécurité. La première, qui est la plus simple, est la gestion manuelle. Cette méthode se trouve rapidement inadaptée dans un réseau important et est complètement statique (pas renouvellement des clés). La seconde, permet la gestion automatique. Elle s'appuie sur le protocole **IKE** (Internet Key Exchange). Ce protocole nécessite:
Si elles y sont déjà, passez à la suite ! Sinon, vous avez gagné le droit de recompiler votre noyau :)
La SAD est vierge, car aucun trafic n'a été généré entre nos machines. Donc aucune association de sécurité n'est encore active.
Maintenant, lançons un tcpdump sur une des machines, puis lançons un ping sur l'autre:
Nous voyons bien la présence des entêtes AH et ESP. Maintenant, regardons de nouveau notre SAD:
Pour supprimer les entrées dans la SAD et la SPD il suffit d'appliquer les commandes suivantes :
Ici, le protocole IKE va être utilisé pour authentifier les machines et négocier les différents paramètres. Il est possible d'authentifier les machines en utilisant:
Nous allons maintenant définir les politiques de sécurités. Par rapport à la configuration manuelle, nous n'avons pas besoin de définir les associations de sécurité: racoon le fera pour nous !
Pour l'autre machine, il suffit d'inverser le **in** et le **out**. Donnez les droits d'exécution à ce fichier (chmod +x).
~- la clé privée du certificat dans /etc/racoon/certs/machine.key
~- le certificat signé public dans /etc/racooon/certs/machine.crt
Maintenant, refaisons notre ping ...
Pas de panique ! La raison est que l'association n'a pas encore été faite. L'envoi du paquet a déclenché l'échange de clés, regardons les log de Racoon:
Voyons ce que donne le tcpdump en relançant de nouveau un ping:
On voit bien, une nouvelle fois, les entête ESP.
Deletions:
Pour cela, IPsec met en oeuvre des associations de sécurité **SA**. Ces association sont unidirectionnelle et définissent les mécanismes de sécurité à appliquer. Ces associations sont stocké dans une **SAD** (Security Association Database) qui contient donc l'ensemble des associations de sécurité. Une association regroupe différentes informations, dont:
~- l'adresse source et destination des paquet devant être //protégé// (dans le mode transport ce sont les même adresse que ceux présente dans la SA, en mode tunnel ils peuvent être différent)
Il y a deux principales extentions IPsec:
~- l'extension de confidentialité **ESP** (Encapsulating Security Payload) permet de protéger a la fois l'intégrité et la confidentialité
~~- en mode transport, seules les données de niveau transport du paquet IP sont protégées (TCP, UDP, ICMP)
Il existe deux méthodes pour la configuration des associations de sécurité. La première, qui est la plus simple, est la gestion manuelle. Cette méthode se trouve rapidement inadapté dans un réseau important et est complètement statique (pas renouvellement des clés). La seconde, permet la gestion automatique. Elle s'appuie sur le protocole **IKE** (Internet Key Exchange). Ce protocole nécessite:
Si elle y sont déja, passez à la suite ! Si non, vous avez gagné le droit de recompiler votre noyau :)
La SAD est vierge car aucun traffic n'as été générer entre nos machines. Donc aucune association de sécurité n'est encore active.
Maintenant lancons un tcpdump sur une des machines, puis lancons un ping sur l'autre:
Nous voyons bien la présence des entêtes AH et ESP. Maintenant regardons de nouveau notre SAD:
Pour supprimer les entrées dans la SAD et la SPD il suffit d'appliquer les commandes suivantes:
Ici, le protocole IKE va être utiliser pour authentifier les machines et négocier les différents paramètres. Il est possible d'authentifier les machines en utilisant:
Nous allons maintenant définir les politiques de sécurités. Par rapport à la configuration manuelle, nous n'avons pas besoin de définir les association de sécurité: racoon le fera pour nous !
Pour l'autre machine il suffit d'inverser le **in** et le **out**. Donnez les droit d'éxécution à ce fichier (chmod +x).
~- la clé privé du certificat dans /etc/racoon/certs/machine.key
~- le certificat signé publique dans /etc/racooon/certs/machine.crt
Maintenant refaissont notre ping ...
Pas de pannique ! La raison est que l'association n'as pas encore été faite. L'envois du paquet a déclenché l'échange de clés, regardons les log de Racoon:
Voyons ce que donne le tcpdump en relancant de nouveau un ping:
On vois bien, une nouvelle fois, les en-tête ESP.


Revision [239]

The oldest known version of this page was created on 2007-04-30 17:22:13 by StanKju
Valid XHTML 1.0 Transitional :: Valid CSS :: Powered by WikkaWiki
Page was generated in 0.1022 seconds