function build() { $users = new usersMenus(); $sock = new sockets(); $unix = new unix(); $chown = $unix->find_program("chown"); $chmod = $unix->find_program("chmod"); if (!$users->SQUIDGUARD_INSTALLED) { return null; } if ($sock->GET_INFO("squidGuardEnabled") != 1) { return null; } $s = new squidguard(); $datas = $s->BuildConf(); @file_put_contents("/etc/squid/squidGuard.conf", $datas); $user = GetSquidUser(); shell_exec("{$chown} -R {$user} /var/lib/squidguard/*"); shell_exec("{$chmod} -R 755 /var/lib/squidguard/*"); shell_exec($users->SQUID_BIN_PATH . " -k reconfigure"); }
function build() { $users = new usersMenus(); $sock = new sockets(); $unix = new unix(); $chown = $unix->find_program("chown"); $chmod = $unix->find_program("chmod"); $squidbin = $unix->find_program("squid3"); if (!is_file($squidbin)) { $squidbin = $unix->find_program("squid"); } $GLOBALS["SQUIDBIN"] = $squidbin; $installed = false; if ($users->SQUIDGUARD_INSTALLED) { $installed = true; } if ($users->APP_UFDBGUARD_INSTALLED) { $installed = true; } if (!$installed) { return false; } $s = new squidguard(); $datas = $s->BuildConf(); @file_put_contents("/etc/squid/squidGuard.conf", $datas); @mkdir("/etc/ufdbguard", null, true); @file_put_contents("/etc/ufdbguard/ufdbGuard.conf", $datas); if ($users->APP_UFDBGUARD_INSTALLED) { BuildMissingUfdBguardDBS(); ufdbguard_schedule(); } $user = GetSquidUser(); if (!is_file("/squid/log/squid/squidGuard.log")) { @mkdir("/squid/log/squid", 755, true); @file_put_contents("/squid/log/squid/squidGuard.log", "#"); shell_exec("{$chown} {$user} /squid/log/squid/squidGuard.log"); } shell_exec("{$chown} -R {$user} /var/lib/squidguard/*"); shell_exec("{$chown} -R {$user} /var/log/squid/*"); shell_exec("{$chmod} -R 755 /var/lib/squidguard/*"); shell_exec("{$chmod} -R ug+x /var/lib/squidguard/*"); if (is_file("/var/log/ufdbguard/ufdbguardd.log")) { @chmod("/var/log/ufdbguard/ufdbguardd.log", 777); } if (is_file("/etc/init.d/ufdb")) { shell_exec("/etc/init.d/ufdb reconfig >/dev/null 2>&1"); } PersonalCategoriesRepair(); shell_exec("{$GLOBALS["SQUIDBIN"]} -k reconfigure"); send_email_events("SquidGuard/ufdbGuard rules was rebuilded", "This is new configuration file of the squidGuard/ufdbGuard:\n-------------------------------------\n{$datas}", "system"); shell_exec(LOCATE_PHP5_BIN2() . " " . dirname(__FILE__) . "/exec.c-icap.php --maint-schedule"); }
function WriteCategory($category){ $squidguard=new squidguard(); echo "Starting......: Artica database writing category $category\n"; echo "Starting......: Artica database /etc/dansguardian/lists/blacklist-artica/$category/domains\n"; echo "Starting......: Artica database /var/lib/squidguard/blacklist-artica/$category\n"; @mkdir("/etc/dansguardian/lists/blacklist-artica/$category",0755,true); @mkdir("/var/lib/squidguard/blacklist-artica/$category",0755,true); if(!is_file("/etc/dansguardian/lists/blacklist-artica/$category/urls")){@file_put_contents("/etc/dansguardian/lists/blacklist-artica/$category/urls","#");} if(!is_file("/var/lib/squidguard/blacklist-artica/$category/urls")){@file_put_contents("/var/lib/squidguard/blacklist-artica/$category/urls","#");} $sql="SELECT pattern FROM dansguardian_community_categories WHERE enabled=1 and category='$category'"; $q=new mysql(); $results=$q->QUERY_SQL($sql,"artica_backup"); if(!$q->ok){ echo "Starting......: Artica database $q->mysql_error\n"; return; } $num=mysql_num_rows($results); echo "Starting......: Artica database $num domains\n"; $domain_path_1="/etc/dansguardian/lists/blacklist-artica/$category/domains"; $domain_path_2="/var/lib/squidguard/blacklist-artica/$category/domains"; $fh1 = fopen($domain_path_1, 'w+'); $fh2 = fopen($domain_path_2, 'w+'); while($ligne=@mysql_fetch_array($results,MYSQL_ASSOC)){ if($ligne["pattern"]==null){continue;} if(!$squidguard->VerifyDomainCompiledPattern($ligne["pattern"])){continue;} fwrite($fh1, $ligne["pattern"]."\n"); fwrite($fh2, $ligne["pattern"]."\n"); } fclose($fh1); fclose($fh2); echo "Starting......: finish\n\n"; }
function WriteCategory($category) { $squidguard = new squidguard(); $q = new mysql_squid_builder(); echo "Starting......: " . date("H:i:s") . " Artica database writing category {$category}\n"; echo "Starting......: " . date("H:i:s") . " Artica database /etc/dansguardian/lists/blacklist-artica/{$category}/domains\n"; echo "Starting......: " . date("H:i:s") . " Artica database /var/lib/squidguard/blacklist-artica/{$category}\n"; @mkdir("/etc/dansguardian/lists/blacklist-artica/{$category}", 0755, true); @mkdir("/var/lib/squidguard/blacklist-artica/{$category}", 0755, true); if (!is_dir("/var/lib/squidguard/{$category}")) { @mkdir("/var/lib/squidguard/{$category}", 0755, true); } if (!is_dir("/etc/dansguardian/lists/blacklist/{$category}/urls")) { @mkdir("/etc/dansguardian/lists/blacklist/{$category}/urls", 755, true); } if (!is_file("/etc/dansguardian/lists/blacklist/{$category}/urls")) { @file_put_contents("/etc/dansguardian/lists/blacklist/{$category}/urls", "\n"); } if (!is_file("/var/lib/squidguard/{$category}/urls")) { @file_put_contents("/var/lib/squidguard/{$category}/urls", "\n"); } $tablesource = "category_" . $q->category_transform_name($category); $sql = "SELECT pattern FROM {$tablesource} WHERE enabled=1"; $results = $q->QUERY_SQL($sql, "artica_backup"); if (!$q->ok) { echo "Starting......: " . date("H:i:s") . " Artica database {$q->mysql_error}\n"; return; } $num = mysql_num_rows($results); echo "Starting......: " . date("H:i:s") . " Artica database {$num} domains\n"; $domain_path_1 = "/etc/dansguardian/lists/blacklist/{$category}/domains"; $domain_path_2 = "/var/lib/squidguard/{$category}/domains"; $fh1 = fopen($domain_path_1, 'w+'); $fh2 = fopen($domain_path_2, 'w+'); while ($ligne = @mysql_fetch_array($results, MYSQL_ASSOC)) { if ($ligne["pattern"] == null) { continue; } if (!$squidguard->VerifyDomainCompiledPattern($ligne["pattern"])) { continue; } fwrite($fh1, $ligne["pattern"] . "\n"); fwrite($fh2, $ligne["pattern"] . "\n"); } fclose($fh1); fclose($fh2); echo "Starting......: " . date("H:i:s") . " finish\n\n"; }