Пример #1
0
function GUI_PMA()
{
    $xml = simplexml_load_file(DaemonConfig::$cfg->{'ROOT_DIR'} . '/../setup/config.xml');
    $pma = simplexml_load_file(DaemonConfig::$cfg->{'CONF_DIR'} . '/tpl/EasySCP_Config_PMA.xml');
    System_Daemon::debug('Building the new pma config file');
    $pma->{'PMA_BLOWFISH'} = $xml->{'PMA_BLOWFISH'};
    $pma->{'PMA_USER'} = $xml->{'PMA_USER'};
    $pma->{'PMA_PASSWORD'} = DB::encrypt_data($xml->{'PMA_PASSWORD'});
    $pma->{'DATABASE_HOST'} = idn_to_ascii($xml->{'DB_HOST'});
    $pma->{'TMP_DIR'} = DaemonConfig::$cfg->{'GUI_ROOT_DIR'} . '/phptmp';
    $handle = fopen(DaemonConfig::$cfg->{'CONF_DIR'} . '/EasySCP_Config_PMA.xml', "wb");
    fwrite($handle, $pma->asXML());
    fclose($handle);
    DaemonCommon::systemSetFilePermissions(DaemonConfig::$cfg->{'CONF_DIR'} . '/EasySCP_Config_PMA.xml', DaemonConfig::$cfg->{'ROOT_USER'}, DaemonConfig::$cfg->{'ROOT_GROUP'}, 0640);
    DaemonConfigTools::SavePMAConfig();
    System_Daemon::debug('Adding the pma control user');
    $sql_param = array(':DATABASE_HOST' => idn_to_ascii(DaemonConfig::$cfg->{'DATABASE_HOST'}), ':PMA_USER' => $xml->{'PMA_USER'}, ':PMA_PASSWORD' => $xml->{'PMA_PASSWORD'});
    $sql_query = "\n\t\tGRANT USAGE ON mysql.* TO :PMA_USER@:DATABASE_HOST IDENTIFIED BY :PMA_PASSWORD;\n\t\tGRANT SELECT ON mysql.db TO :PMA_USER@:DATABASE_HOST IDENTIFIED BY :PMA_PASSWORD;\n\t\tGRANT SELECT (Host, User, Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv, File_priv, Grant_priv, References_priv, Index_priv, Alter_priv, Show_db_priv, Super_priv, Create_tmp_table_priv, Lock_tables_priv, Execute_priv, Repl_slave_priv, Repl_client_priv) ON mysql.user TO :PMA_USER@:DATABASE_HOST IDENTIFIED BY :PMA_PASSWORD;\n\t\tGRANT SELECT ON mysql.host TO :PMA_USER@:DATABASE_HOST IDENTIFIED BY :PMA_PASSWORD;\n\t\tGRANT SELECT (Host, Db, User, Table_name, Table_priv, Column_priv) ON mysql.tables_priv TO :PMA_USER@:DATABASE_HOST IDENTIFIED BY :PMA_PASSWORD;\n\t\tGRANT SELECT, INSERT, DELETE, UPDATE, ALTER ON phpmyadmin.* TO :PMA_USER@:DATABASE_HOST IDENTIFIED BY :PMA_PASSWORD;\n\t\tFLUSH PRIVILEGES;\n\t";
    DB::prepare($sql_query);
    DB::execute($sql_param)->closeCursor();
    return 'Ok';
}
Пример #2
0
 /**
  * @param string $config
  * @return mixed
  */
 public static function rebuildConfigPass($config = 'system')
 {
     System_Daemon::debug('Starting "DaemonConfigCommon::rebuildConfigPass" subprocess.');
     switch ($config) {
         case 'DNS':
             System_Daemon::debug('Starting "DNS" subprocess.');
             $SavePDNSConfig = DaemonConfigDNS::SavePDNSConfig();
             if ($SavePDNSConfig !== true) {
                 return $SavePDNSConfig;
             }
             System_Daemon::debug('Finished "DNS" subprocess.');
             break;
         case 'FTP':
             System_Daemon::debug('Starting "FTP" subprocess.');
             $SaveProFTPdConfig = DaemonConfigFTP::SaveProFTPdConfig();
             if ($SaveProFTPdConfig !== true) {
                 return $SaveProFTPdConfig;
             }
             System_Daemon::debug('Finished "FTP" subprocess.');
             break;
         case 'MTA':
             System_Daemon::debug('Starting "MTA" subprocess.');
             $SaveMTAConfig = DaemonConfigMail::SaveMTAConfig();
             if ($SaveMTAConfig !== true) {
                 return $SaveMTAConfig;
             }
             System_Daemon::debug('Finished "MTA" subprocess.');
             break;
         case 'PMA':
             System_Daemon::debug('Starting "PMA" subprocess.');
             DaemonConfigTools::SavePMAConfig();
             System_Daemon::debug('Finished "PMA" subprocess.');
             break;
         case 'RC':
             System_Daemon::debug('Starting "RC" subprocess.');
             DaemonConfigTools::SaveRCConfig();
             System_Daemon::debug('Finished "RC" subprocess.');
             break;
         case 'system':
             System_Daemon::debug('Starting "system" subprocess.');
             $SavePDNSConfig = DaemonConfigDNS::SavePDNSConfig();
             if ($SavePDNSConfig !== true) {
                 return $SavePDNSConfig;
             }
             $SaveProFTPdConfig = DaemonConfigFTP::SaveProFTPdConfig();
             if ($SaveProFTPdConfig !== true) {
                 return $SaveProFTPdConfig;
             }
             $SaveMTAConfig = DaemonConfigMail::SaveMTAConfig();
             if ($SaveMTAConfig !== true) {
                 return $SaveMTAConfig;
             }
             System_Daemon::debug('Finished "system" subprocess.');
             break;
         default:
             System_Daemon::warning("Don't know what to do with " . $config);
             return false;
     }
     System_Daemon::debug('Finished "DaemonConfigCommon::rebuildConfigPass" subprocess.');
     return true;
 }