{"id":73,"date":"2022-03-21T20:05:47","date_gmt":"2022-03-21T19:05:47","guid":{"rendered":"https:\/\/turnier.fr\/?p=73"},"modified":"2022-03-21T20:06:46","modified_gmt":"2022-03-21T19:06:46","slug":"fail-over-avec-carp-et-pfsync-via-pfsense","status":"publish","type":"post","link":"https:\/\/turnier.fr\/index.php\/2022\/03\/21\/fail-over-avec-carp-et-pfsync-via-pfsense\/","title":{"rendered":"Fail-Over avec CARP et pfsync via PFSense"},"content":{"rendered":"\n<p>La tol\u00e9rance de panne (aussi appel\u00e9e Fail-Over) est un processus visant \u00e0 assurer une disponibilit\u00e9 constante et continue d\u2019\u00e9l\u00e9ments r\u00e9seaux. Dans le cas de PfSense, le Fail-Over va nous permettre de faire travailler plusieurs Pfsense en les regroupant derri\u00e8re une IP virtuelle unique. Derri\u00e8re cette adresse IP unique se positionneront deux ou plusieurs Pfsense, le principe est alors que si l\u2019un des Pfsenses tombe, un autre est pr\u00e9sent pour prendre le trafic \u00e0 sa place et ce de mani\u00e8re invisible pour l\u2019utilisateur car la m\u00eame IP virtuelle sera toujours utilis\u00e9e.<\/p>\n\n\n\n<p>Le fail-over peut ici \u00eatre utilis\u00e9 pour les interfaces cot\u00e9 WAN comme cot\u00e9 LAN. On retrouvera le m\u00eame principe de fonctionnement que les protocoles HSRP (Cisco) ou GLBP et VRRP pour les autres vendeurs r\u00e9seaux.<\/p>\n\n\n\n<p>Le protocole CARP (Common address redundancy protocol) est le protocole utilis\u00e9 par Pfsense pour la mise en place d\u2019un Fail-over. CARP est un protocole travaillant sur les couches 2 et 3 du mod\u00e8le OSI. Dans son fonctionnement, on met dans un groupe plusieurs h\u00f4tes (groupe de redondance) qui partageront alors une m\u00eame adresse IP et auront une adresse MAC dite \u00ab virtuelle \u00bb. Derri\u00e8re cette adresse IP qui sera virtuelle se cacheront deux ou plusieurs h\u00f4tes parmi un ma\u00eetre qui prendra et traitera l\u2019int\u00e9gralit\u00e9 des requ\u00eates en destination de l\u2019IP virtuelle. Les h\u00f4tes du r\u00e9seaux communiqueront entre eux afin de v\u00e9rifier que le ma\u00eetre est toujours actif, s\u2019il vient \u00e0 tomber, l\u2019h\u00f4te d\u00e9sign\u00e9 comme esclave prendra le relais afin d\u2019accueillir et de traiter le trafic en destination de l\u2019adresse IP Virtuelle.<\/p>\n\n\n\n<p>Ce genre de fonctionnement permet, si une passerelle tombe par exemple, de garder la m\u00eame configuration en utilisant une passerelle physiquement diff\u00e9rente car les deux ou plusieurs h\u00f4tes se \u00ab cacheront \u00bb derri\u00e8re une IP unique.<\/p>\n\n\n\n<p>Nous avons vu d\u2019un peu plus pr\u00e8s le protocole qui allait permettre \u00e0 nos h\u00f4tes de se r\u00e9partir les t\u00e2ches dans le Fail-Over, Pfsense utilise \u00e9galement le protocole Pfsync dans son processus de mise en place du Fail-Over, Pfsync est un protocole utilis\u00e9 pour synchroniser plusieurs machines ex\u00e9cutant le firewall Packet Filter, impl\u00e9ment\u00e9 dans Pfsense.<\/p>\n\n\n\n<p>Plus pr\u00e9cis\u00e9ment, c\u2019est par ce protocole que nous allons pouvoir g\u00e9rer plusieurs h\u00f4tes via une seule interface, il fera en sorte par exemple de diffuser les \u00e9tats de connexion (ferm\u00e9e, ouverte, \u00e9tablies, \u2026) entre le routeur ma\u00eetre et les routeurs esclaves permettant ainsi une reprise des \u00e9tats de connexions en cas de panne du ma\u00eetre et de reprise de l\u2019esclave. Pfsync est un des composants essentiels de la mise en place d\u2019un haute disponibilit\u00e9 sous Pfsense.<\/p>\n\n\n\n<p>Les messages pfsync sont envoy\u00e9s en mulicast, il est recommand\u00e9 de mettre une interface d\u00e9di\u00e9e au pfsync par soucis de s\u00e9curit\u00e9. En effet, en \u00e9tant \u00e0 l\u2019\u00e9coute sur ce canal multicast, un pirate peut recevoir les messages de cr\u00e9ations, de mise \u00e0 jour et de suppression des \u00e9tats de connexions et pourrait m\u00eame se faire passer pour un routeur en envoyant des paquets pfsync afin de perturber le bon fonctionnement du Fail-Over.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Aller on attaque !<\/h2>\n\n\n\n<p>Nous devront avoir 2 machine Pfsense configur\u00e9 en \u00ab https \u00bb, pour cela rendez-vous dans \u00ab syst\u00e8me->Advanced \u00bb, puis cliqu\u00e9 sur https pour les 2 machines Pfsense.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"277\" src=\"https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/f996252f33662e625b25eee56942a267-1024x277.jpeg\" alt=\"\" class=\"wp-image-74\" srcset=\"https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/f996252f33662e625b25eee56942a267-1024x277.jpeg 1024w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/f996252f33662e625b25eee56942a267-300x81.jpeg 300w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/f996252f33662e625b25eee56942a267-768x208.jpeg 768w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/f996252f33662e625b25eee56942a267-720x195.jpeg 720w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/f996252f33662e625b25eee56942a267-820x222.jpeg 820w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/f996252f33662e625b25eee56942a267.jpeg 1528w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Ensuite, nous commenceront par configur\u00e9 la seconde machine Pfsense que je nommerai Pfsense2, apr\u00e8s avoir fait les premier configuration nous configureront les interfaces.<\/p>\n\n\n\n<p>Aller dans l\u2019interface syn puis mettez une Ip fixe. Apres avoir fais cela nous allons configur\u00e9 les r\u00e8gles au niveau du pare-feu. Pour cela aller donc dans pare-feu r\u00e8gle et dans l\u2019interface syn cliqu\u00e9 sur ajout\u00e9. s\u00e9lectionner \u00ab tout \u00bb et fait la m\u00eame chose pour sources, destination et plage de port en s\u00e9lectionnant \u00ab tout \u00bb. Enfin pour terminer cliqu\u00e9 sur enregistr\u00e9.<\/p>\n\n\n\n<p>Aller maintenant dans \u00ab syst\u00e8me-&gt;Synchronisation haute disponibilit\u00e9 \u00bb pour configur\u00e9 la synchronisation de pfsense.<\/p>\n\n\n\n<p>Puis entr\u00e9 la configuration suivante<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"345\" src=\"https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/3485854e60e9b8c2295504b5a5f08943-1024x345.jpeg\" alt=\"\" class=\"wp-image-75\" srcset=\"https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/3485854e60e9b8c2295504b5a5f08943-1024x345.jpeg 1024w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/3485854e60e9b8c2295504b5a5f08943-300x101.jpeg 300w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/3485854e60e9b8c2295504b5a5f08943-768x258.jpeg 768w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/3485854e60e9b8c2295504b5a5f08943-720x242.jpeg 720w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/3485854e60e9b8c2295504b5a5f08943-820x276.jpeg 820w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/3485854e60e9b8c2295504b5a5f08943.jpeg 1444w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Puis enregistr\u00e9 pour terminer la configuration du Pfsense2<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>Nous allons sur la Pfsense 1<\/p>\n\n\n\n<p>Pour commencer, aller dans \u00ab interface-&gt; affection \u00bb S\u00e9lectionner l\u2019interface qui est directement connect\u00e9 aux deuxi\u00e8me pare-feu. Renomm\u00e9 la en \u00ab Syn \u00bb puis dans \u00ab Type de configuration IPv4 \u00bb mettez \u00ab ipv4 statique \u00bb, ensuite desend\u00e9 vers le bas puis entr\u00e9 l\u2019adresse \u00ab 192.168.2.1 \u00bb et mettez un masque en \u00ab 24 \u00bb pour finir enregistr\u00e9. Nous allons cr\u00e9\u00e9e la m\u00eame r\u00e8gle que nous avons fait pour pfsense2, aller donc dans \u00ab parfeu -&gt; r\u00e8gle \u00bb puis s\u00e9lectionner l\u2019interface \u00ab syn \u00bb, cliquer donc sur \u00ab ajout\u00e9 \u00bb. Ensuite configur\u00e9 la r\u00e8gle comme suis :<\/p>\n\n\n\n<p>1) Action : Autoris\u00e9 2) Interface: SYN 3) Famille d\u2019adresse : Ipv4 4) Protocole: Tous 5) Source : Tous 6) Destination: Tous 7) Gamme de ports de destination: Tout<\/p>\n\n\n\n<p>Aller maintenant dans \u00ab syst\u00e9me-&gt;Synchronisation haute disponibilit\u00e9 \u00bb pour configur\u00e9 la synchronisation de Pfsense.<\/p>\n\n\n\n<p>Entr\u00e9 ensuite les configuration comme suivant :<\/p>\n\n\n\n<p>Nous avons terminer pour cette partie il ne manquerai plus qu\u2019a configur\u00e9 les adresses IP virtuels.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"620\" src=\"https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/98ed820978b8baf1f281432991873826-1024x620.jpeg\" alt=\"\" class=\"wp-image-76\" srcset=\"https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/98ed820978b8baf1f281432991873826-1024x620.jpeg 1024w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/98ed820978b8baf1f281432991873826-300x182.jpeg 300w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/98ed820978b8baf1f281432991873826-768x465.jpeg 768w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/98ed820978b8baf1f281432991873826-720x436.jpeg 720w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/98ed820978b8baf1f281432991873826-820x497.jpeg 820w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/98ed820978b8baf1f281432991873826.jpeg 1484w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"573\" src=\"https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/819fee1449e13abd4281d4569d6431eb-1024x573.jpeg\" alt=\"\" class=\"wp-image-77\" srcset=\"https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/819fee1449e13abd4281d4569d6431eb-1024x573.jpeg 1024w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/819fee1449e13abd4281d4569d6431eb-300x168.jpeg 300w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/819fee1449e13abd4281d4569d6431eb-768x430.jpeg 768w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/819fee1449e13abd4281d4569d6431eb-1536x860.jpeg 1536w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/819fee1449e13abd4281d4569d6431eb-720x403.jpeg 720w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/819fee1449e13abd4281d4569d6431eb-820x459.jpeg 820w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/819fee1449e13abd4281d4569d6431eb.jpeg 1609w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Nous allons cr\u00e9\u00e9 une adresse IP virtuel pour le LAN ce qui nous permettra d\u2019avoir la m\u00eame passerelle pour le LAN au cas ou si la machine Pfsense(ma\u00eetre) tomberai. Donc aller dans \u00ab pare-feu -> IPs virtuels \u00bb, cliquer sur ajout\u00e9. Ensuite entr\u00e9 la configuration suivante<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"583\" src=\"https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/36e1d672b75fa4f6eb65a9ce5499882d-1024x583.jpeg\" alt=\"\" class=\"wp-image-78\" srcset=\"https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/36e1d672b75fa4f6eb65a9ce5499882d-1024x583.jpeg 1024w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/36e1d672b75fa4f6eb65a9ce5499882d-300x171.jpeg 300w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/36e1d672b75fa4f6eb65a9ce5499882d-768x437.jpeg 768w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/36e1d672b75fa4f6eb65a9ce5499882d-1536x875.jpeg 1536w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/36e1d672b75fa4f6eb65a9ce5499882d-720x410.jpeg 720w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/36e1d672b75fa4f6eb65a9ce5499882d-820x467.jpeg 820w, https:\/\/turnier.fr\/wp-content\/uploads\/2022\/03\/36e1d672b75fa4f6eb65a9ce5499882d.jpeg 1577w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Il nous faudra donc s\u00e9l\u00e9ctionner l\u2019interface LAN et entr\u00e9 l\u2019adresse IP de l\u2019adresse Ip virtuel qui devrai \u00e9tre dans le meme r\u00e9seau que les interfaces LAN des 2 Pfsense.<\/p>\n\n\n\n<p>Nous devront \u00e9galement entr\u00e9 un mot de passe qui ferra le liens entre les deux Pfsense, Il faudra \u00e9galement changer le VHID Group qui est \u00e0 1 par d\u00e9faut.<\/p>\n\n\n\n<p>Normalement la configuration ce r\u00e9plique automatiquement sur notre PfsenseR, il nous faudra \u00e9galement faire ceci sur nos interface WAN et DMZ.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>La tol\u00e9rance de panne (aussi appel\u00e9e Fail-Over) est un processus visant \u00e0 assurer une disponibilit\u00e9 constante et continue d\u2019\u00e9l\u00e9ments r\u00e9seaux. [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11,15,14,13],"tags":[8,17,16,18],"class_list":["post-73","post","type-post","status-publish","format-standard","hentry","category-ais","category-libre","category-linux","category-routeur","tag-ais","tag-libre","tag-linux","tag-routeur","clearfix"],"_links":{"self":[{"href":"https:\/\/turnier.fr\/index.php\/wp-json\/wp\/v2\/posts\/73","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/turnier.fr\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/turnier.fr\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/turnier.fr\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/turnier.fr\/index.php\/wp-json\/wp\/v2\/comments?post=73"}],"version-history":[{"count":1,"href":"https:\/\/turnier.fr\/index.php\/wp-json\/wp\/v2\/posts\/73\/revisions"}],"predecessor-version":[{"id":79,"href":"https:\/\/turnier.fr\/index.php\/wp-json\/wp\/v2\/posts\/73\/revisions\/79"}],"wp:attachment":[{"href":"https:\/\/turnier.fr\/index.php\/wp-json\/wp\/v2\/media?parent=73"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/turnier.fr\/index.php\/wp-json\/wp\/v2\/categories?post=73"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/turnier.fr\/index.php\/wp-json\/wp\/v2\/tags?post=73"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}