From cf871581de8399edc6f73aa38544786e452739d5 Mon Sep 17 00:00:00 2001 From: Scott Ullrich Date: Mon, 6 Oct 2008 03:22:50 +0000 Subject: Encrypt config.xml and send to backup repo --- packages/autoconfigbackup/autoconfigbackup.xml | 2 +- packages/autoconfigbackup/upload_config_filter.php | 25 ++++++++++++++-------- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/packages/autoconfigbackup/autoconfigbackup.xml b/packages/autoconfigbackup/autoconfigbackup.xml index a272c6b2..57d24f5d 100644 --- a/packages/autoconfigbackup/autoconfigbackup.xml +++ b/packages/autoconfigbackup/autoconfigbackup.xml @@ -88,7 +88,7 @@ Encryption password - decrypt_password + crypto_password password diff --git a/packages/autoconfigbackup/upload_config_filter.php b/packages/autoconfigbackup/upload_config_filter.php index a6e58c4c..876bc51f 100644 --- a/packages/autoconfigbackup/upload_config_filter.php +++ b/packages/autoconfigbackup/upload_config_filter.php @@ -17,19 +17,26 @@ $last_config_change = $config['revision']['time']; /* If configuration has changed, upload to pfS */ if($last_backup_date <> $last_config_change) { - $hostname = $config['system']['hostname']; - $username = $config['installedpackages']['pfSautoconfigbackup']['config']['username']; - $password = $config['installedpackages']['pfSautoconfigbackup']['config']['password']; - $reason = $config['revision']['description']; + $hostname = $config['system']['hostname']; + $username = $config['installedpackages']['pfSautoconfigbackup']['config']['username']; + $password = $config['installedpackages']['pfSautoconfigbackup']['config']['password']; + $encryptpw = $config['installedpackages']['pfSautoconfigbackup']['config']['crypto_password']; + $reason = $config['revision']['description']; $upload_url = "https://{$username}:{$password}@portal.pfsense.org/pfSconfigbackups/backup.php"; + // Encrypt config.xml + $data = file_get_contents("/cf/conf/config.xml"); + $configxml = encrypt_data($data, $encryptpw); + tagfile_reformat($data, $data, "config.xml"); + + // Check configuration into the BSDP repo $curl_Session = curl_init($upload_url); - curl_setopt ($curl_Session, CURLOPT_POST, 1); - curl_setopt ($curl_Session, CURLOPT_POSTFIELDS, "reason={$reason}&configxml={$configxml}&hostname={$hostname}"); - curl_setopt ($curl_Session, CURLOPT_FOLLOWLOCATION, 1); - curl_exec ($curl_Session); - curl_close ($curl_Session); + curl_setopt($curl_Session, CURLOPT_POST, 1); + curl_setopt($curl_Session, CURLOPT_POSTFIELDS, "reason={$reason}&configxml={$configxml}&hostname={$hostname}"); + curl_setopt($curl_Session, CURLOPT_FOLLOWLOCATION, 1); + $data = curl_exec($curl_Session); + curl_close($curl_Session); } -- cgit v1.2.3