Modifications entre les versions 9 et 10
Version 9 à la date du 2013-07-05 10:44:18
Taille: 5395
Éditeur: FranckKouyami
Commentaire:
Version 10 à la date du 2013-08-12 07:00:08
Taille: 5417
Éditeur: WillyManga
Commentaire:
Texte supprimé. Texte ajouté.
Ligne 128: Ligne 128:
 * BACGL (le bureau)

Cette page présente la méthode de migration de pipesecd vers ipsectools.

Cadre général RPV v1.5

-- FranckKouyami 2013-07-02 11:53:34 : je l'ai fait dans le cadre d'un remplacement de machine. J'avais un nouveau FW à installer.

Prérequis

Personnes à contacter avant impérativement

Au moins d'un des deux suivants :

et impérativement le RTR de la région.

Le script

Le script d'aide à la migration est à cette adresse : http://git.auf.org/?p=progfou.git;a=blob_plain;f=ipsec/pipsecd2ipsectools

Ce script est à récupérer et à installer dans le répertoire /root du pare-feu.

Les 4 variables suivantes sont à adapter :

LOCALNET="10.XXX.0.0/20" # le sous-réseau du RPV AUF qui a été attribué à l'implantation
LOCALIP="10.XXX.0.254" # l'adresse IP du pare-feu dans ce sous-réseau
PUBLICIP="210.245.61.206" # l'adresse IP publique du pare-feu
GW="118.70.0.243" # la route par défaut du pare-feu, visible avec la commande suivante : route -n

Autres

  • Installer gawk (optionnel, permet juste d'éviter un avertissement)

  • Installer toutes les mises à jour

Procédure

Le script est très bien documenté. Ce qui va suivre est majoritairement issu de la doc présente dans le script.

  • lancer ce script, sous l'utilisateur root, dans le serveur où est installé pipsecd et sauver le résultat dans un fichier, par exemple :

    pipsecd2ipsectools > /root/ipsec-tools.conf
  • voici par exemple voici le fichier obtenu à Cotonou :

    root@fw:/root/# cat ipsec-tools.conf
    
    # REMARQUES :
    # - l'ordre des règles spdadd est important et doit correspondrea l'ordre
    #   des routes les plus précises vers les routes les plus générales
    
    # ne pas utiliser IPsec en réseau local
    
    spdadd 10.25.1.0/20 10.25.1.0/20 any -P out none ;
    spdadd 10.25.1.0/20 10.25.1.0/20 any -P in none ;
    
    
    #if 1 local_spi=1001 remote_spi=1001
    #ip route add 10.36.0.0/20 via 10.216.33.101 src 10.25.1.254
    
    spdadd 10.25.1.0/20 10.36.0.0/16 any -P out ipsec
      esp/tunnel/81.91.236.1-199.84.140.82/require ;
    spdadd 10.36.0.0/16 10.25.1.0/20 any -P in ipsec
      esp/tunnel/199.84.140.82-81.91.236.1/require ;
    
    add 81.91.236.1 199.84.140.82 esp-old 251 -m tunnel
      -E des-cbc XXXXXXXXXXXXXXXXXX
      -A hmac-md5 YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY ;
    add 199.84.140.82 81.91.236.1 esp-old 251 -m tunnel
      -E des-cbc XXXXXXXXXXXXXXXXXX
      -A hmac-md5 YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY ;
  • /!\ NB : les clés derrière des-cbc et hmac-md5 ne doivent jamais être transmise par un moyen non sécurisé (courriel, forum). Préférez Jabber en conversation privée avec votre interlocuteur (évitez les salons) /!\

  • cas particulier : corriger le CIDR pour Montréal qui doit être de 16 au lieu de 20 (= remplacer tous les 10.36.0.0/20 par 10.36.0.0/16)

  • vérifier le résultat obtenu avec votre RTR ou un autre collègue ayant déjà fait la migration
  • vérifier la configuration des règles de pare-feu pour s'assurer de ne pas faire de NAT en sortie vers 10.0.0.0/8, par exemple :

    iptables -t nat -I POSTROUTING -d 10.0.0.0/8 -j RETURN
  • ajouter les routes statiques recommandées en commentaire dans le résultat du lancement du script
    • soit dans /etc/network/interfaces, par exemple :

      up ip route replace 10.36.0.0/16 via 118.70.0.243 dev ppp0 src 10.230.0.254
    • /!\ remplacer ici aussi le 10.36.0.0/20 par 10.36.0.0/16

    • soit dynamiquement au lancement d'une interface PPP, par exemple dans un fichier /etc/ppp/ip-up.d/0000iproute tel que suit :

      #!/bin/sh
      IP="/sbin/ip"
      for net in `awk '/^spdadd .* out /{print $3}' /etc/ipsec-tools.conf` ; do
        $IP route replace "$net" via $PPP_REMOTE dev $PPP_IFACE src 10.230.0.254
      done
      $IP route replace default via $PPP_REMOTE dev $PPP_IFACE src 210.245.61.206
  • convenir avec un des admins du RPV (Jean Christophe André ou Moussa Nombré) du moment de la bascule de pipsecd vers ipsec-tools

  • stopper le service pipsecd et purger le paquet pipsecd devenu inutile :

    service pipsecd stop
    aptitude purge pipsecd
  • installer le paquet ipsec-tools et la configuration IPsec natif, par exemple :

    aptitude install ipsec-tools
    cat /root/ipsec-tools.conf >> /etc/ipsec-tools.conf
    service setkey restart
  • demander le redémarrage du Netopia correspondant à Montréal (donc à Jean Christophe André ou Moussa Nombré, en précisant lequel, pour faciliter le travail)

  • tester que tout fonctionne bien, depuis le pare-feu et depuis un poste client

Erreurs possibles

awk: cmd. line:4: warning: escape sequence `\.' treated as plain `.'

Ceci n'est pas véritablement une erreur. C'est dû à la version de awk qui est installée. Donc ignorez cela.

Reporting

Rajoutez ici le nom de votre implantation si vous avez fait la migration avec succès. Vous pourrez ainsi être contactés par d'autres pour les accompagner.

  • toute la région Asie-Pacifique
  • CNF de Cotonou
  • CNF de Ngaoundéré
  • CNF de Bujumbura
  • BACGL (le bureau)

Projet/RPV/Migration2ipsectools (dernière édition le 2014-10-16 18:31:17 par JeanChristopheAndré)