From f59af0db291c963de915d9ec59756a51b122252c Mon Sep 17 00:00:00 2001 From: Martin Konecny Date: Tue, 3 Apr 2012 10:54:23 -0400 Subject: [PATCH] CC-3520: Change default password of monit -upgrade script done --- .../airtime-2.0.3/airtime-upgrade.php | 20 ++++++++++++++++++- .../airtime-2.0.3/monit-airtime-generic.cfg | 6 ++++++ 2 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 install_minimal/upgrades/airtime-2.0.3/monit-airtime-generic.cfg diff --git a/install_minimal/upgrades/airtime-2.0.3/airtime-upgrade.php b/install_minimal/upgrades/airtime-2.0.3/airtime-upgrade.php index 429563cf7..5639dd88f 100644 --- a/install_minimal/upgrades/airtime-2.0.3/airtime-upgrade.php +++ b/install_minimal/upgrades/airtime-2.0.3/airtime-upgrade.php @@ -37,6 +37,7 @@ class AirtimeMiscUpgrade{ public static function start(){ self::modifyPypo(); + self::modifyMonitPassword(); } public static function modifyPypo(){ @@ -44,8 +45,25 @@ class AirtimeMiscUpgrade{ exec("usermod -s /bin/false pypo"); exec("passwd --delete pypo"); } + + public static function modifyMonitPassword(){ + echo "* Generating Monit password".PHP_EOL; + copy(__DIR__."/monit-airtime-generic.cfg", "/etc/monit/conf.d/monit-airtime-generic.cfg"); + $pass = self::GenerateRandomString(10); + exec("sed -i 's/\$admin_pass/$pass/g' /etc/monit/conf.d/monit-airtime-generic.cfg"); + } + + public static function GenerateRandomString($p_len=20, $p_chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789') + { + $string = ''; + for ($i = 0; $i < $p_len; $i++) + { + $pos = mt_rand(0, strlen($p_chars)-1); + $string .= $p_chars{$pos}; + } + return $string; + } } - AirtimeConfigFileUpgrade::start(); AirtimeMiscUpgrade::start(); diff --git a/install_minimal/upgrades/airtime-2.0.3/monit-airtime-generic.cfg b/install_minimal/upgrades/airtime-2.0.3/monit-airtime-generic.cfg new file mode 100644 index 000000000..4bb0c6497 --- /dev/null +++ b/install_minimal/upgrades/airtime-2.0.3/monit-airtime-generic.cfg @@ -0,0 +1,6 @@ + set daemon 10 # Poll at 10 second intervals + set logfile /var/log/monit.log + + set httpd port 2812 + allow admin:$admin_pass + allow guest:airtime read-only