User Tools

Site Tools


informatique:cisco:ipsec

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
informatique:cisco:ipsec [2011/03/02 20:15] – édition externe 127.0.0.1informatique:cisco:ipsec [2013/10/14 20:44] (current) – external edit 127.0.0.1
Line 59: Line 59:
   * **RRI** (Reverse Route Injection) : une route statique est créé sur le serveur Cisco Easy VPN pour l'IP interne de chaque client VPN. Cela permet de les injecter ensuite dans l'IGP.   * **RRI** (Reverse Route Injection) : une route statique est créé sur le serveur Cisco Easy VPN pour l'IP interne de chaque client VPN. Cela permet de les injecter ensuite dans l'IGP.
  
-Méthodes d'authentification :+**Méthodes d'authentification** :
   * couple nom d'utilisateur/mot de passe   * couple nom d'utilisateur/mot de passe
   * OTP (One Time Password)   * OTP (One Time Password)
Line 66: Line 66:
   * certificats numériques   * certificats numériques
  
-Algorithmes de chiffrements symétriques : on utilise la même clé pour chiffrer et déchiffrer+**Algorithmes de chiffrements symétriques** : on utilise la même clé pour chiffrer et déchiffrer
   * DES (Data Encryption Standard) ; vulnérable car basé sur des clés de 56 bits   * DES (Data Encryption Standard) ; vulnérable car basé sur des clés de 56 bits
   * 3DES (3 chiffrements DES à la suite)   * 3DES (3 chiffrements DES à la suite)
   * AES (Advanced Encryption Standard) ; clés de 128, 192 ou 256 bits   * AES (Advanced Encryption Standard) ; clés de 128, 192 ou 256 bits
  
-Algorithmes de chiffrement asymétriques : paire de clés publique et privée+**Algorithmes de chiffrement asymétriques** : paire de clés publique et privée
   * RSA (Rivest Shamir Adleman) ; on peut utiliser différentes longueurs de clés ; il est recommandé aujourd'hui d'utiliser des clés de 1024, 2048 ou 4096 bit (parano)   * RSA (Rivest Shamir Adleman) ; on peut utiliser différentes longueurs de clés ; il est recommandé aujourd'hui d'utiliser des clés de 1024, 2048 ou 4096 bit (parano)
  
-Méthodes de hashage :+**Méthodes de hashage** :
   * HMAC (Hash-based Message Encryption Code)   * HMAC (Hash-based Message Encryption Code)
   * MD5 (Message Digest 5)   * MD5 (Message Digest 5)
Line 82: Line 82:
 ====PKI==== ====PKI====
  
-PKI (Public Key Infrastructure) est un sytème servant à authentifier une clé publique d'une entité. Elle repose sur une relation de confiance entre une autorité de certification (**CA** pour Certificate Authority) et la personne qui cherche l'authenticité d'une clé publique.+**PKI** (Public Key Infrastructure) est un système servant à authentifier une clé publique d'une entité. Elle repose sur une relation de confiance entre une autorité de certification (**CA** pour //Certificate Authority//) et la personne qui cherche l'authenticité d'une clé publique.
  
 ====NAT Traversal==== ====NAT Traversal====
Line 97: Line 97:
 ====Définition de la policy ISAKMP==== ====Définition de la policy ISAKMP====
  
-On y définit le type d'authentification, l'algorithme de hash, l'algorithme de chiffrement et le groupe Diffie-Hellman.+(Phase 1) 
  
-  crypto isakmp policy 1 +Les politiques ISAKMP sont définies globalement et donc utilisables par tous les tunnels configurés sur le routeur. Leur utilisation se fait séquentiellement, par ordre croissant, en fonction de leur priorité ("1" dans l'exemple qui suit). Dès qu'une politique matche celle du peer, c'est elle qui est utilisée.
-   authentication pre-shared +
-   hash sha +
-   encryption aes 128 +
-   group 2+
  
-Le "1" désigne la priorité interne au routeur = on peut créer plusieurs politiques ISAKMP sur un même routeurs'il a le choix il prendra la valeur la plus faible (1).+On y définit le type d'authentification, l'algorithme de hashagel'algorithme de chiffrement et le groupe Diffie-Hellman.
  
-Puis on indique la clé partagée avec l'adresse du bout du tunnel (IP du peer). +<code bash> 
-  crypto isakmp key LaCleSecrete address 172.16.171.2+crypto isakmp policy 1 
 + authentication pre-shared 
 + hash sha 
 + encryption aes 128 
 + group 2 
 +</code> 
 + 
 +Puis on indique la clé partagée ainsi que l'adresse du bout du tunnel (IP du peer). 
 +<code bash> 
 +crypto isakmp key LaCleSecrete address 172.16.171.2 
 +</code>
  
 ====Définition de la crypto map==== ====Définition de la crypto map====
  
-Définition du ''tranform-set'' qui spécifie la politique de sécurité d'IPsec (algorithme de chiffrement + d'authentification) : +Définition du ''transform-set'' qui spécifie la politique de sécurité d'IPsec (algorithme de chiffrement + d'authentification + autres paramètres facultatifs) : 
-  crypto ipsec transform-set Aes_sha +<code bash> 
-   esp-aes 128 esp-sha-hmac+crypto ipsec transform-set TS-aes_sha 
 + esp-aes 128 esp-sha-hmac 
 + ! 
 + ! paramètre facultatifs 
 + mode transport 
 +</code>
      
-Crypto map = associer un transform-set à un peer et à une ACL (cf plus bas) : +Définition de la crypto map = associer un transform-set à un peer et à une ACL (cf plus bas) : 
-  crypto map VPN_To_R2 10 ipsec-isakmp +<code bash> 
-   set peer 172.16.171.2 +crypto map VPN_To_R2 10 ipsec-isakmp 
-   match address 101 + set peer 172.16.171.2 
-   set transform-set Aes_sha+ match address 101 
 + set transform-set TS-aes_sha 
 + set pfs group2 
 +</code>
  
-Définition de l'access-list qui spécifie quel trafic sera envoyé dans le tunnel. +Définition de l'access-list qui spécifie quel trafic sera envoyé dans le tunnel (= domaine de chiffrement)
-  access-list 101 permit ip 10.1.1.0 0.0.0.255 10.2.2.0 0.0.0.255+<code bash> 
 +access-list 101 permit ip 10.1.1.0 0.0.0.255 10.2.2.0 0.0.0.255 
 +</code>
  
 ====Appliquer la crypto map sur une interface==== ====Appliquer la crypto map sur une interface====
  
-  interface se0/0 +<code bash> 
-   ip address 172.16.171.1 255.255.255.0 +interface se0/0 
-   crypto map VPN_To_R2+ ip address 172.16.171.1 255.255.255.0 
 + crypto map VPN_To_R2 
 +</code>
  
  
Line 257: Line 275:
      remote-ip 10.1.1.2      remote-ip 10.1.1.2
  
 +
 +====Accélération matérielle====
 +
 +Sur certains châssis on peut utiliser des modules d'accélération hardware ; c'est le cas des cartes AIM sur les châssis 3825 ou des carte SPA pour les châssis 650X. Dans ce dernier exemple si on utilise des tunnels GRE + IPsec il peut être intéressant dans certains cas de forcer la prise en charge des tunnels GRE chiffrés par la carte supervisor :
 +<code bash>
 +! prise en charge de la crypto par la carte SPA
 +crypto engine gre vpnblade
 +!
 +! prise en charge par la carte supervisor
 +crypto engine gre supervisor
 +</code>
  
 =====Vérifs===== =====Vérifs=====
Line 266: Line 295:
   show crypto engine connection active   show crypto engine connection active
  
-====Etat des tunnels====+====État des tunnels====
  
-<code> +<code bash
-sh crypto session+show crypto session
 Crypto session current status Crypto session current status
  
Line 291: Line 320:
 |DOWN            |None           |None (flow exists)| |DOWN            |None           |None (flow exists)|
 |DOWN            |None           |None (no flow)| |DOWN            |None           |None (no flow)|
 +
 +
 +Plus de détails : on précise l'adresse ip du peer pour n'afficher que son tunnel ; on récupère avec cette commande le mode IPSec (tunnel ou transport), les compteurs in/out, les SAs, etc.
 +<code bash>
 +Router1#show crypto ipsec sa peer 10.1.1.1
 +
 +interface: Vlan2784
 +    Crypto map tag: cm100, local addr 10.0.0.1
 +
 +   protected vrf: (none)
 +   local  ident (addr/mask/prot/port): (10.0.0.1/255.255.255.255/47/0)
 +   remote ident (addr/mask/prot/port): (10.1.1.1/255.255.255.255/47/0)
 +   current_peer 10.1.1.1 port 500
 +     PERMIT, flags={origin_is_acl,}
 +    #pkts encaps: 2949679701, #pkts encrypt: 2949679701, #pkts digest: 2949679701
 +    #pkts decaps: 1599171374, #pkts decrypt: 1599171374, #pkts verify: 1599171374
 +    #pkts compressed: 0, #pkts decompressed: 0
 +    #pkts not compressed: 0, #pkts compr. failed: 0
 +    #pkts not decompressed: 0, #pkts decompress failed: 0
 +    #send errors 0, #recv errors 0
 +
 +     local crypto endpt.: 10.0.0.1, remote crypto endpt.: 10.1.1.1
 +     path mtu 1500, ip mtu 1500
 +     current outbound spi: 0xDA4B403D(3662364733)
 +     PFS (Y/N): Y, DH group: group5
 +
 +     inbound esp sas:
 +      spi: 0x3988518B(965235083)
 +        transform: esp-3des esp-sha-hmac ,
 +        in use settings ={Tunnel, }
 +        conn id: 8079, flow_id: :6079, sibling flags 80000240,  crypto map: cm100
 +        sa timing: remaining key lifetime (k/sec): (911080/3215)
 +        IV size: 8 bytes
 +        replay detection support: N
 +        Status: ACTIVE
 +
 +     inbound ah sas:
 +
 +     inbound pcp sas:
 +
 +     outbound esp sas:
 +      spi: 0xDA4B403D(3662364733)
 +        transform: esp-3des esp-sha-hmac ,
 +        in use settings ={Tunnel, }
 +        conn id: 8080, flow_id: :6080, sibling flags 80000240,  crypto map: cm100
 +        sa timing: remaining key lifetime (k/sec): (3101942/3215)
 +        IV size: 8 bytes
 +        replay detection support: N
 +        Status: ACTIVE
 +
 +     outbound ah sas:
 +
 +     outbound pcp sas:
 +</code>
 +
 +Autres commandes, en vrac :
 +<code bash>
 +show crypto engine accel stat slot x/y detail et/ou
 +show crypto ipsec sa
 +!
 +show crypto ace polo detail
 +show int tunnel351 stats
 +show crypto vlan
 +show crypto engine accelerator statistic all
 +show ip int tu351
 +!
 +clear crypto engine accelerator counter all
 +clear crypto session local 10.4.101.97
 +</code>
  
 ====Renégocier un tunnel spécifique==== ====Renégocier un tunnel spécifique====
Line 315: Line 413:
   * [[http://www.cisco.com/en/US/docs/ios/12_3t/secur/command/reference/sec_s2gt.html|Security Commands: show crypto isakmp key through subject-name]]   * [[http://www.cisco.com/en/US/docs/ios/12_3t/secur/command/reference/sec_s2gt.html|Security Commands: show crypto isakmp key through subject-name]]
  
 +En vrac, des liens destinés à comprendre et debugger l'IPSec :
 +  * [[http://www.cisco.com/en/US/docs/ios/12_2t/12_2t13/feature/guide/ftprefrg.html|Pre-fragmentation For Ipsec VPNs]]
 +  * [[http://www.cisco.com/en/US/docs/ios/12_3t/12_3t14/feature/guide/gtIPSctm.html|IPSec Virtual Tunnel Interface]]
 +  * [[http://www.cisco.com/en/US/docs/ios-xml/ios/sec_conn_dmvpn/configuration/xe-3s/Sharing_IPSec_with_Tunnel_Protection.html|Sharing IPSec with Tunnel Protection]]
 +  * [[http://www.cisco.com/en/US/docs/interfaces_modules/shared_port_adapters/configuration/6500series/76ovwvpn.html|Overview of the IPsec VPN SPA]]
 +  * [[http://www.cisco.com/en/US/tech/tk827/tk369/technologies_white_paper09186a00800d6979.shtml|Resolve IP Fragmentation, MTU, MSS, and PMTUD Issues with GRE and IPSEC]] (white paper)
 +  * [[http://www.cisco.com/en/US/docs/interfaces_modules/shared_port_adapters/configuration/6500series/76cfvpnb.html|Configuring IPsec VPN Fragmentation and MTU]]
 +  * [[http://www.cisco.com/en/US/docs/ios/12_2/security/command/reference/srfipsec.html|IPSec Network Security Commands]]
informatique/cisco/ipsec.1299096910.txt.gz · Last modified: 2013/10/14 20:52 (external edit)