IPsec : ajout d'un mode d'emploi.
[progfou.git] / sysadmin / pipsecd2ipsectools
index 4ad48eb..83461c6 100755 (executable)
@@ -5,10 +5,44 @@
 # Licence : GNU General Public License, version 3
 # Auteur : Progfou <jean-christophe.andre@auf.org>
 # Création : 2011-02-15
 # Licence : GNU General Public License, version 3
 # Auteur : Progfou <jean-christophe.andre@auf.org>
 # Création : 2011-02-15
-# Mise à jour : 2011-02-16
+# Mise à jour : 2011-09-13
+#
+# Mode d'emploi :
+# - changer les adresses IP ci-dessous en prenant soin de spécifier un réseau
+#   de CIDR /20 pour se préparer au futur RPV v2
 LOCALGW="210.245.61.206"
 LOCALIP="10.230.0.254"
 LOCALNET="10.230.0.0/20"
 LOCALGW="210.245.61.206"
 LOCALIP="10.230.0.254"
 LOCALNET="10.230.0.0/20"
+# - lancer ce script, sous root, dans le serveur où est installé pipsecd et
+#   sauver le résultat dans un fichier, par exemple :
+#     # pipsecd2ipsectools > /root/ipsec-tools.conf
+# - 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/interface, par exemple :
+#     up ip route replace 10.36.0.0/20 via 118.70.0.243 dev ppp0 src 10.230.0.254
+#   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 :
+#     # /etc/init.d/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
+# - tester que tout fonctionne bien, depuis le pare-feu et depuis un poste client
 
 cat << __EOF__
 
 
 cat << __EOF__
 
@@ -31,7 +65,7 @@ awk '
   REMOTENET=$5; split(REMOTENET,N,"\.")
   REMOTEMASK=$7; split(REMOTEMASK,M,"\.")
   REMOTENET=N[1]"."N[2]"."N[3]".0" # incorrect mais plus simple pour le moment
   REMOTENET=$5; split(REMOTENET,N,"\.")
   REMOTEMASK=$7; split(REMOTEMASK,M,"\.")
   REMOTENET=N[1]"."N[2]"."N[3]".0" # incorrect mais plus simple pour le moment
-  REMOTECIDR=32-log(256^4-(M[1]*256^3+M[2]*256^2+M[3]*256+M[4]))/log(2)
+  REMOTECIDR=20 # 32-log(256^4-(M[1]*256^3+M[2]*256^2+M[3]*256+M[4]))/log(2)
   printf("remotenet %s %s\n", IF, REMOTENET"/"REMOTECIDR)
 }
 ' /etc/pipsecd/startup
   printf("remotenet %s %s\n", IF, REMOTENET"/"REMOTECIDR)
 }
 ' /etc/pipsecd/startup
@@ -75,3 +109,4 @@ sed -e '/^[^#]/s/ *= */=/g' /etc/pipsecd/pipsecd.conf
   if (EMPTYLINE!=1) { print ""; EMPTYLINE=1 }
 }
 '
   if (EMPTYLINE!=1) { print ""; EMPTYLINE=1 }
 }
 '
+exit 0