<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Firewall on slash-root.fr</title><link>https://beta.slash-root.fr/tags/firewall/</link><description>Recent content in Firewall on slash-root.fr</description><generator>Hugo -- gohugo.io</generator><language>fr-fr</language><lastBuildDate>Sat, 13 Sep 2025 06:30:48 +0200</lastBuildDate><atom:link href="https://beta.slash-root.fr/tags/firewall/index.xml" rel="self" type="application/rss+xml"/><item><title>OPNsense : Block malicious IPs</title><link>https://beta.slash-root.fr/opnsense-block-malicious-ips/</link><pubDate>Thu, 21 Mar 2024 10:08:02 +0100</pubDate><guid>https://beta.slash-root.fr/opnsense-block-malicious-ips/</guid><description>&lt;img src="https://beta.slash-root.fr/opnsense-block-malicious-ips/cover.jpg" alt="Featured image of post OPNsense : Block malicious IPs" /&gt;&lt;p&gt;Un jour, j'ai décidé d'ajouter des blocklists à mes instances Crowdsec. Tout fier, j'en informe mon copain BoB sur Discord. C'est à ce moment là, qu'il me répond : &amp;quot;Hey, rajoute cette liste comportant + de 200k IP !&amp;quot;&lt;/p&gt;
&lt;p&gt;Cette fameuse liste est disponible sur ce dépôt git : &lt;a href="https://github.com/duggytuxy/Intelligence_IPv4_Blocklist"&gt;https://github.com/duggytuxy/Intelligence_IPv4_Blocklist&lt;/a&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;En complément : Un clin dœil à Romain Marcoux pour ses travaux open source liés autour de la CTI : &lt;a href="https://github.com/romainmarcoux"&gt;https://github.com/romainmarcoux&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;La communauté BE.CYBER a même découpé cette liste pour bypass la limitation des équipements Fortinet. Pour ici, pas besoin de la découper puisque je vais présenter comment la mettre en place sur OPNsense et la mettre à jour automatiquement.&lt;/p&gt;
&lt;p&gt;Allez, c'est parti !&lt;/p&gt;
&lt;h2 id="mise-en-place-dun-alias"&gt;&lt;a href="#mise-en-place-dun-alias" class="header-anchor"&gt;&lt;/a&gt;Mise en place d&amp;rsquo;un alias
&lt;/h2&gt;&lt;p&gt;Pour la mise en place de la liste, il faudra créer un alias. C'est également grâce à cet alias qua liste se mettra à jour automatiquement.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Tout d'abord, se rendre dans &lt;code&gt;Firewall&lt;/code&gt; (1), &lt;code&gt;Aliases&lt;/code&gt; (2). Puis, ajouter un nouvel alias (3).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="opnsense_malicious_01.png" alt="image-20240321091150291" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;5 champs à remplir :
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Name&lt;/strong&gt; (1) : Le nom qui permettra d'utiliser cet alias dans les règles du firewall.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Type&lt;/strong&gt; (2) : Sélectionner &lt;code&gt;URL Table (IPs)&lt;/code&gt;. Cela va permettre d'indiquer une fréquence de mise à jour.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Refresh Frequency&lt;/strong&gt; (3) : Indiquer la fréquence de mise à jour de la liste. Ici, tous les jours.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Content&lt;/strong&gt; (4) : La fameuse liste au format raw.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Description&lt;/strong&gt; (5) : Le nom de ce champs parle de lui-même.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="opnsense_malicious_02.png" alt="image-20240321091835085" /&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Lien de la liste : [Update 13/09/2025] &lt;a href="https://raw.githubusercontent.com/duggytuxy/Data-Shield_IPv4_Blocklist/refs/heads/main/prod_data-shield_ipv4_blocklist.txt"&gt;https://raw.githubusercontent.com/duggytuxy/Data-Shield_IPv4_Blocklist/refs/heads/main/prod_data-shield_ipv4_blocklist.txt&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;Valider en cliquant sur &lt;code&gt;Save&lt;/code&gt;, puis &lt;code&gt;Apply&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;La liste est mise en place avec &lt;strong&gt;8309&lt;/strong&gt; entrées à ce jour (1) à travers ce nouvel alias. De plus, on peut constater que le firewall d'OPNsense peut comporter jusqu'à 1 millions d'entrées par défaut (2).&lt;/p&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="opnsense_malicious_07.png" alt="image-20240321091835066" /&gt;&lt;/p&gt;
&lt;h2 id="augmenter-le-nombre-dentrées"&gt;&lt;a href="#augmenter-le-nombre-dentr%c3%a9es" class="header-anchor"&gt;&lt;/a&gt;Augmenter le nombre d&amp;rsquo;entrées
&lt;/h2&gt;&lt;p&gt;Si cette limite d'un million d'entrées dans le système n'est pas suffisante, il est possible de l'augmenter.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Se rendre dans &lt;code&gt;Firewall&lt;/code&gt; (1), &lt;code&gt;Settings&lt;/code&gt; (2), &lt;code&gt;Advanced&lt;/code&gt; (3), et indiquer le nombre désiré (4).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="opnsense_malicious_03.png" alt="image-20240321093750139" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Valider en cliquant sur &lt;code&gt;Save&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="configuration-des-règles-du-firewall"&gt;&lt;a href="#configuration-des-r%c3%a8gles-du-firewall" class="header-anchor"&gt;&lt;/a&gt;Configuration des règles du firewall
&lt;/h2&gt;&lt;p&gt;Pour bloquer ces IPs malicieuses en entrées comme en sorties du firewall, il est nécessaire de créer 2 nouvelles règles. Pour réaliser ça, les définir dans &lt;strong&gt;Floating&lt;/strong&gt; est intéressant. Ainsi ces règles vont s'appliquer sur toutes les interfaces en priorité.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Se rendre dans &lt;code&gt;Firewall&lt;/code&gt; (1), &lt;code&gt;Rules&lt;/code&gt; (2), &lt;code&gt;Floating&lt;/code&gt; (3). Puis ajouter une nouvelle règle (4).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="opnsense_malicious_04.png" alt="image-20240321094221058" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;4 champs importants :
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Action&lt;/strong&gt; (1) : Par défaut, ce champs sera sur Pass. Le modifier pour &lt;code&gt;Block&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Direction&lt;/strong&gt; (2) : Peu importe la direction, on bloque ! Donc, &lt;code&gt;any&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Source&lt;/strong&gt; (3) : Sélectionner l'alias créé précédemment.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Destination&lt;/strong&gt; (4) : Peu importe la destination ! Donc, &lt;code&gt;any&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="opnsense_malicious_05.png" alt="image-20240321095026838" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Valider en cliquant sur &lt;code&gt;Save&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Créer une seconde règle identique à la première mais en inversant &lt;code&gt;Source&lt;/code&gt; et &lt;code&gt;Destination&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Ne pas oublier de cliquer sur &lt;code&gt;Apply&lt;/code&gt; pour valider l'ajout de ces 2 règles.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="opnsense_malicious_06.png" alt="image-20240321095749005" /&gt;&lt;/p&gt;
&lt;p&gt;Voilà, c'est mis en place !&lt;/p&gt;
&lt;p&gt;Bien évidemment, il est possible d'activer les logs sur ces 2 règles afin d'en mesurer l'impact et/ou pouvoir les remonter dans un SIEM par exemple.&lt;/p&gt;</description></item><item><title>OPNsense : Déploiement d’une instance sur OVHcloud [Partie 2/2]</title><link>https://beta.slash-root.fr/opnsense-deploiement-dune-instance-sur-ovhcloud-partie-2-2/</link><pubDate>Fri, 18 Nov 2022 15:17:42 +0100</pubDate><guid>https://beta.slash-root.fr/opnsense-deploiement-dune-instance-sur-ovhcloud-partie-2-2/</guid><description>&lt;img src="https://beta.slash-root.fr/opnsense-deploiement-dune-instance-sur-ovhcloud-partie-2-2/cover.png" alt="Featured image of post OPNsense : Déploiement d’une instance sur OVHcloud [Partie 2/2]" /&gt;&lt;p&gt;Cet article fait suite à mon précédent &lt;a href="https://beta.slash-root.fr/opnsense-deploiement-dune-instance-sur-ovhcloud-partie-1-2/" title="**OPNsense : Déploiement d&amp;#039;une instance sur OVHcloud [Partie 1/2]**"&gt;&lt;strong&gt;OPNsense : Déploiement d'une instance sur OVHcloud [Partie 1/2]&lt;/strong&gt;&lt;/a&gt; afin d'avoir un routeur opensource exploitable.&lt;/p&gt;
&lt;h2 id="configuration-ip"&gt;&lt;a href="#configuration-ip" class="header-anchor"&gt;&lt;/a&gt;Configuration IP
&lt;/h2&gt;&lt;h3 id="1er-démarrage"&gt;&lt;a href="#1er-d%c3%a9marrage" class="header-anchor"&gt;&lt;/a&gt;1er démarrage
&lt;/h3&gt;&lt;p&gt;Lors du 1er démarrage de l'instance OPNsense, un écran similaire à celui-ci est affiché :&lt;/p&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="22111601.png" alt="image-20221116152115304" /&gt;&lt;/p&gt;
&lt;p&gt;L'adressage IP des différentes interfaces réseaux est à paramétrer.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Attention à la dénomination de LAN et de WAN. A ce stade, l'attribution du LAN et du WAN fait par l'installateur est incorrect. En réalite :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;vtnet0&lt;/code&gt; = Adresse IP publique soit le &lt;code&gt;WAN&lt;/code&gt; pour l'instance&lt;/li&gt;
&lt;li&gt;&lt;code&gt;vtnet1&lt;/code&gt; = Adresse IP du vRack soit le &lt;code&gt;LAN&lt;/code&gt; pour l'instance&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;h3 id="se-connecter"&gt;&lt;a href="#se-connecter" class="header-anchor"&gt;&lt;/a&gt;Se connecter
&lt;/h3&gt;&lt;p&gt;Pour réaliser la configuration IP nécessaire, il faut tout d'abord se connecter dans la console.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Login : root&lt;/li&gt;
&lt;li&gt;Password : opnsense&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Le menu d'administration de la console est maintenant disponible :&lt;/p&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="22111602.png" alt="image-20221116153145030" /&gt;&lt;/p&gt;
&lt;h3 id="assignation-des-interfaces"&gt;&lt;a href="#assignation-des-interfaces" class="header-anchor"&gt;&lt;/a&gt;Assignation des interfaces
&lt;/h3&gt;&lt;p&gt;Comme évoqué précédemment, l'attribution des interfaces faites par l'installeur est erronée. Il faut donc refaire l'assignation des 2 interfaces.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Faire le choix 1 : &lt;strong&gt;Assign interfaces&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Do you want to configure LAGGS now ? : &lt;strong&gt;N&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Do you want to configure VLANs now ? : &lt;strong&gt;N&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Enter the WAN interface name : &lt;strong&gt;vtnet0&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Enter the LAN interface name : &lt;strong&gt;vtnet1&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Enter the Optional interface 1 name : &lt;strong&gt;Press Enter&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Le récapitulatif suivant doit être affiché :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-shell" data-lang="shell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;The interfaces will be assigned as follows :
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;WAN -&amp;gt; vtnet0
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;LAN -&amp;gt; vtnet1
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;Appliquer les modifications
&lt;ul&gt;
&lt;li&gt;Do you want to proceed ? : &lt;strong&gt;Y&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;A présent, les interfaces sont correctement assignées. L'adresse IP publique est récupérée par le DHCP d'OVH sur l'interface WAN.&lt;/p&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="22111603.png" alt="image-20221116161807533" /&gt;&lt;/p&gt;
&lt;h3 id="paramétrage-ip"&gt;&lt;a href="#param%c3%a9trage-ip" class="header-anchor"&gt;&lt;/a&gt;Paramétrage IP
&lt;/h3&gt;&lt;p&gt;Avant d'aller plus loin, il va falloir récupérer quelques informations sur l'instance :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;L'adresse IP publique et sa passerelle : Ces informations sont disponibles dans le tableau de bord de l'instance.&lt;/li&gt;
&lt;li&gt;L'adresse IP sur le vRack : Cette information est disponible dans la liste des instances (colonne IP privée).&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;Attention au masque de sous-réseau :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;IP publique = Masque de sous-réseau en 32 bits&lt;/li&gt;
&lt;li&gt;IP privée vRack = Masque de sous-réseau en 16 bits&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;p&gt;Puis passer au paramétrage des adresses IP sur OPNsense dans la console VNC :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Faire le choix 2 : &lt;strong&gt;Set interface IP address&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-shell" data-lang="shell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Available interfaces :
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt; - LAN &lt;span style="color:#f92672"&gt;(&lt;/span&gt;vtnet1 - static, track6&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;2&lt;/span&gt; - WAN &lt;span style="color:#f92672"&gt;(&lt;/span&gt;vtnet0 - dhcp, dhcp6&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;Paramétrer d'abord l'interface WAN
&lt;ul&gt;
&lt;li&gt;Enter the number of the interface to configure : &lt;strong&gt;2&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Configure IPv4 address WAN interface via DHCP ? : &lt;strong&gt;N&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Enter the new WAN IPv4 address : &lt;strong&gt;Adresse IP publique&lt;/strong&gt; relevée précédement&lt;/li&gt;
&lt;li&gt;Enter the new WAN IPv4 subnet bit count : &lt;strong&gt;32&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Enter the new WAN IPv4 upstream gateway address : &lt;strong&gt;Adresse passerelle / gateway&lt;/strong&gt; relevé précédement&lt;/li&gt;
&lt;li&gt;Do you want to use the gateway as the IPv4 name server, too ? : &lt;strong&gt;N&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Enter the IPv4 name server : &lt;strong&gt;213.186.33.99&lt;/strong&gt; (DNS OVH)&lt;/li&gt;
&lt;li&gt;Configure IPv6 address WAN interface via DHCP6 ? : &lt;strong&gt;N&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Enter the new WAN IPv6 address : &lt;strong&gt;Press Enter&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Do you want to change the web GUI protocol from HTTPS to HTTP ? : &lt;strong&gt;N&lt;/strong&gt; (Un certificat SSL Let's Encrypt sera appliqué plus bas)&lt;/li&gt;
&lt;li&gt;Do you want to generate a new self-signed web GUI certificate ? : &lt;strong&gt;N&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Restore web GUI access defaults ? : &lt;strong&gt;N&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;L'interface WAN est paramétrée.&lt;/p&gt;
&lt;p&gt;Maintenant, passer au paramétrage de l'interface LAN:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Refaire le choix 2 : &lt;strong&gt;Set interface IP address&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Enter the number of the interface to configure : &lt;strong&gt;1&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Configure IPv4 address LAN interface via DHCP ? : &lt;strong&gt;N&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Enter the new LAN IPv4 address : &lt;strong&gt;Adresse IP privée&lt;/strong&gt; du vRack relevée précédement&lt;/li&gt;
&lt;li&gt;Enter the new LAN IPv4 subnet bit count : &lt;strong&gt;16&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Enter the new LAN IPv4 upstream gateway address : &lt;strong&gt;Press Enter&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Configure IPv6 address LAN interface via DHCP6 ? : &lt;strong&gt;N&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Enter the new LAN IPv6 address : &lt;strong&gt;Press Enter&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Do you want to enable the DHCP server on LAN ? : &lt;strong&gt;N&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Do you want to change the web GUI protocol from HTTPS to HTTP ? : &lt;strong&gt;N&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Do you want to generate a new self-signed web GUI certificate ? : &lt;strong&gt;N&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Restore web GUI access defaults ? : &lt;strong&gt;N&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;L'interface LAN est paramétrée.&lt;/p&gt;
&lt;h2 id="interface-web"&gt;&lt;a href="#interface-web" class="header-anchor"&gt;&lt;/a&gt;Interface web
&lt;/h2&gt;&lt;h3 id="1ère-connexion"&gt;&lt;a href="#1%c3%a8re-connexion" class="header-anchor"&gt;&lt;/a&gt;1ère connexion
&lt;/h3&gt;&lt;p&gt;Par défaut, pour se connecter à l'interface web d'administration de la solution OPNsense, il faut s'y connecter à travers l'interface LAN.&lt;/p&gt;
&lt;p&gt;Dans le cas présent, il n'y a pas d'autre machine présente sur ce contexte réseau. Il faut donc s'y connecter à travers l'interface WAN.&lt;/p&gt;
&lt;p&gt;Pour se faire, dans la console VNC de l'instance :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Faire le choix 8 : &lt;strong&gt;Shell&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Désactiver le pare-feu :&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;pfctl -d
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;blockquote&gt;
&lt;p&gt;Attention, à chaque rechargement de la configuration d'OPNsense, le pare-feu sera réactivé. Une règle autorisant l'administration à distance par le WAN sera définie plus bas.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Il est maintenant possible de se connecter à l'interface web d'administration d'OPNsense à travers l'interface WAN.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Se rendre sur l'adresse &lt;a href="https://IP_PUBLIC"&gt;https://IP_PUBLIC&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Accepter le certificat auto-signé&lt;/li&gt;
&lt;li&gt;Renseigner les credentials
&lt;ul&gt;
&lt;li&gt;Username : &lt;strong&gt;root&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Password : &lt;strong&gt;opnsense&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Un assistant de configuration est proposé lors de la 1ère connexion, celui-ci peut être by-passé en cliquant sur le logo OPNsense en haut à gauche.&lt;/p&gt;
&lt;h3 id="filtrage"&gt;&lt;a href="#filtrage" class="header-anchor"&gt;&lt;/a&gt;Filtrage
&lt;/h3&gt;&lt;p&gt;Pour accéder à la page d'administration d'OPNsense, le pare-feu a été désactivé pour effectuer la 1ère connexion.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Rappel : A chaque rechargement de configuration, le pare-feu sera réactivé automatiquement.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Idéalement, il faut définir une seule adresse IP (ou plusieurs) qui sera autorisée à y accéder.&lt;/p&gt;
&lt;p&gt;Tout d'abord, créer un alias afin de mieux identifier l'hôte qui sera autorisé à se connecter à l'interface web d'administration.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Se rendre dans &lt;strong&gt;Firewall&lt;/strong&gt; (1), &lt;strong&gt;Aliases&lt;/strong&gt; (2)&lt;/li&gt;
&lt;li&gt;Ajouter un nouvel alias (3)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="22111604.png" alt="image-20221117094409367" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Voici un exemple d'alias pour une adresse IP donnée. Bien penser à valider le &lt;code&gt;Content&lt;/code&gt; en appuyant sur &lt;strong&gt;Enter&lt;/strong&gt;, puis &lt;strong&gt;Save&lt;/strong&gt; en bas à droite :&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="22111605.png" alt="image-20221117095214277" /&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Ne pas valider tout de suite les modifications avec le bouton &lt;strong&gt;Apply&lt;/strong&gt; figurant en bas sur la page des &lt;strong&gt;Aliases&lt;/strong&gt;. Sinon, le pare-feu se réactivera et la connexion sera perdue. Si cela se produit, revenir dans la console VNC de l'instance et refaire la commande &lt;code&gt;pfcl -d&lt;/code&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Ensuite, ajouter une règle sur l'interface WAN du pare-feu.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Se rendre dans &lt;strong&gt;Firewall&lt;/strong&gt; (1), &lt;strong&gt;Rules&lt;/strong&gt; (2), &lt;strong&gt;WAN&lt;/strong&gt; (3)&lt;/li&gt;
&lt;li&gt;Ajouter une nouvelle règle (4)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="22111606.png" alt="image-20221117095952062" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;La partie &lt;strong&gt;Source&lt;/strong&gt; de la règle :&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="22111607.png" alt="image-20221117100419056" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;La partie &lt;strong&gt;Destination&lt;/strong&gt; de la règle :&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="22111608.png" alt="image-20221117100630410" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Enregistrer avec le bouton &lt;strong&gt;Save&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Valider toutes les modifications de configuration en cliquant sur &lt;strong&gt;Apply changes&lt;/strong&gt; en haut à droite de la page&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;L'alias créé ainsi que la règle ajoutée dans l'interface WAN du pare-feu vont être appliqué. Le pare-feu sera également réactivé automatiquement.&lt;/p&gt;
&lt;p&gt;Pour être sûr et certain que le pare-feu soit bien actif :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Se rendre dans la console VNC de l'instance et exécuter la commande :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;pfctl -e
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Le shell doit renvoyer :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-shell" data-lang="shell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;pfctl: pf already enabled
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="mot-de-passe-root"&gt;&lt;a href="#mot-de-passe-root" class="header-anchor"&gt;&lt;/a&gt;Mot de passe root
&lt;/h3&gt;&lt;p&gt;Maintenant que l'accès externe à l'interface web d'administration est filtré, il est important de changer le mot de passe &lt;code&gt;root&lt;/code&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Se rendre dans &lt;strong&gt;Lobby&lt;/strong&gt; (1), &lt;strong&gt;Password&lt;/strong&gt; (2)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="22111609.png" alt="image-20221117102407840" /&gt;&lt;/p&gt;
&lt;p&gt;La modification de ce mot passe entraine également la modification du mot de passe dans la console VNC et/ou par SSH si cet accès est activé.&lt;/p&gt;
&lt;h3 id="hostname-timezone"&gt;&lt;a href="#hostname-timezone" class="header-anchor"&gt;&lt;/a&gt;Hostname, Timezone&amp;hellip;
&lt;/h3&gt;&lt;p&gt;Il peut être intéressant de modifier le nom d'hôte, le domaine, ou bien la timezone d'OPNsense.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Se rendre dans &lt;strong&gt;System&lt;/strong&gt; (1), &lt;strong&gt;Settings&lt;/strong&gt; (2), &lt;strong&gt;General&lt;/strong&gt; (3)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="22111610.png" alt="image-20221117110546934" /&gt;&lt;/p&gt;
&lt;h2 id="sécurité"&gt;&lt;a href="#s%c3%a9curit%c3%a9" class="header-anchor"&gt;&lt;/a&gt;Sécurité
&lt;/h2&gt;&lt;p&gt;Sujet très vaste !&lt;/p&gt;
&lt;p&gt;Je vais m'attarder sur 2 points principaux :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;La mise à jour d'OPNsense&lt;/li&gt;
&lt;li&gt;La mise en place d'un certificat SSL avec Let's Encrypt&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="mise-à-jour"&gt;&lt;a href="#mise-%c3%a0-jour" class="header-anchor"&gt;&lt;/a&gt;Mise à jour
&lt;/h3&gt;&lt;p&gt;Il est important de mettre régulièrement à jour la solution.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Se rendre dans &lt;strong&gt;System&lt;/strong&gt; (1), &lt;strong&gt;Firmware&lt;/strong&gt; (2), &lt;strong&gt;Status&lt;/strong&gt; (3)&lt;/li&gt;
&lt;li&gt;Puis &lt;strong&gt;Check for updates&lt;/strong&gt; (4)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="22111611.png" alt="image-20221117111519117" /&gt;&lt;/p&gt;
&lt;p&gt;Si des mises à jour sont disponibles, la liste des packages concernés sera affichée dans l'onglet &lt;strong&gt;Updates&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;En bas de cette page, un bouton &lt;strong&gt;Update&lt;/strong&gt; sera disponible. Il sera également indiqué si un redémarrage d'OPNsense est requis.&lt;/p&gt;
&lt;h3 id="certificat-ssl-lets-encrypt"&gt;&lt;a href="#certificat-ssl-lets-encrypt" class="header-anchor"&gt;&lt;/a&gt;Certificat SSL Let&amp;rsquo;s Encrypt
&lt;/h3&gt;&lt;h4 id="installation-du-client"&gt;&lt;a href="#installation-du-client" class="header-anchor"&gt;&lt;/a&gt;Installation du client
&lt;/h4&gt;&lt;p&gt;La 1ère étape à réaliser est l'installation du client &lt;code&gt;acme&lt;/code&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Se rendre dans &lt;strong&gt;System&lt;/strong&gt; (1), &lt;strong&gt;Firmware&lt;/strong&gt; (2), &lt;strong&gt;Plugins&lt;/strong&gt; (3)&lt;/li&gt;
&lt;li&gt;Installer le client acme (4)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="22111612.png" alt="image-20221117113041918" /&gt;&lt;/p&gt;
&lt;h4 id="activation-du-plugin"&gt;&lt;a href="#activation-du-plugin" class="header-anchor"&gt;&lt;/a&gt;Activation du plugin
&lt;/h4&gt;&lt;p&gt;Une fois ce plugin installé, forcer un rafraichissement de l'interface web (CTRL+SHiFT+R) pour avoir le service &lt;strong&gt;ACME Client&lt;/strong&gt; de disponible.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Se rendre dans &lt;strong&gt;Services&lt;/strong&gt; (1), &lt;strong&gt;ACME Client&lt;/strong&gt; (2), &lt;strong&gt;Settings&lt;/strong&gt; (3)&lt;/li&gt;
&lt;li&gt;Activer le plugin (4)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="22111613.png" alt="image-20221117114033923" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Valider avec le bouton &lt;strong&gt;Apply&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Une tâche cron est générée afin de renouveler automatiquement le certificat. Celle-ci est définie dans l'onglet &lt;strong&gt;Update Schedule&lt;/strong&gt;.&lt;/p&gt;
&lt;h4 id="création-du-compte-lets-encrypt"&gt;&lt;a href="#cr%c3%a9ation-du-compte-lets-encrypt" class="header-anchor"&gt;&lt;/a&gt;Création du compte Let&amp;rsquo;s Encrypt
&lt;/h4&gt;&lt;p&gt;Ensuite, un compte doit être créé et enregistré pour la génération du certificat chez Let's Encrypt.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Se rendre dans &lt;strong&gt;Accounts&lt;/strong&gt; (1)&lt;/li&gt;
&lt;li&gt;Créer un compte (2)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="22111614.png" alt="image-20221117114800382" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Compléter les champs requis&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="22111615.png" alt="image-20221117115032672" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Valider avec le bouton &lt;strong&gt;Save&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Enregistrer le compte&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="22111616.png" alt="image-20221117115229266" /&gt;&lt;/p&gt;
&lt;p&gt;Le status du compte passe en &lt;strong&gt;OK (registred)&lt;/strong&gt;.&lt;/p&gt;
&lt;h4 id="enregistrement-dns"&gt;&lt;a href="#enregistrement-dns" class="header-anchor"&gt;&lt;/a&gt;Enregistrement DNS
&lt;/h4&gt;&lt;p&gt;Avant de passer à la suite, il est impératif de créer un enregistrement de type A dans la zone DNS publique adéquate pointant vers l'adresse IP publique d'OPNsense.&lt;/p&gt;
&lt;p&gt;Par exemple :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-shell" data-lang="shell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;opnsense-demo.example.com. IN A xxx.xxx.xxx.237
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;blockquote&gt;
&lt;p&gt;xxx.xxx.xxx.237 = IP publique de l'interface WAN d'OPNsense&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Bien vérifier que cet enregistrement a été répercuté sur les serveurs DNS de Google (Let's Encrypt s'appuie dessus).&lt;/p&gt;
&lt;p&gt;Dans votre terminal GNU/Linux :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;dig opnsense-demo.example.com @8.8.8.8
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Il est également est possible de vérifier l'enregistrement à cette adresse : &lt;a href="https://dns.google"&gt;https://dns.google&lt;/a&gt;&lt;/p&gt;
&lt;h4 id="paramétrage-du-challenge"&gt;&lt;a href="#param%c3%a9trage-du-challenge" class="header-anchor"&gt;&lt;/a&gt;Paramétrage du challenge
&lt;/h4&gt;&lt;p&gt;Une fois cet enregistrement fait et vérifié, paramétrer un type de challenge :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Se rendre dans &lt;strong&gt;Challenge Types&lt;/strong&gt; (1)&lt;/li&gt;
&lt;li&gt;Créer un nouveau type de challenge (2)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="22111617.png" alt="image-20221117120932240" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Choisir un challenge de type &lt;strong&gt;HTTP-01&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="22111618.png" alt="image-20221117131431018" /&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Dans le champ &lt;strong&gt;IP Addresses&lt;/strong&gt; bien valider l'adresse IP publique de l'interface WAN en appuyant sur &lt;strong&gt;Enter&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;Valider avec le bouton &lt;strong&gt;Save&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="automatisation"&gt;&lt;a href="#automatisation" class="header-anchor"&gt;&lt;/a&gt;Automatisation
&lt;/h4&gt;&lt;p&gt;Avant de passer à la génération du certificat, il est recommandé d'ajouter une tâche d'automatisation. Celle-ci sera effectuée à chaque fois que le certificat sera renouvelé.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Se rendre dans &lt;strong&gt;Automations&lt;/strong&gt; (1)&lt;/li&gt;
&lt;li&gt;Créer une tâche d'automatisation (2)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="22111620.png" alt="image-20221117132141537" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Sélectionner la tâche de redémarrage de la Web UI d'OPNsense&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="22111621.png" alt="image-20221117132445945" /&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Cette partie d'automatisation est optionelle mais recommandée.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h4 id="génération-du-certificat"&gt;&lt;a href="#g%c3%a9n%c3%a9ration-du-certificat" class="header-anchor"&gt;&lt;/a&gt;Génération du certificat
&lt;/h4&gt;&lt;p&gt;Maintenant, un certificat peut être généré :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Se rendre dans &lt;strong&gt;Certificates&lt;/strong&gt; (1)&lt;/li&gt;
&lt;li&gt;Créer un nouveau certificat (2)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="22111619.png" alt="image-20221117131804782" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Dans le champ &lt;strong&gt;Common Name&lt;/strong&gt;, bien renseigner l'URL d'accès qui permettra d'accéder à l'interface web d'administration d'OPNsense en correspondance avec l'enregistrement de type A faites dans la zone DNS au préalable.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="22111622.png" alt="image-20221117133011468" /&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Bien spécifier la tâche d'automatisation dans le champ &lt;strong&gt;Automations&lt;/strong&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;Valider avec le bouton &lt;strong&gt;Save&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Générer le certificat avec le bouton &lt;strong&gt;Issue/Renew All Certificates&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="vérification"&gt;&lt;a href="#v%c3%a9rification" class="header-anchor"&gt;&lt;/a&gt;Vérification
&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;Vérifier l'ajout de l'autorité de certification :
&lt;ul&gt;
&lt;li&gt;Se rendre dans &lt;strong&gt;System&lt;/strong&gt; (1), &lt;strong&gt;Trust&lt;/strong&gt; (2), &lt;strong&gt;Authorities&lt;/strong&gt; (3)&lt;/li&gt;
&lt;li&gt;L'authorité de certification Let's Encrypt doit être présente&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="22111623.png" alt="image-20221117134012138" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Vérifier la présence du certificat préalablement généré :
&lt;ul&gt;
&lt;li&gt;Se rendre dans &lt;strong&gt;Certificates&lt;/strong&gt; (1)&lt;/li&gt;
&lt;li&gt;Le certificat préalablement généré doit être présent&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="22111624.png" alt="image-20221117134232914" /&gt;&lt;/p&gt;
&lt;h4 id="application-du-certificat"&gt;&lt;a href="#application-du-certificat" class="header-anchor"&gt;&lt;/a&gt;Application du certificat
&lt;/h4&gt;&lt;p&gt;A ce stade, ce nouveau certificat Let's Encrypt peut être appliqué pour la connexion à l'interface d'administration d'OPNsense (en lieu et place du certificat auto-signé).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Se rendre dans &lt;strong&gt;System&lt;/strong&gt; (1), &lt;strong&gt;Settings&lt;/strong&gt; (2), &lt;strong&gt;Administration&lt;/strong&gt; (3)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="22111625.png" alt="image-20221117134906644" /&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Je recommande de modifier le port d'administration HTTPS et d'adapter la règle de filtrage (vu dans le chapitre &lt;strong&gt;Interface web / Filtrage&lt;/strong&gt; de cet article).&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;Valider avec le bouton &lt;strong&gt;Save&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Et voilà !&lt;/p&gt;
&lt;p&gt;Il est désormais possible d'accéder de façon sécurisée à l'admimistration d'un OPNsense hébergé chez OVHcloud avec un certificat SSL reconnu.&lt;/p&gt;
&lt;p&gt;En suivant l'exemple donné ici, l'accès se fera sur l'URL : &lt;a href="https://opnsense-demo.example.com"&gt;https://opnsense-demo.example.com&lt;/a&gt; (Adresse fictive pour l'article !).&lt;/p&gt;</description></item><item><title>OPNsense : Déploiement d’une instance sur OVHcloud [Partie 1/2]</title><link>https://beta.slash-root.fr/opnsense-deploiement-dune-instance-sur-ovhcloud-partie-1-2/</link><pubDate>Fri, 23 Sep 2022 08:00:46 +0200</pubDate><guid>https://beta.slash-root.fr/opnsense-deploiement-dune-instance-sur-ovhcloud-partie-1-2/</guid><description>&lt;img src="https://beta.slash-root.fr/opnsense-deploiement-dune-instance-sur-ovhcloud-partie-1-2/cover.png" alt="Featured image of post OPNsense : Déploiement d’une instance sur OVHcloud [Partie 1/2]" /&gt;&lt;p&gt;Dans cet article je vais décrire comment installer une instance sous OPNsense au sein d'OVHcloud.&lt;/p&gt;
&lt;p&gt;Par défaut, il n'est pas possible de déployer une image OPNsense lors de la commande d'une instance sur OVHcloud.&lt;/p&gt;
&lt;p&gt;En effet les distributions disponibles sont :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;AlmaLinux&lt;/li&gt;
&lt;li&gt;RockyLinux&lt;/li&gt;
&lt;li&gt;CentOS&lt;/li&gt;
&lt;li&gt;Debian&lt;/li&gt;
&lt;li&gt;Fedora&lt;/li&gt;
&lt;li&gt;Ubuntu&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Pourtant, on peut très bien déployer un système complet OPNsense (FreeBSD) nativement sur une instance OVHcloud.&lt;/p&gt;
&lt;p&gt;Un vRack sera déployé pour la partie LAN d'OPNsense.&lt;/p&gt;
&lt;h2 id="préparation-de-linstance-ovhcloud"&gt;&lt;a href="#pr%c3%a9paration-de-linstance-ovhcloud" class="header-anchor"&gt;&lt;/a&gt;Préparation de l&amp;rsquo;instance OVHcloud
&lt;/h2&gt;&lt;h3 id="contexte"&gt;&lt;a href="#contexte" class="header-anchor"&gt;&lt;/a&gt;Contexte
&lt;/h3&gt;&lt;p&gt;Voici un schéma simplifié du contexte de déploiement de l'OPNsense :&lt;/p&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="01-1.png" alt="infra" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;L'instance qui hébergera OPNsense utilisera l'offre Discovery à 4.99€ HT/mois avec 1 vCPU, 2 Go de RAM, et 25GB de disque SSD.&lt;/li&gt;
&lt;li&gt;Un vRack sera déployé pour relier d'autres instances futures derrière l'OPNsense. Par exemple pour héberger un cluster swarm.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="création-dun-vrack"&gt;&lt;a href="#cr%c3%a9ation-dun-vrack" class="header-anchor"&gt;&lt;/a&gt;Création d&amp;rsquo;un vRack
&lt;/h3&gt;&lt;p&gt;En tout premier, il faut créer le vRack auquel sera rataché la future instance OPNsense. Cette opération se réalise dans le panel d'administration (OVH Manager) de vos services &lt;code&gt;Public Cloud&lt;/code&gt; chez OVH.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Dans la catégorie &lt;code&gt;Network&lt;/code&gt;, se rendre dans la partie &lt;code&gt;Private Network&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Créer un réseau privé.&lt;/li&gt;
&lt;li&gt;Définir un ID de VLAN (Recommandé)&lt;/li&gt;
&lt;li&gt;Choisir le mode de distribution des adresses (Statique recommandé).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="02-1.png" alt="image-20220916163541456" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Dans la partie &lt;code&gt;Localisation&lt;/code&gt;, il est possible de définir à quelle région sera rattaché ce vRack. Pour cet article tout ce passera à Gravelines.&lt;/li&gt;
&lt;li&gt;Définir un nom pour ce vRack (ClusterSwarm dans cet article).&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;Cela peut prendre un peu de temps à être déployé la 1ère fois. Patience...&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Une fois déployé et disponible, ce vRack apparait dans la liste des réseaux privés disponible avec la plage d'adresse attribuée.&lt;/p&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="03-1.png" alt="image-20220916164200412" /&gt;&lt;/p&gt;
&lt;h3 id="création-de-linstance"&gt;&lt;a href="#cr%c3%a9ation-de-linstance" class="header-anchor"&gt;&lt;/a&gt;Création de l&amp;rsquo;instance
&lt;/h3&gt;&lt;p&gt;Maintenant que le vRack est déployé, une nouvelle instance peut être créée.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Dans la partie &lt;code&gt;Instances&lt;/code&gt;, créer une nouvelle instance.&lt;/li&gt;
&lt;li&gt;Choisir un modèle (Instance &lt;code&gt;D2-2&lt;/code&gt; amplement suffisante).&lt;/li&gt;
&lt;li&gt;Choisir une localistation (&lt;code&gt;Gravelines&lt;/code&gt; par exemple).&lt;/li&gt;
&lt;li&gt;Sélectionner une image. Ici, je suis parti sur une Debian 11 mais peut importe le choix car l'installation d'OPNsense se fera à travers une image rescue.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="04-1.png" alt="image-20220920105548183" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ajouter sa clef SSH publique de type RSA ou ECDSA (Les clefs de type ED25519 ne sont pas pris en charge).&lt;/li&gt;
&lt;li&gt;Définir un nom pour cette instance (hostname).&lt;/li&gt;
&lt;li&gt;Sélectionner le réseau privé à attacher à cette instance (Le vRack préalablement créé doit être disponible).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="05.png" alt="image-20220920110707870" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Sélectionner une période facturation (Mensuel ou horaire).&lt;/li&gt;
&lt;li&gt;Créer l'instance.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Cette instance est maintenant disponible. Son adresse IP publique et son IP privée y sont indiquées.&lt;/p&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="06.png" alt="image-20220920202939791" /&gt;&lt;/p&gt;
&lt;h2 id="installation-opnsense"&gt;&lt;a href="#installation-opnsense" class="header-anchor"&gt;&lt;/a&gt;Installation OPNsense
&lt;/h2&gt;&lt;h3 id="démarrage-en-mode-rescue"&gt;&lt;a href="#d%c3%a9marrage-en-mode-rescue" class="header-anchor"&gt;&lt;/a&gt;Démarrage en mode rescue
&lt;/h3&gt;&lt;p&gt;Pour pouvoir installer OPNsense, il est nécessaire de démarrer en mode rescue l'instance préalablement créée.&lt;/p&gt;
&lt;p&gt;En mode rescue, le disque principal sera disponible mais non monté. Le système rescue sera chargé en RAM (soit 2 Go avec une instance D2-2).&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;L'ISO d'OPNsense fait 1,3 Go&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Il est donc impératif de sélectionner une image rescue qui prend très d'espace afin d'y loger également l'iso d'OPNsense.&lt;/p&gt;
&lt;p&gt;De celle que j'ai testé, c'est la &lt;code&gt;Debian 9&lt;/code&gt; qui est la plus approprié pour la suite des manipulations.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Dans les détails de l'instance, redémarrer en mode rescue.&lt;/li&gt;
&lt;li&gt;Sélectionner l'image &lt;code&gt;Debian 9&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="07.png" alt="image-20220920114318303" /&gt;&lt;/p&gt;
&lt;p&gt;Une fois le redémarrage effectué en mode rescue en Debian 9, il est possible de s'y connecter avec la clef SSH qui a été définie lors de la création de l'instance.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Se connecter en SSH à l'instance :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ssh -i ~/.ssh/ma_clef_privee debian@&lt;span style="color:#f92672"&gt;[&lt;/span&gt;IP_PUBLIC_INSTANCE&lt;span style="color:#f92672"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;blockquote&gt;
&lt;ul&gt;
&lt;li&gt;Adapter selon l'emplacement et le nom de la privée.&lt;/li&gt;
&lt;li&gt;[IP_PUBLIC_INSTANCE] = IP publique de l'instance OVHcloud.&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;h3 id="récupération-de-liso-dopnsense"&gt;&lt;a href="#r%c3%a9cup%c3%a9ration-de-liso-dopnsense" class="header-anchor"&gt;&lt;/a&gt;Récupération de l&amp;rsquo;ISO d&amp;rsquo;OPNsense
&lt;/h3&gt;&lt;p&gt;Une fois connecté en SSH à l'instance en mode rescue Debian 9, il est important de controler qu'il y aura assez d'espace disque afin de récupérer et décompresser l'ISO d'OPNsense.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Vérifier l'espace disque disponible (Le rescue mode est chargé en RAM) :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;df -h | grep -v ^tmpfs
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;L'espace restant disponible est de 1,9G. Cela sera suffisant pour récupéré l'ISO compressé et la décompresser :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-shell" data-lang="shell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Filesystem Size Used Avail Use% Mounted on
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;udev 968M &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt; 968M 0% /dev
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/dev/sda1 3.0G 954M 1.9G 34% /
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;Télécharger la dernière ISO disponible d'OPNsense :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;wget -P /tmp https://mirror.vraphim.com/opnsense/releases/22.7/OPNsense-22.7-OpenSSL-dvd-amd64.iso.bz2
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;Installer &lt;code&gt;bzip2&lt;/code&gt; (Si celui-ci n'est pas disponible) :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sudo apt update
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sudo apt install bzip2
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;Extraire et supprimer l'archive :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cd /tmp
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;bzip2 -dk OPNsense-22.7-OpenSSL-dvd-amd64.iso.bz2
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;rm OPNsense-22.7-OpenSSL-dvd-amd64.iso.bz2
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="mise-en-place-qemuvnc"&gt;&lt;a href="#mise-en-place-qemuvnc" class="header-anchor"&gt;&lt;/a&gt;Mise en place QEMU/VNC
&lt;/h3&gt;&lt;p&gt;Afin de pouvoir déclencher l'installation en mode console d'OPNsense à partir de l'ISO récupérée, VNC sera utilisé à travers QEMU. &lt;/p&gt;
&lt;p&gt;Afin de pouvoir prendre réaliser cela, il est nécessaire de relancer la connexion SSH à l'instance à l'aide d'un tunnel SSH afin de mapper le port distant 5900 vers un port local.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Se reconnecter à la session SSH de l'instance en rescue :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ssh -i ~/.ssh/ma_clef_privee debian@&lt;span style="color:#f92672"&gt;[&lt;/span&gt;IP_PUBLIC_INSTANCE&lt;span style="color:#f92672"&gt;]&lt;/span&gt; -L 5900:localhost:5900
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;Télécharger le package :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;wget -qO- /tmp /vkvm.tar.gz | tar xvz -C /tmp
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;Démarrer QEMU/VNC :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sudo /tmp/qemu-system-x86_64 -net nic -net user,hostfwd&lt;span style="color:#f92672"&gt;=&lt;/span&gt;tcp::80-:80,hostfwd&lt;span style="color:#f92672"&gt;=&lt;/span&gt;tcp::443-:443 -m 1024M -localtime -enable-kvm -hda /dev/sda -hdb /dev/sdb -vnc 127.0.0.1:0 -cdrom /tmp/OPNsense-22.7-OpenSSL-dvd-amd64.iso -boot d
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;blockquote&gt;
&lt;p&gt;En mode rescue, &lt;code&gt;/dev/sda&lt;/code&gt; correspond à la racine (volume monté en RAM), et &lt;code&gt;/dev/sdb&lt;/code&gt; dorrespond au disque principal de votre instance (disponible mais non monté).&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id="démarrage-de-linstallation-dopnsense"&gt;&lt;a href="#d%c3%a9marrage-de-linstallation-dopnsense" class="header-anchor"&gt;&lt;/a&gt;Démarrage de l&amp;rsquo;installation d&amp;rsquo;OPNsense
&lt;/h3&gt;&lt;p&gt;A partir de maintenant, il est maintenant possible de se connecter en VNC sur &lt;code&gt;127.0.0.1:5900&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;2 possibilités sont offertes lors du démarrage :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Boot en mode live : Se connecter en &lt;code&gt;root&lt;/code&gt; avec le mot de passe &lt;code&gt;opnsense&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Lancement de l'installation : Se connecter en &lt;code&gt;installer&lt;/code&gt; avec le mot de passe &lt;code&gt;opnsense&lt;/code&gt; .&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;Le boot en mode live ne présente aucun intérêt dans ce cas de figure. Le compte &lt;code&gt;installer&lt;/code&gt; est donc à utiliser pour déclencher l'installation de la solution.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;Sélectionner le bon disque pour l'installation (ada1 25GB car instance d2-2) :&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="08.png" alt="image-20220921164909736" /&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;ul&gt;
&lt;li&gt;vtnet0 = Interface publique&lt;/li&gt;
&lt;li&gt;vtnet1 = IP vRack&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;p&gt;Une fois l'installation terminée, dans les détails de l'instance sur le manager OVH, sortir du mode rescue :&lt;/p&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="09.png" alt="image-20220921171239516" /&gt;&lt;/p&gt;
&lt;p&gt;Après quelques instants votre instance démarrera normalement sur son disque principal avec le chargement d'OPNsense.&lt;/p&gt;
&lt;h3 id="configuration-opnsense"&gt;&lt;a href="#configuration-opnsense" class="header-anchor"&gt;&lt;/a&gt;Configuration OPNsense
&lt;/h3&gt;&lt;p&gt;Pour procéder à la 1ère configuration de la solution OPNsense :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Se rendre dans les détails de l'instance.&lt;/li&gt;
&lt;li&gt;Puis console VNC dans le 2nd onglet.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="10-1.png" alt="image-20220921172853667" /&gt;&lt;/p&gt;
&lt;p&gt;Dans un prochain article, je traiterai de la configuration des interfaces avec une IP FailOver, la mise en place d'un certificat SSL avec Let's Encrypt.&lt;/p&gt;</description></item></channel></rss>