Marius Burkard
2016-05-23 ce9b51ed7f2febf37f2da0df983315f1c71f95a6
install/install.php
@@ -140,6 +140,8 @@
//****************************************************************************************************
$inst = new installer();
if (!$inst->get_php_version()) die('ISPConfig requieres PHP '.$inst->min_php."\n");
$retval=shell_exec("which which");
if (empty($retval)) die ("ISPConfig requieres which \n");
swriteln($inst->lng('    Following will be a few questions for primary configuration so be careful.'));
swriteln($inst->lng('    Default values are in [brackets] and can be accepted with <ENTER>.'));
@@ -157,13 +159,6 @@
if(is_dir('/usr/local/ispconfig')) {
   die('ISPConfig 3 installation found. Please use update.php instead if install.php to update the installation.');
}
//** Detect php-version
$MIN_PHP='5.6';
if (version_compare(PHP_VERSION, $MIN_PHP, '<')) {
    echo 'ISPConfig requieres PHP '.$MIN_PHP.'. Installed version: ' . PHP_VERSION . "\n";
}
//** Detect the installed applications
$inst->find_installed_apps();
@@ -195,7 +190,7 @@
} while (!$check);
// Check if the mysql functions are loaded in PHP
if(!function_exists('mysql_connect')) die('No PHP MySQL functions available. Please ensure that the PHP MySQL module is loaded.');
if(!function_exists('mysqli_connect')) die('No PHP MySQLi functions available. Please ensure that the PHP MySQL module is loaded.');
//** Get MySQL root credentials
$finished = false;
@@ -215,7 +210,7 @@
   }
   //* Initialize the MySQL server connection
   if(@mysql_connect($tmp_mysql_server_host . ':' . (int)$tmp_mysql_server_port, $tmp_mysql_server_admin_user, $tmp_mysql_server_admin_password)) {
   if(@mysqli_connect($tmp_mysql_server_host, $tmp_mysql_server_admin_user, $tmp_mysql_server_admin_password, '', (int)$tmp_mysql_server_port)) {
      $conf['mysql']['host'] = $tmp_mysql_server_host;
      $conf['mysql']['port'] = $tmp_mysql_server_port;
      $conf['mysql']['admin_user'] = $tmp_mysql_server_admin_user;
@@ -224,7 +219,7 @@
      $conf['mysql']['charset'] = $tmp_mysql_server_charset;
      $finished = true;
   } else {
      swriteln($inst->lng('Unable to connect to the specified MySQL server').' '.mysql_error());
      swriteln($inst->lng('Unable to connect to the specified MySQL server').' '.mysqli_connect_error());
   }
} while ($finished == false);
unset($finished);
@@ -253,6 +248,8 @@
if($install_mode == 'standard') {
   $inst->dbmaster = $inst->db;
   //* Create the MySQL database
   $inst->configure_database();
@@ -333,22 +330,29 @@
   } else swriteln('[ERROR] Postfix not installed - skipping Mail');
   //* Check for DNS
   if(!$conf['powerdns']['installed'] && !$conf['bind']['installed'] && !$conf['mydns']['installed']) {
      $conf['powerdns']['installed'] = $inst->force_configure_app('PowerDNS', false);
//   if(!$conf['powerdns']['installed'] && !$conf['bind']['installed'] && !$conf['mydns']['installed']) {
   if(!$conf['bind']['installed'] && !$conf['mydns']['installed']) {
//      $conf['powerdns']['installed'] = $inst->force_configure_app('PowerDNS', false);
      $conf['bind']['installed'] = $inst->force_configure_app('BIND', false);
      $conf['mydns']['installed'] = $inst->force_configure_app('MyDNS', false);
   }
   //* Configure PowerDNS
/*
   if($conf['powerdns']['installed']) {
      swriteln('Configuring PowerDNS');
      $inst->configure_powerdns();
      $conf['services']['dns'] = true;
   }
*/
   //* Configure Bind
   if($conf['bind']['installed']) {
      swriteln('Configuring BIND');
      $inst->configure_bind();
      $conf['services']['dns'] = true;
      if(!is_installed('haveged')) {
         swriteln("[INFO] haveged not detected - DNSSEC can fail");
      }
   }
   //* Configure MyDNS
   if($conf['mydns']['installed']) {
@@ -450,6 +454,7 @@
      swriteln('Configuring Bastille Firewall');
      $inst->configure_bastille_firewall();
      $conf['services']['firewall'] = true;
      $conf['bastille']['installed'] = true;
   }
   //* Configure Fail2ban
@@ -507,6 +512,9 @@
      $inst->install_crontab();
   } else swriteln('[ERROR] Cron not found');
   swriteln('Detect IP addresses');
   $inst->detect_ips();
   swriteln('Restarting services ...');
   if($conf['mysql']['installed'] == true && $conf['mysql']['init_script'] != '') system($inst->getinitcommand($conf['mysql']['init_script'], 'restart').' >/dev/null 2>&1');
   if($conf['postfix']['installed'] == true && $conf['postfix']['init_script'] != '') system($inst->getinitcommand($conf['postfix']['init_script'], 'restart'));
@@ -555,7 +563,7 @@
         $tmp_mysql_server_database = $inst->free_query('MySQL master server database name', $conf['mysql']['master_database'],'mysql_master_database');
         //* Initialize the MySQL server connection
         if(@mysql_connect($tmp_mysql_server_host . ':' . (int)$tmp_mysql_server_port, $tmp_mysql_server_admin_user, $tmp_mysql_server_admin_password)) {
         if(@mysqli_connect($tmp_mysql_server_host, $tmp_mysql_server_admin_user, $tmp_mysql_server_admin_password, $tmp_mysql_server_database, (int)$tmp_mysql_server_port)) {
            $conf['mysql']['master_host'] = $tmp_mysql_server_host;
            $conf['mysql']['master_port'] = $tmp_mysql_server_port;
            $conf['mysql']['master_admin_user'] = $tmp_mysql_server_admin_user;
@@ -563,7 +571,7 @@
            $conf['mysql']['master_database'] = $tmp_mysql_server_database;
            $finished = true;
         } else {
            swriteln($inst->lng('Unable to connect to mysql server').' '.mysql_error());
            swriteln($inst->lng('Unable to connect to mysql server').' '.mysqli_connect_error());
         }
      } while ($finished == false);
      unset($finished);
@@ -703,7 +711,7 @@
      swriteln('Configuring Pureftpd');
      $inst->configure_pureftpd();
   }
   //** Configure DNS
   if(strtolower($inst->simple_query('Configure DNS Server', array('y', 'n'), 'y','configure_dns')) == 'y') {
      $conf['services']['dns'] = true;
@@ -725,6 +733,9 @@
         swriteln('Configuring BIND');
         $inst->configure_bind();
         $conf['services']['dns'] = true;
         if(!is_installed('haveged')) {
            swriteln("[INFO] haveged not detected - DNSSEC can fail");
         }
      }
      //* Configure MyDNS
      if($conf['mydns']['installed']) {
@@ -873,6 +884,9 @@
      if($conf['nginx']['php_fpm_init_script'] != '') system($inst->getinitcommand($conf['nginx']['php_fpm_init_script'], 'reload'));
      if($conf['nginx']['init_script'] != '') system($inst->getinitcommand($conf['nginx']['init_script'], 'reload'));
   }
   swriteln('Detect IP addresses');
   $inst->detect_ips();