# 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"
+# - 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__
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
if (EMPTYLINE!=1) { print ""; EMPTYLINE=1 }
}
'
+exit 0