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"];
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}"); }