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