if (!is_dir("MySQLTMPDIR")) {
                @mkdir($MySQLTMPDIR, 0777);
            }
            $unix->chmod_func(0777, $MySQLTMPDIR);
            $unix->chown_func("mysql", "mysql", $MySQLTMPDIR);
        }
    }
}
CheckArticaFolderSecurity($username, $groupname);
$files = $unix->DirFiles("/usr/share/artica-postfix/bin");
while (list($filename, $line) = each($files)) {
    writeprogress(5, "{$filename}");
    @chmod("/usr/share/artica-postfix/bin/{$filename}", 0755);
    @chown("/usr/share/artica-postfix/bin/{$filename}", "root");
}
writeprogress(6, "{done}");
function writeprogress($perc, $text)
{
    $GLOBALS["PROGRESS_FILE"] = "/usr/share/artica-postfix/ressources/logs/web/wizard.progress";
    $array["POURC"] = $perc;
    $array["TEXT"] = "{set_permissions} {$text}";
    echo "{$text}\n";
    @mkdir("/usr/share/artica-postfix/ressources/logs/web", true, 0755);
    @file_put_contents($GLOBALS["PROGRESS_FILE"], serialize($array));
    @chmod($GLOBALS["PROGRESS_FILE"], 0755);
    $unix = new unix();
    if (function_exists("debug_backtrace")) {
        $trace = debug_backtrace();
        if (isset($trace[1])) {
            $sourcefile = basename($trace[1]["file"]);
            $sourcefunction = $trace[1]["function"];
Ejemplo n.º 2
0
function EnableWebFiltering()
{
    $q = new mysql_squid_builder();
    $q->CheckTables();
    $unix = new unix();
    $sock = new sockets();
    writeprogress(82, "{activate_webfiltering_service} {check_tables}");
    $q->CheckTables();
    //$q->QUERY_SQL("INSERT INTO `webfilter_rules` (`ID`, `groupmode`, `enabled`, `groupname`, `BypassSecretKey`, `endofrule`, `blockdownloads`, `naughtynesslimit`, `searchtermlimit`, `bypass`, `deepurlanalysis`, `UseExternalWebPage`, `ExternalWebPage`, `freeweb`, `sslcertcheck`, `sslmitm`, `GoogleSafeSearch`, `TimeSpace`, `TemplateError`, `TemplateColor1`, `TemplateColor2`, `RewriteRules`, `zOrder`, `AllSystems`, `UseSecurity`, `embeddedurlweight`) VALUES (1, 1, 1, 'Everybody', '', 'any', 0, 50, 30, 0, 0, 0, '', '', 0, 0, 0, '', '', NULL, NULL, '', 0, 1, 0, NULL);");
    //$q->QUERY_SQL("INSERT INTO `webfilter_blkgp` (`ID`, `groupname`, `enabled`) VALUES (1, 'Dangerous surf', 1);");
    //$q->QUERY_SQL("INSERT INTO `webfilter_blklnk` (`ID`, `zmd5`, `webfilter_blkid`, `webfilter_ruleid`, `blacklist`) VALUES (1, '5f93f983524def3dca464469d2cf9f3e', 1, 1, 0);");
    //$q->QUERY_SQL("INSERT INTO `webfilter_blkcnt` (`ID`, `webfilter_blkid`, `category`) VALUES (1, 1, 'hacking'), (2, 1, 'phishtank'), (3, 1, 'phishing'), (4, 1, 'proxy'), (5, 1, 'malware'), (6, 1, 'spyware'), (7, 1, 'suspicious'), (8, 1, 'tracker'), (9, 1, 'warez');");
    @file_put_contents("/etc/artica-postfix/settings/Daemons/EnableUfdbGuard", 1);
    $php = $unix->LOCATE_PHP5_BIN();
    $WizardWebFilteringLevel = $sock->GET_INFO("WizardWebFilteringLevel");
    $ARRAYF[0] = "{block_sexual_websites}";
    $ARRAYF[1] = "{block_susp_websites}";
    $ARRAYF[2] = "{block_multi_websites}";
    writeprogress(82, $ARRAYF[2]);
    sleep(2);
    $array["malware"] = true;
    $array["warez"] = true;
    $array["hacking"] = true;
    $array["phishing"] = true;
    $array["spyware"] = true;
    $array["weapons"] = true;
    $array["violence"] = true;
    $array["suspicious"] = true;
    $array["paytosurf"] = true;
    $array["sect"] = true;
    $array["proxy"] = true;
    $array["gamble"] = true;
    $array["redirector"] = true;
    $array["tracker"] = true;
    $array["publicite"] = true;
    if ($WizardWebFilteringLevel == 0) {
        $array["p**n"] = true;
        $array["agressive"] = true;
        $array["dynamic"] = true;
        $array["alcohol"] = true;
        $array["astrology"] = true;
        $array["dangerous_material"] = true;
        $array["drugs"] = true;
        $array["hacking"] = true;
        $array["tattooing"] = true;
        $array["terrorism"] = true;
        $array["dating"] = true;
        $array["mixed_adult"] = true;
        $array["sex/lingerie"] = true;
        $array["marketingware"] = true;
        $array["mailing"] = true;
        $array["downloads"] = true;
        $array["gamble"] = true;
    }
    if ($WizardWebFilteringLevel == 1) {
        $array["p**n"] = true;
        $array["dating"] = true;
        $array["mixed_adult"] = true;
        $array["sex/lingerie"] = true;
    }
    if ($WizardWebFilteringLevel == 2) {
        $array["publicite"] = true;
        $array["tracker"] = true;
        $array["marketingware"] = true;
        $array["mailing"] = true;
    }
    if ($WizardWebFilteringLevel == 3) {
        $array["audio-video"] = true;
        $array["webtv"] = true;
        $array["music"] = true;
        $array["movies"] = true;
        $array["games"] = true;
        $array["gamble"] = true;
        $array["socialnet"] = true;
        $array["webradio"] = true;
        $array["chat"] = true;
        $array["webphone"] = true;
        $array["downloads"] = true;
    }
    $ruleid = 0;
    writeprogress(82, "{activate_webfiltering_service}: {creating_rules}");
    while (list($key, $val) = each($array)) {
        $q = new mysql_squid_builder();
        $q->QUERY_SQL("DELETE FROM webfilter_blks WHERE category='{$key}' AND modeblk=0 AND webfilter_id='{$ruleid}'");
        $q->QUERY_SQL("INSERT IGNORE INTO webfilter_blks (webfilter_id,category,modeblk) VALUES ('{$ruleid}','{$key}','0')");
        if (!$q->ok) {
            echo $q->mysql_error_html();
            return;
        }
    }
    $q->QUERY_SQL("DELETE FROM webfilter_blks WHERE category='liste_bu' AND modeblk=1 AND webfilter_id='{$ruleid}'");
    $q->QUERY_SQL("INSERT IGNORE INTO webfilter_blks (webfilter_id,category,modeblk) VALUES ('{$ruleid}','liste_bu','1')");
    @file_put_contents("/etc/artica-postfix/settings/Daemons/SquidUrgency", 0);
    @chmod("/etc/artica-postfix/settings/Daemons/SquidUrgency", 0755);
    writeprogress(82, "{activate_webfiltering_service}: {building_settings}");
    shell_exec("{$php} /usr/share/artica-postfix/exec.squidguard.php --build --force >/dev/null 2>&1");
    writeprogress(82, "{activate_webfiltering_service}: {reconfiguring_proxy_service}");
    shell_exec("{$php} /usr/share/artica-postfix/exec.squid.php --build --force >/dev/null 2>&1");
    writeprogress(82, "{activate_webfiltering_service} {restarting_proxy_service}");
    shell_exec("/etc/init.d/squid restart --force");
    writeprogress(82, "{activate_webfiltering_service} {restarting_webfiltering_service}");
    shell_exec("/etc/init.d/ufdb restart --force");
    writeprogress(82, "{activate_webfiltering_service} {done}");
}