04 Fév. 19 Cybersécurité
Tutoriel Sécurisation de pfSense,la solution de pare-feu opensource
Dans cet article, nous présenterons en tutoriel les différents mécanismes à mettre en œuvre pour sécuriser une installation standard de pfSense. Nous considérons que vous avez déjà à disposition une instance pfSense.
Pour cela, vous pouvez vous aider de l’article :
https://www.certilience.fr/2018/03/tutoriel-deploiement-pfsense-pare-feu-opensource/
Authentification SSH par clef
L’authentification par clef est préconisée au niveau de l’authentification d’un équipement sensible.
Elle fonctionne sur une base de clef privée et de clef publique. Pour mettre en place ce système d’authentification, il est donc nécessaire de générer votre propre clef privée, de venir déposer votre clef publique sur votre firewall pfSense et de conserver votre clef privée dans un endroit sécurisé.
L’activation de SSH est à réaliser dans l’onglet System / advanced/ admin access :
Il faut passer SSHd Key Only à « public key only » pour autoriser uniquement l’authentification par clef. (Attention ! Vous désactivez l’authentification par mot de passe.)
La clef publique doit ensuite être déposée au niveau de l’utilisation. Pour déposer votre clef SSH, il faut utiliser l’onglet :
System/ User Manager / Users / Edit :
Vous pouvez maintenant vous connecter avec votre clef SSH sur le firewall Pfsense.
Utilisation d’un autre port pour l’interface d’administration
Si votre interface pfSense a besoin d’être exposée directement sur internet, une des bonnes pratiques est de modifier le port par défaut interface d’administration. Cette technique permet alors d’éviter une détection de votre interface par un robot.
Allez dans l’onglet :
System / Advanced / Admin Access :
Utilisation d’un compte dédié à la Haute Disponibilité pfSense
Concernant la haute disponibilité, il y a deux mécanismes au niveau pfSense. Cette configuration est définie au niveau de l’onglet :
System / High Availability Sync.
Synchronisation des sessions
C’est la synchronisation des sessions entre les équipements. Pour cette étape, la configuration est identique entre les deux membres.
Synchronisation des configurations
Dans la version actuelle, la synchronisation se déroule dans un seul sens. Il faut donc définir un équipement maitre qui vient copier la configuration sur le second membre.
Au niveau du compte de synchronisation, il est préconisé d’utiliser un compte admin dédié à la synchronisation et utilisé uniquement pour cela :
Vous pouvez ensuite conserver vos options habituelles de synchronisation.
Gestion des traces
Plusieurs traces sont générées au niveau de la solution pfSense :
- Trace des connexions admin sur la solution
- Trace des différents services (openvpn/proxy Squid/ ipsec/ ….)
- Trace au niveau des règles de filtrage
Pour garantir la bonne conservation des traces, il est préconisé d’exporter ces traces vers une machine externe pour garantir l’intégrité des traces, le sauvegarde, la centralisation des logs dans le cadre d’un cluster.
Il est donc nécessaire pour cela d’activer la fonctionnalité syslog au niveau de la configuration pfSense. Après avoir activé cette fonction, les traces sont envoyées vers le serveur de destination.
L’activation de cette option est à dérouler au niveau du menu :
Status / System Logs / Settings
Activation de la supervision
Pour augmenter le niveau de sécurité, il est préconisé d’activer la supervision. Cette supervision vous permet d’avoir une vision sur l’état de santé de votre installation :
- Charge CPU
- Utilisation de la Ram
- Espace disque disponible
- Utilisation des interfaces
- Possibilité de superviser l’état du hardware
Cette option de configuration se trouve au niveau de l’interface d’administration dans le menu
Services / SNMP :
Les options à configurer sont :
- Choisir un nom de communauté complexe
- Ne pas activer le daemon sur interface qui n’est pas une interface de confiance
Dans le cadre de ses missions d’intégration ou de formations,
Certilience propose d’approfondir ces points de durcissements.