english version below
Présentation ➡️ https://blogmotion.fr/systeme/script-backup-pfsense-configuration-16496
Ce script permet de sauvegarder la configuration d'un pare-feu pfSense, en récupérant à distance le fichier XML via HTTP(S).
3 versions du script existent :
- une basée sur le binaire wget
- une basée sur le binaire cURL (plus rapide)
- une basée sur le binaire cURL (plus rapide) version multi
Suivant si l'un ou l'autre binaire est présent, choisissez la version en adéquation.
La version multi permet de sauvegarder plusieurs pare-feu dans le même script.
Vous devez éditer le script (nano, vim, etc.) pour saisir à minima :
- IP ou le nom FQDN (sans slash de fin)
- identifiant
- mot de passe
Je vous recommande de créer un utilisateur dédié (System > User Manager) ayant à minima le privilège "WebCfg - Diagnostics: Backup & Restore". Pour des questions de sécurité le compte "admin" est déconseillé (mot de passe en clair dans le script).
Nécessite
- shell ou bash
- wget ou cURL
Fonctionne en théorie sur n'importe quelle distribution Linux. Testé sur Debian, CentOS, pfSense.
Note : la modification des variables BACKUP_RRD, BACKUP_PKGINFO, BACKUP_PASSWORD n'est pour l'instant pas supportée.
Ce script est compatible avec pfSense:
- 2.6.x
- 2.5.x
- 2.4.x
- 2.3.x
- 2.2.x
Non testé sur les versions inférieures.
Validé avec les versions :
- 2.6.0
- 2.5.2
- 2.4.3, 2.4.0
- 2.3.4-RELEASE-p1, 2.3.3, 2.3.2, 2.3.1
- 2.2.5
Il est recommandé de créer un répertoire dédié pour y stocker le script. Les configurations XML sont stockées dans un sous-répertoire dédié.
Version cURL:
chmod +x pfmotion_curl.sh
./pfmotion_curl.sh
Version cURL multi:
chmod +x pfmotion_curl_multi.sh
./pfmotion_curl_multi.sh
Version wget :
chmod +x pfmotion_curl_wget.sh
./pfmotion_curl_wget.sh
Le fichier de backup contient le nom du pare-feu :
/tmp/conf_backup/config-<nom-hote>_<domaine>-<YYYYmmJJHHMMSS>.xml
Exemple :
/tmp/conf_backup/config-pf_blogmotion.fr-20171007002812.xml
soon