Surveillez que la connexion Internet pfSense fonctionne correctement
Lorsque nous avons une connexion Internet avec un système d’exploitation destiné aux environnements professionnels comme pfSense, il est totalement nécessaire de vérifier en externe si la connexion Internet fonctionne correctement, pour écarter les problèmes de configuration dans les serveurs VPN ou dans les tunnels VPN dont nous disposons. configuré. Grâce à UptimeRobot, nous pourrons vérifier à distance si la connexion Internet fonctionne bien, mais nous devrons d’abord effectuer des configurations très spécifiques dans pfSense afin que le système d’exploitation ne détecte pas de fausses attaques.
Qu’est-ce qu’UptimeRobot et comment surveillera-t-il la connexion ?
UptimeRobot est un service Web entièrement gratuit qui nous permettra de surveiller la connexion Internet à distance, ce service dispose de dizaines de serveurs répartis dans le monde entier, qui essaieront de se connecter avec notre équipe via TCP, UDP et même ICMP pour vérifier que l’Internet la connexion fonctionne correctement. La version gratuite nous permet de vérifier jusqu’à 50 hôtes à intervalles de 5 minutes, assez pour un environnement domestique et pour les petites et moyennes entreprises, bien qu’il soit possible que dans votre entreprise vous ayez besoin de savoir plus rapidement si la connexion Internet tombe . Si vous achetez la version premium, vous pouvez configurer des intervalles d’une minute pour vérifier si la connexion Internet fonctionne bien, et vous aurez plus d’hôtes à surveiller, tous centralisés dans le même compte.
Dans RedesZone, nous avons déjà discuté en profondeur de ce service, cependant, si nous utilisons un système d’exploitation tel que pfSense, qui est très configurable et capable de détecter les attaques par déni de service et les attaques par force brute, il est possible qu’il détecte ces connexions. comme des attaques possibles, et bloquent directement la communication depuis l’IP source. La même chose se produit si nous avons un IDS / IPS configuré dans pfSense lui-même, il peut le détecter comme une menace. Si le système d’exploitation bloque l’adresse IP source et ne «répond» pas à UptimeRobot, alors il détectera que la connexion Internet est en panne, alors qu’elle l’est vraiment, nous donnant une fausse alerte.
Une caractéristique que nous avons vraiment appréciée à propos d’UptimeRobot est qu’il nous permettra de recevoir des notifications par e-mail, Telegram, Twitter, Slack, Microsoft Teams et plus encore, nous aurons donc toujours une notification en cas de problème. De plus, nous pouvons toujours installer l’application officielle UptimeRobot pour Android et iOS :
Une fois que nous savons tout ce qu’UptimeRobot peut faire pour nous, voyons comment configurer correctement pfSense pour éviter les fausses alertes d’attaque.
Configurez pfSense pour que UptimeRobot ne soit pas bloqué
Bien qu’UptimeRobot dispose de plusieurs serveurs répartis dans le monde afin de surveiller les différents hôtes et d’éviter les faux positifs, dans de nombreux cas, cela ne suffit pas, surtout si nous avons très bien configuré notre pare-feu pfSense. Tous les contrôles effectués par UptimeRobot sont effectués depuis Dallas-États-Unis, cependant, lorsqu’une chute est détectée, le reste des nœuds dans le monde vérifiera si la connexion a vraiment été interrompue ou non. Cependant, dans RedesZone, nous avons vérifié que cela ne suffisait pas si vous utilisez pfSense, car il nous dit en permanence que la connexion Internet fonctionne correctement et qu’elle est tombée, la vérification oscille entre les deux états.
Dans notre cas, la vérification du bon fonctionnement de la connexion Internet s’effectue par quelques « vérifications » sur le serveur SSH du système d’exploitation pfSense, que nous devons activer. Nous n’aurons plus qu’à activer le serveur SSH et configurer un port TCP d’écoute spécifique, par exemple le port 2222 pour SSH. Ce port sera accessible via Internet à partir de n’importe quelle source, dans le but de gérer le système d’exploitation de n’importe où.
Pour résoudre le problème des faux positifs, nous devons entrer dans l’interface Web de configuration du système d’exploitation pfSense :
On va dans la section SSH et on s’assure qu’il est activé, et qu’il écoute sur le port 2222, ou tout autre port.
Dans la section «Protection de la connexion», nous devons ajouter chacun des réseaux sources et des adresses IP d’UptimeRobot. Dans cette « pass list », nous aurons la liste de toutes les adresses IP sources pouvant effectuer des « vérifications » par rapport au serveur Web HTTPS ou au serveur SSH configuré, en contournant les restrictions de la « protection de connexion » que nous avons configurée.
Sur le site officiel d’UptimeRobot, nous avons la liste de toutes les adresses IP sources qu’ils utilisent, nous devrons simplement entrer plage par plage ou adresse IP par adresse IP. Nous avons également les adresses IPv6 qu’ils utilisent, juste au cas où, dans votre cas, vous auriez IPv6 pour accéder à Internet. Enfin, ils nous fournissent également un fichier txt avec la liste de toutes les adresses IP pour faciliter la configuration des firewalls.
Lorsque nous activons le serveur SSH dans pfSense, si nous voulons qu’ils accèdent depuis Internet avec n’importe quelle adresse IP source, nous devrons créer une règle dans la section » Firewall / Rules «, dans cette règle, nous devons mettre:
- Action : Passer
- Interface : WAN
- Famille d’adresses : IPv4 et/ou IPv6.
- Protocole : TCP
- Source : n’importe lequel
- Destination : adresse WAN
- Plage de ports de destination : le port du serveur SSH où il écoute, dans notre cas, 2222.
Nous vous recommandons également de consigner tous les paquets que le pare-feu reçoit, en activant l’option «Consigner les paquets gérés par cette règle», enfin nous lui donnerons une description et cliquerons sur enregistrer.
Avant de terminer, un détail important est que vous mettez la règle pfSense dans la section WAN dans le bon ordre, car si nous avons une règle générale de refus au-dessus de cette règle spécifique, vous bloquerez le trafic et cela ne fonctionnera pas de l’extérieur .
Si vous voyez les journaux du système d’exploitation, vous verrez l’adresse IP source utilisée par UptimeRobot, ainsi que l’adresse IP et le port de destination (nous). De là, vous pouvez vérifier que toutes les 5 minutes, il vérifie si la connexion Internet fonctionne correctement, ou plutôt, si le serveur pfSense SSH est accessible via Internet.
Une fois que nous aurons vu comment configurer correctement pfSense, nous nous souviendrons comment créer la règle dans UptimeRobot pour surveiller notre pfSense.
Créer la règle de surveillance dans UptimeRobot
Nous nous connectons à UptimeRobot avec nos identifiants, si vous n’avez jamais utilisé cet outil, vous devrez vous inscrire pour sa version «Gratuit». Dans le menu principal, nous pouvons voir dans la section de gauche toutes les règles de surveillance créées, cliquez sur » Ajouter un nouveau moniteur » pour créer une nouvelle règle.
Le type de moniteur que vous devez utiliser est «Port», on lui donne un nom descriptif, on met «Port: Custom Port» pour mettre le port 2222 du serveur SSH que l’on vient de configurer, et l’intervalle de monitoring. Dans la version gratuite d’UptimeRobot cela nous permettra un intervalle minimum de 5 minutes, logiquement, plus il y a de vérifications effectuées avant qu’il nous avertisse qu’il y a eu un problème avec la connexion Internet, mais cela n’est disponible que dans la version payante.
Vous ne devez pas oublier de sélectionner les alertes à envoyer, nous pouvons recevoir une alerte par e-mail, Telegram ou un autre service, à condition que vous l’ayez enregistré au préalable.
Une fois que nous avons terminé, nous cliquons sur « Créer un moniteur » et nous aurons UptimeRobot qui fonctionne. Maintenant, vous devez vérifier dans pfSense que vous avez bien reçu le paquet, en vérifiant les journaux du pare-feu dans la section WAN, vous pouvez filtrer les journaux en mettant le port de destination 2222 qui est le port SSH, vous pouvez également vérifier que l’adresse IP source est à l’intérieur de la plage d’adresses IP que nous avons indiquée précédemment.
Puis-je limiter les connexions SSH à UptimeRobot uniquement ?
Si vous souhaitez activer le serveur SSH uniquement pour les adresses UptimeRobot, afin de vérifier si la connexion Internet fonctionne bien, vous pouvez limiter les connexions SSH via la règle du pare-feu. Si on va dans » Firewall / Aliases » on peut créer un alias avec toutes les adresses IP sources d’UptimeRobot, pour faciliter grandement la configuration de la règle. On peut mettre l’URL avec le fichier texte que l’on a fourni précédemment, et on la met directement dans l’URL Alias (IP) :
Grâce à cela, nous pourrons incorporer toutes les adresses IPv4 et IPv6 automatiquement et sans avoir à passer une par une, pour faciliter grandement la configuration. Comme vous pouvez le voir, dans la section Alias / URL, ces adresses IP publiques d’origine utilisées par UptimeRobot apparaîtront déjà chargées :
Il faudrait maintenant éditer la règle SSH et définir :
- Famille d’adresses : IPv4 et IPv6, pour couvrir également les adresses IPv6.
- Source – Hôte unique ou alias : IP_UptimeRobot
Et nous cliquons sur «Enregistrer» et appliquons les modifications. À l’heure actuelle, seules les adresses IP sources définies dans les alias, qui correspondent aux adresses IP d’UptimeRobot, n’auraient accès qu’au serveur SSH, afin de ne pas laisser le serveur SSH exposé à tout le monde.
Grâce à UptimeRobot et une bonne configuration dans pfSense pour éviter les faux positifs, vous pourrez vérifier que la connexion Internet fonctionne correctement et que vous n’avez pas d’incident. Bien sûr, le plus conseillé est de mettre le domaine DNS dynamique dans l’UptimeRobot lui-même, car si vous avez une adresse IP publique dynamique, elle changera de temps en temps et vous pouvez obtenir de faux positifs de perte de connectivité.