Falko Timme
2014-06-19 117ecd60c809bbc19a3c1f795f6db9e53465cdec
install/lib/installer_base.lib.php
@@ -633,6 +633,7 @@
      //* Create aliasaes
      exec('/usr/lib/mailman/bin/genaliases 2>/dev/null');
      if(is_file('/var/lib/mailman/data/virtual-mailman')) exec('postmap /var/lib/mailman/data/virtual-mailman');
   }
@@ -689,7 +690,7 @@
      if(!is_user($cf['vmail_username'])) caselog("$command &> /dev/null", __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
      //* These postconf commands will be executed on installation and update
      $server_ini_rec = $this->db->queryOneRecord("SELECT config FROM server WHERE server_id = ".$conf['server_id']);
      $server_ini_rec = $this->db->queryOneRecord("SELECT config FROM `" . $this->db->quote($conf["mysql"]["database"]) . "`.`server` WHERE server_id = ".$conf['server_id']);
      $server_ini_array = ini_to_array(stripslashes($server_ini_rec['config']));
      unset($server_ini_rec);
@@ -749,8 +750,13 @@
      if(!stristr($options, 'dont-create-certs')) {
         //* Create the SSL certificate
         $command = 'cd '.$config_dir.'; '
            .'openssl req -new -outform PEM -out smtpd.cert -newkey rsa:4096 -nodes -keyout smtpd.key -keyform PEM -days 3650 -x509';
         if(is_file('autoinstall.conf.php')){
            $command = 'cd '.$config_dir.'; '
               .'openssl req -new -subj \'/C=AU/ST=Some-State/O=Internet Widgits Pty Ltd\' -outform PEM -out smtpd.cert -newkey rsa:4096 -nodes -keyout smtpd.key -keyform PEM -days 3650 -x509';
         } else {
            $command = 'cd '.$config_dir.'; '
               .'openssl req -new -outform PEM -out smtpd.cert -newkey rsa:4096 -nodes -keyout smtpd.key -keyform PEM -days 3650 -x509';
         }
         exec($command);
         $command = 'chmod o= '.$config_dir.'/smtpd.key';
@@ -998,7 +1004,7 @@
      chgrp($config_dir.'/'.$configfile, 'root');
      
      // Dovecot shall ignore mounts in website directory
      exec("doveadm mount add '/var/www/*' ignore");
      if(is_installed('doveadm')) exec("doveadm mount add '/var/www/*' ignore > /dev/null 2> /dev/null");
   }
@@ -1597,7 +1603,8 @@
         if(!is_user($apps_vhost_user)) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
         $command = 'adduser '.$conf['nginx']['user'].' '.$apps_vhost_group;
         //$command = 'adduser '.$conf['nginx']['user'].' '.$apps_vhost_group;
         $command = 'usermod -a -G '.$apps_vhost_group.' '.$conf['nginx']['user'];
         caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
         if(!@is_dir($install_dir)){
@@ -1681,7 +1688,11 @@
      $ssl_pw = substr(md5(mt_rand()), 0, 6);
      exec("openssl genrsa -des3 -passout pass:$ssl_pw -out $ssl_key_file 4096");
      exec("openssl req -new -passin pass:$ssl_pw -passout pass:$ssl_pw -key $ssl_key_file -out $ssl_csr_file");
      if(is_file('autoinstall.conf.php')){
         exec("openssl req -new -passin pass:$ssl_pw -passout pass:$ssl_pw -subj '/C=AU/ST=Some-State/O=Internet Widgits Pty Ltd' -key $ssl_key_file -out $ssl_csr_file");
      } else {
         exec("openssl req -new -passin pass:$ssl_pw -passout pass:$ssl_pw -key $ssl_key_file -out $ssl_csr_file");
      }
      exec("openssl req -x509 -passin pass:$ssl_pw -passout pass:$ssl_pw -key $ssl_key_file -in $ssl_csr_file -out $ssl_crt_file -days 3650");
      exec("openssl rsa -passin pass:$ssl_pw -in $ssl_key_file -out $ssl_key_file.insecure");
      rename($ssl_key_file, $ssl_key_file.'.secure');
@@ -2103,7 +2114,15 @@
      //* Remove Domain module as its functions are available in the client module now
      if(@is_dir('/usr/local/ispconfig/interface/web/domain')) exec('rm -rf /usr/local/ispconfig/interface/web/domain');
      //* Disable rkhunter run and update in debian cronjob as ispconfig is running and updating rkhunter
      if(is_file('/etc/default/rkhunter')) {
         replaceLine('/etc/default/rkhunter', 'CRON_DAILY_RUN="yes"', 'CRON_DAILY_RUN="no"', 1, 0);
         replaceLine('/etc/default/rkhunter', 'CRON_DB_UPDATE="yes"', 'CRON_DB_UPDATE="no"', 1, 0);
      }
      // Add symlink for patch tool
      if(!is_link('/usr/local/bin/ispconfig_patch')) exec('ln -s /usr/local/ispconfig/server/scripts/ispconfig_patch /usr/local/bin/ispconfig_patch');
   }