Vous êtes sur la page 1sur 19

Configurez l'accès Web HTTPS et SSH

dans pfSense avec une sécurité


maximale
12 mars 2021 Matt Mills Comment l'utiliser ? 0

pfSense est l'un des routeurs les plus complets et pare-feu systèmes d’exploitation
orientés là-bas aujourd'hui. Grâce au grand nombre d'options de configuration
avancées, pfSense convient à une utilisation à la fois au niveau domestique avancé,
ainsi que dans les petites et moyennes entreprises. Aujourd'hui, dans cet article, nous
allons vous expliquer comment configurer l'accès à pfSense via le web en utilisant le
protocole HTTPS sécurisé, et aussi comment configurer le serveur SSH avec la
meilleure sécurité possible, afin que l'authentification dans le système d'exploitation
soit effectuée en de manière cryptée et sécurisée.

Les deux principaux accès dont nous disposons à l'administration du système


d'exploitation pfSense se font via le web et via SSH. Dans le premier cas, pfSense est
configuré par défaut pour utiliser le protocole HTTP sur le port 80, un protocole qui
n'est pas sécurisé car l'authentification et l'échange de données se font sans
cryptage, il est donc obligatoire de configurer le protocole HTTPS. pour avoir le
maximum de sécurité possible. Il en va de même avec le serveur SSH intégré au
système d'exploitation, il est conseillé de faire quelques changements dans la
configuration pour avoir la meilleure sécurité possible, car via SSH on peut configurer
n'importe quel aspect interne du système d'exploitation, et il faut protéger ces deux
accès contre les intrusions externes.
Contenu [show]

Configuration de la gestion Web avec HTTPS


Pour configurer le protocole HTTPS, il faut aller dans le " Système / Avancé », Et dans
ce menu, nous verrons le« Accès administrateur ». On peut choisir entre le protocole
HTTP et HTTPS, il est conseillé de toujours utiliser le protocole HTTPS pour assurer
nos communications ainsi que leur intégrité. Lorsque nous activons le protocole
HTTPS, nous devons choisir un certificat SSL / TLS, qui est déjà créé par défaut avec
le système d'exploitation, cependant, nous pouvons en créer un nouveau sans
problème et même le renouveler.
Dans ce menu on peut aussi choisir le port TCP à utiliser, si on ne met rien, le port par
défaut du protocole HTTPS est toujours 443. On peut aussi choisir le nombre
maximum d'utilisateurs simultanés gérant pfSense, par défaut c'est 2 mais nous
pouvons le télécharger si nous avons plusieurs administrateurs. Le reste des options
de configuration doit être avec les valeurs que nous mettons ci-dessous, tous sont
les paramètres par défaut et ils sont parfaitement.

Dans le " Gestionnaire de système / certificat »Est l'endroit où nous pouvons voir le


certificat SSL / TLS utilisé par le serveur Web HTTPS, nous pouvons le renouveler à
tout moment, le supprimer, exporter la clé publique et aussi la clé privée. En principe,
nous ne devrions pas y toucher, mais si nous le faisons, nous pouvons le renouveler
ou modifier le nom du certificat lui-même.
Si nous saisissons des «informations de page» avec n'importe quel navigateur, nous
pouvons voir que la connexion est cryptée avec TLS 1.3, le dernier protocole
disponible qui nous donne la meilleure sécurité et les meilleures performances dans
les connexions sécurisées.
En ce qui concerne les données de certificat, pfSense crée un certificat basé sur RSA
2048 bits, ce qui est typique dans les cas où nous avons un serveur Web avec
HTTPS. Si nous voulons changer cette sécurité, nous devons créer une CA (autorité
de certification) et plus tard un certificat de serveur qui se bloque à ladite CA, de
cette manière, nous pouvons utiliser des RSA plus longs et même des courbes
elliptiques (ECDSA), enfin, peut configurer l'algorithme de hachage à utiliser.
Dans le cas du renouvellement du certificat numérique correspondant au serveur
web, il suffit de se rendre dans la rubrique «System / Certificate Manager», de cliquer
sur renouveler le certificat de webconfigurator et de cliquer sur le bouton «Renew or
Reissue» pour le générer à nouveau.
Comme vous l'avez vu, configurer HTTPS est vraiment facile et simple, cela nous
permettra de nous authentifier via le web en toute sécurité.

Configuration d'administration via console avec


SSH
Le protocole SSH sécurisé nous permettra d'accéder à distance à l'administration du
système d'exploitation pfSense via la console. Nous aurons différents types
d'authentification:

 Clé publique SSH


 Mot de passe ou clé publique (l'un ou l'autre)
 Mot de passe et clé publique (les deux)

Nous aurons également la possibilité d'activer le transfert sur le serveur SSH, pour
effectuer le tunnel SSH, par exemple. Enfin, on peut modifier le port d'écoute du
serveur SSH, dans le cas de ce protocole c'est TCP 22, mais on peut le changer, en
fait, pour des raisons de sécurité il est conseillé de changer le port par défaut du
serveur SSH.
Une fois que nous aurons configuré l'authentification, nous devrons configurer les
utilisateurs qui peuvent s'authentifier sur le serveur SSH, ainsi que les clés SSH que
possèdent lesdits utilisateurs. Si nous cliquons sur le lien hypertexte où il est dit
«utilisateur», cela nous mènera directement à «Gestionnaire système / utilisateur», et
ici nous pouvons ajouter un nouvel utilisateur avec des autorisations différentes.
Dans notre cas, nous avons ajouté un nouvel utilisateur qui appartient au groupe
«admins».

Si nous créons un nouvel utilisateur ou le modifions, nous pouvons configurer


différents paramètres. Dans notre cas, nous l'avons ajouté au groupe admins,
comme vous pouvez le voir dans l'image suivante:
Pour pouvoir se connecter à pfSense via SSH, nous devons lui donner l'autorisation
correspondante dans la section «Privilèges effectifs», de toute la liste des
autorisations qu'un utilisateur peut avoir, il doit avoir les éléments suivants:

 Utilisateur - Système: accès au compte shell

Une fois que vous avez cette autorisation, nous pouvons nous connecter au système
d'exploitation avec votre nom d'utilisateur. En fonction de ce que nous avons choisi
lors de l'authentification de l'utilisateur, nous devrons effectuer une action
supplémentaire:

 Clé publique SSH: il faut la créer


 Mot de passe ou clé publique (l'un ou l'autre): on peut utiliser la clé
configurée, ou la clé publique SSH si on la crée.
 Mot de passe et clé publique (les deux): nous utiliserons la clé configurée
plus la clé publique SSH, il est nécessaire de la créer.
Comme la chose la plus sûre pour l'authentification est la «clé publique SSH» ou
«Mot de passe et clé publique (les deux)», nous devons créer des clés SSH.

Créer des clés SSH avec Puttygen

Nous utilisons actuellement un Windows 10, le moyen le plus simple de créer des


clés SSH est d'utiliser le " Générateur de clé de mastic ”Programme que vous pouvez
télécharger gratuitement. Aucune installation n'est nécessaire, lors du
téléchargement du programme, nous l'exécuterons et nous verrons le menu suivant:
Ici, nous pouvons configurer différents types de clés SSH, RSA et DSA sont les plus
courantes et les plus connues, mais il est conseillé d'utiliser des clés telles que
ECDSA et aussi Ed25519 qui utilisent des courbes elliptiques. Dans notre cas, nous
avons utilisé Ed25519, sélectionnez-le et cliquez sur «Générer».
Une fois que nous avons cliqué sur générer, nous devons déplacer la souris pour
créer l'aléatoire et que les clés soient générées correctement. Nous pouvons
maintenant voir en haut la clé publique que nous devons coller dans l'utilisateur
pfSense créé précédemment. Nous pouvons configurer un commentaire dans la clé,
ainsi qu'un mot de passe pour décrypter la clé privée lors de la connexion, cela
augmente la sécurité. Si quelqu'un est capable de voler notre clé privée, il ne pourra
pas l'utiliser à moins d'avoir le mot de passe de la clé privée générée.
Une fois que nous avons la clé générée, nous cliquons sur «Enregistrer la clé
publique» et aussi sur «Enregistrer la clé privée» pour avoir la paire de clés toujours à
portée de main. Nous devons nous rappeler que la clé publique est celle que nous
devons copier à l'utilisateur, comme vous pouvez le voir:
Une fois que le serveur SSH est complètement configuré dans pfSense, nous allons
vous montrer comment vous connecter avec le programme populaire Putty.

Connectez-vous à pfSense avec Putty et la clé SSH

Nous ouvrons le programme Putty et allons dans la section «Connexion / SSH /


Auth» et allons dans la section «Fichier de clé privée pour l'authentification», et
cliquez sur «Parcourir» pour charger la clé privée que nous avons précédemment
sauvegardée.
Maintenant, nous allons dans la section «Session», nous mettons l'adresse IP et le
port du serveur SSH dans pfSense, une fois renseignés, nous cliquons sur «Ouvrir».
Maintenant, il nous dira que la connexion n'est pas mise en cache, c'est donc la
première fois que nous nous connectons. Il faut cliquer sur «Oui» pour se connecter.

Il nous demandera le nom d'utilisateur de la connexion, nous mettons le nom


d'utilisateur associé à cette clé SSH créée:
Et dès que nous entrons le nom d'utilisateur, cela indiquera que l'authentification est
correcte et nous pourrons commencer à exécuter des commandes via SSH dans le
système d'exploitation pfSense. Dans cet exemple, nous n'avons utilisé que la clé
publique, nous n'avons pas utilisé la combinaison du mot de passe et de la clé
publique SSH, mais vous pouvez également l'utiliser sans problème, la seule chose
qui nous demandera le mot de passe lors de la connexion.

Maintenant que le serveur SSH est correctement configuré, nous allons voir quelques
configurations supplémentaires.

Options de protection de connexion et de gestion


de la console
Dans le " Système / Avancé »Section, nous pouvons configurer la protection de la
connexion, en principe, la configuration qui vient par défaut est très bonne pour
bloquer les attaquants qui tentent en permanence de se connecter au serveur SSH. Si
nous dépassons la valeur de 10 dans un temps de 1800 secondes, les tentatives
d'accès seront bloquées pendant 120 secondes.

En bas où nous avons la «liste de passage», nous pouvons mettre les adresses IP
publiques que nous autorisons pour passer ces protections, cela est nécessaire pour
des services comme UptimeRobot qui essaient de temps en temps de vérifier que le
serveur SSH ou Web est opérationnel.

D'autres configurations que nous devrions faire sont la section «Menu de la console»,
il est conseillé de la protéger par un mot de passe d'accès. Non seulement nous
aurons besoin d'avoir un accès physique à l'équipe pfSense, mais elle demandera
également une authentification par mot de passe pour root.

Avant de terminer, nous aimerions discuter des mesures de protection


supplémentaires.

Règles sur le pare-feu et utilisation d'IDS / IPS


pfSense est un système d'exploitation orienté pare-feu très puissant et avancé, grâce
aux différentes règles que nous pouvons configurer dans les différentes interfaces,
nous aurons la possibilité d'autoriser ou de refuser l'accès à la fois au serveur Web et
au serveur SSH. Une bonne pratique de sécurité est de ne pas autoriser l'accès via le
Web ou SSH sur Internet, si nous devons gérer pfSense à distance, une bonne
pratique est de se connecter via VPN à l'un des multiples serveurs VPN autorisés par
pfSense (OpenVPN, WireGuard, IPsec…), puis entrez via le Web ou SSH, mais
n'exposez pas les deux services à Internet, même si nous les avons correctement
protégés.

Dans le cas où vous n'avez pas d'autre choix que d'exposer les deux services (pour
une raison quelconque), nous vous recommandons d'installer et de configurer un
système de détection et de prévention des intrusions, tel que Snort ou Suricata. De
cette manière, vous aurez plus de contrôle sur les connexions établies et bloquerez
automatiquement les éventuelles attaques par force brute, déni de service, etc.

La même chose se produit si nous voulons autoriser ou refuser l'accès aux différents
VLAN que nous pouvons créer, la chose la plus normale est qu'un réseau défini
comme «Invités» n'a jamais accès au panneau d'administration pfSense, que ce soit
via le Web ou SSH. Cela doit être fait via la section «Pare-feu / Règles», définissant
des règles pour les adresses ou les réseaux d'origine et de destination de pfSense lui-
même, comme cela se fait habituellement.

Nous espérons qu'avec ces recommandations, vous serez en mesure de protéger


correctement les accès Web et SSH à pfSense.

Vous aimerez peut-être aussi