Chapitre 1412 minIntermédiaire
Sauvegarder, mettre à jour et sécuriser pfSense
Par Josselyn C., prof de BTS SIO. Mis à jour le .
À la fin de ce chapitre, tu sauras
- sauvegarder et restaurer la configuration, y compris sur une autre machine ;
- revenir à une configuration précédente avec l'historique ;
- mettre à jour pfSense CE sans risque grâce à l'instantané de la machine virtuelle ;
- durcir les comptes et l'accès d'administration du pare-feu.
3 exercices corrigés
Toute la configuration de pfSense tient dans un fichier XML, config.xml : le sauvegarder, c'est pouvoir reconstruire le pare-feu en quelques minutes sur n'importe quelle machine. Ce chapitre montre comment sauvegarder et restaurer cette configuration (à la main, par l'historique, par le service AutoConfigBackup et par la sauvegarde de la machine virtuelle), comment mettre pfSense à jour sans risque, puis comment durcir le pare-feu lui-même : comptes, accès d'administration, certificat, SSH et notifications.
Ce qu'il faut sauvegarder
| Quoi | Où | Ce que ça permet |
|---|---|---|
config.xml | Diagnostics > Backup & Restore | Reconstruire un pfSense identique, même sur une autre machine : règles, NAT, VPN, utilisateurs, certificats, configuration des paquets |
| L'historique des configurations | Diagnostics > Backup & Restore > Config History | Revenir à l'état d'avant une modification malheureuse, en un clic |
| La machine virtuelle entière | Proxmox VE (instantané, sauvegarde vzdump, Proxmox Backup Server) | Revenir à l'état exact d'avant une mise à jour, système compris |
Le fichier config.xml contient des secrets : clés privées des certificats et des VPN, clés partagées IPsec, condensats des mots de passe, compte de liaison à l'annuaire. Une sauvegarde en clair qui traîne sur un poste ou un partage est une fuite de toutes les clés du pare-feu.
Sauvegarder et restaurer à la main
Diagnostics > Backup & Restore, section Backup Configuration :
- Backup area : All, pour tout sauvegarder.
- Laisse décoché Skip packages (la configuration des paquets doit suivre) ; Skip RRD data évite d'inclure les historiques des graphiques, volumineux et inutiles pour une restauration.
- Coche Encrypt this configuration file et saisis un mot de passe fort, rangé dans le coffre-fort de mots de passe de l'équipe (sans lui, la sauvegarde est inutilisable).
- Download configuration as XML : le fichier se nomme
config-pf1.ad.sorbier.example-<date>.xml.
Range ce fichier hors du pare-feu, sur le stockage des sauvegardes (le NAS TrueNAS du laboratoire, protégé par des snapshots ZFS), et applique la règle 3-2-1 du cours Sauvegarde et PRA : trois copies, deux supports, une hors site. Fais-le après chaque modification importante, et au moins une fois par mois. Pour ne plus dépendre de la mémoire de chacun, confie la copie vers le NAS à une tâche planifiée (planifier un script) ; une équipe plus avancée décrit même alias et règles dans des fichiers versionnés, appliqués par Ansible (automatiser Cisco et pfSense).
Restaurer : même page, section Restore Backup : Restore area All, le fichier, la case Configuration file is encrypted et son mot de passe, puis Restore Configuration. Le pare-feu redémarre avec la configuration restaurée et réinstalle tout seul les paquets qu'elle mentionne (il lui faut donc un accès à Internet).
Restaurer sur une nouvelle machine. Les noms des cartes doivent correspondre : une configuration écrite pour vtnet0, vtnet1, vtnet2 attend ces cartes. Sur une machine virtuelle Proxmox construite comme au chapitre 2, c'est automatique ; sur un boîtier physique (igc0, igc1…), la console demande au démarrage d'attribuer les interfaces, puis tout le reste s'applique. Le Netgate Installer propose aussi, dès son menu d'accueil, de restaurer une configuration trouvée sur le disque (Configuration Restore).
L'historique des configurations
Chaque fois que tu enregistres une page, pfSense garde la configuration précédente. Diagnostics > Backup & Restore > Config History liste ces versions avec leur date, l'utilisateur et la page modifiée. Pour chacune : afficher les différences avec la version actuelle, la télécharger, ou revenir à cette version. En console, l'option 15 (Restore recent configuration) fait la même chose quand l'interface web n'est plus accessible.
C'est le premier réflexe après une erreur : « j'ai modifié une règle et plus rien ne marche » se répare en revenant à la version d'avant, puis en refaisant la modification correctement.
AutoConfigBackup
Services > Auto Config Backup est un service gratuit de Netgate, ouvert aux utilisateurs de pfSense CE comme de Plus : à chaque modification, le pare-feu envoie une copie chiffrée de sa configuration aux serveurs de Netgate, chiffrée avec un mot de passe que tu choisis et que Netgate ne connaît pas. On restaure une version depuis le même menu, y compris sur un pare-feu réinstallé, avec la clé de l'appareil et le mot de passe.
C'est une bonne sécurité supplémentaire contre la perte du pare-feu et de ses sauvegardes locales. Mais la configuration, même chiffrée, quitte l'organisation : vérifie que c'est compatible avec la politique de sécurité, et ne t'en sers jamais comme seule sauvegarde.
Mettre à jour sans risque
Le pare-feu est l'équipement le plus exposé de l'entreprise, et les failles d'équipements de bordure font régulièrement l'objet d'alertes du CERT-FR : les mises à jour ne se repoussent pas indéfiniment. La procédure, pour un pfSense CE virtualisé :
- Lire les notes de version (release notes) sur le site de Netgate : nouveautés, changements de comportement, paquets touchés, problèmes connus. pfSense CE 2.9.0 prévient par exemple d'un problème de démarrage sur certains processeurs Celeron J.
- Exporter la configuration chiffrée.
- Prendre un instantané de la machine virtuelle, dans Proxmox (Snapshots > Take Snapshot) ou en ligne de commande sur l'hôte :
qm snapshot 100 avant-maj-2-9 --description "pf1 avant passage en 2.9.0"
- Mettre à jour : System > Update, Branch sur la version stable courante, Confirm. Le pare-feu télécharge, installe et redémarre ; compte une coupure de quelques minutes, à planifier hors des heures d'ouverture (ou à faire sans coupure avec CARP, chapitre 13).
- Vérifier : version sur le tableau de bord, interfaces, VPN établis, paquets à jour (System > Package Manager), journaux sans erreur, un test de chaque flux important.
- En cas de problème, revenir à l'instantané :
qm rollback 100 avant-maj-2-9. Sinon, supprimer l'instantané après quelques jours : un instantané conservé ralentit le disque et grossit.
Durcir le pare-feu
Le pare-feu protège tout le reste : il doit être le mieux protégé. La liste de durcissement de Sorbier :
| Mesure | Où | Pourquoi |
|---|---|---|
Un compte nominatif par administrateur, membre du groupe admins ; le compte admin désactivé ou réservé au secours, son mot de passe dans le coffre-fort | System > User Manager | Savoir qui a fait quoi : l'historique des configurations et les journaux nomment l'utilisateur ; même principe que les comptes d'administration en tiers |
| Accès à l'interface web et à SSH uniquement depuis ADMIN : une règle explicite dans l'onglet ADMIN (HTTPS et SSH vers ADMIN address, au-dessus de la règle « Administration hors bastion refusée »), puis désactivation de la règle anti-lockout | Onglet ADMIN ; System > Advanced > Admin Access, Disable webConfigurator anti-lockout rule | L'anti-lockout ne se modifie pas, ne se journalise pas et passe avant toutes tes règles : mieux vaut une règle que l'on maîtrise et que l'on relit |
| Jamais d'accès d'administration depuis le WAN | Onglet WAN | Les interfaces d'administration exposées sur Internet sont attaquées en permanence |
Certificat de l'interface web signé par l'autorité de certification interne, au nom pf1.ad.sorbier.example | System > Cert. Manager, puis SSL/TLS Certificate dans Admin Access | Les administrateurs ne prennent plus l'habitude de cliquer sur « continuer malgré l'avertissement » |
| SSH désactivé, ou en clés seulement (SSHd Key Only : Public Key Only), clés publiques dans le compte de chaque administrateur | Admin Access, section Secure Shell ; User Manager, Authorized SSH Keys | Pas de mot de passe à deviner |
| Protection contre les tentatives répétées (Login Protection), avec la liste de passage du poste d'administration | Admin Access, section Login Protection | Une adresse qui accumule les échecs est bloquée un temps |
| Console protégée par mot de passe | Admin Access, Password protect the console menu | Quiconque ouvre la console de la machine virtuelle ne doit pas obtenir un shell |
| Heure juste (NTP) et journaux envoyés hors du pare-feu | Services > NTP ; Status > System Logs > Settings | Des journaux datés et conservés, même si le pare-feu est compromis ou perdu (chapitre 15) |
| Notifications par courriel (mises à jour disponibles, bascule CARP, certificat qui expire) | System > Advanced > Notifications | Être prévenu sans avoir à regarder |
| Mises à jour suivies, avis du CERT-FR et de Netgate lus | System > Update | Corriger les failles connues avant qu'elles ne soient exploitées |
| Services inutiles arrêtés, paquets inutiles désinstallés | Status > Services, Package Manager | Moins de code exposé |
Exercices
Exercice 1 sur 3 Le plan de sauvegarde du pare-feu Réussi À revoir
Le responsable de Sorbier te demande un plan de sauvegarde de pf1 en cinq lignes au plus : quoi, comment, quand, où, et comment on vérifie. Rédige-le.
Voir la réponseMasquer la réponse de l'exercice 1
- Configuration : export chiffré de
config.xml(Backup area All, Encrypt) après chaque modification importante et au moins une fois par mois, copié sur le stockage des sauvegardes (TrueNAS) et hors site ; mot de passe de chiffrement dans le coffre-fort de l'équipe. - AutoConfigBackup activé, chiffré, en complément (copie automatique à chaque modification).
- Machine virtuelle : sauvegarde Proxmox quotidienne de
pf1avec les autres machines, et instantané avant chaque mise à jour, supprimé quelques jours après. - Historique des configurations conservé sur le pare-feu pour les retours arrière rapides.
- Vérification : une restauration annuelle de
config.xmlsur une machine virtuelle de test, avec contrôle des règles, des VPN et des paquets, consignée dans la documentation.
Tu avais trouvé ?
Exercice 2 sur 3 Audit d'un pare-feu Réussi À revoir
En reprenant le pfSense d'une PME, tu relèves : tous les techniciens utilisent le compte admin ; l'interface web répond sur l'adresse publique, port 443 ; SSH est activé avec mot de passe depuis toutes les interfaces ; la version date de dix-huit mois ; la dernière sauvegarde de config.xml est un fichier en clair sur le bureau d'un technicien. Pour chaque point, donne le risque et la correction.
Voir la réponseMasquer la réponse de l'exercice 2
| Constat | Risque | Correction |
|---|---|---|
Compte admin partagé | Aucune traçabilité ; impossible de retirer l'accès d'une seule personne | Un compte nominatif par technicien (groupe admins), admin désactivé ou réservé au secours |
| Interface web sur l'adresse publique | Attaques de mots de passe et exploitation de failles de l'interface depuis tout Internet | Supprimer la règle WAN ; administration depuis le réseau d'administration (et le VPN) seulement ; règle explicite puis anti-lockout désactivé |
| SSH avec mot de passe depuis partout | Tentatives de mots de passe, accès console complet en cas de succès | SSH désactivé ou en clés seulement, joignable depuis le réseau d'administration uniquement ; Login Protection |
| Version de dix-huit mois | Failles connues et publiées sur l'équipement le plus exposé | Planifier la mise à jour : notes de version, export, instantané, mise à jour, vérification |
| Sauvegarde en clair sur un poste | Fuite de toutes les clés (VPN, certificats, IPsec) si le poste est compromis ; pas de copie hors site | Supprimer le fichier, changer les secrets exposés ; exports chiffrés rangés sur le stockage des sauvegardes et hors site |
Tu avais trouvé ?
Exercice 3 sur 3 La mise à jour qui casse le VPN Réussi À revoir
Après une mise à jour de pfSense CE, plus aucun commercial ne se connecte en OpenVPN ; le reste fonctionne. Tu avais pris un instantané avant-maj de la machine virtuelle 100 et exporté la configuration.
- Quelles vérifications fais-tu avant de revenir en arrière ?
- Si tu décides de revenir en arrière, quelle commande lances-tu, et qu'est-ce qui sera perdu ?
Voir la réponseMasquer la réponse de l'exercice 3
- Lire Status > System Logs > OpenVPN (un message clair indique souvent la cause : algorithme retiré, option devenue invalide) ; relire les notes de version (changement des algorithmes par défaut, de la version d'OpenVPN) ; vérifier que le paquet d'export et la configuration des clients sont toujours compatibles. Une simple modification de réglage peut suffire, sans retour arrière.
- Sur l'hôte Proxmox :
qm rollback 100 avant-maj. La machine revient exactement à l'état de l'instantané : toutes les modifications faites depuis (règles, baux, journaux locaux) sont perdues. On repasse ensuite la mise à jour plus tard, une fois la cause comprise, et l'on informe les utilisateurs.
Tu avais trouvé ?