aboutsummaryrefslogtreecommitdiffstats
path: root/config/dnsblacklist/dnsblacklist.tmp.old
diff options
context:
space:
mode:
authormcrane <mctch@yahoo.com>2009-10-02 12:15:18 -0600
committermcrane <mctch@yahoo.com>2009-10-02 13:48:00 -0600
commit268a257deb2a3d22ddfe3ccd99c9002b46fb0f18 (patch)
tree1d462843998595f8093c42ea5ff93fffc4ddadc5 /config/dnsblacklist/dnsblacklist.tmp.old
parent1904ec30efb7260c8aab675fb58addc61c73a162 (diff)
downloadpfsense-packages-268a257deb2a3d22ddfe3ccd99c9002b46fb0f18.tar.gz
pfsense-packages-268a257deb2a3d22ddfe3ccd99c9002b46fb0f18.tar.bz2
pfsense-packages-268a257deb2a3d22ddfe3ccd99c9002b46fb0f18.zip
Introducing a dnsblacklist a new package created by the collaboration of xa0z and mcrane.
Diffstat (limited to 'config/dnsblacklist/dnsblacklist.tmp.old')
-rw-r--r--config/dnsblacklist/dnsblacklist.tmp.old276
1 files changed, 276 insertions, 0 deletions
diff --git a/config/dnsblacklist/dnsblacklist.tmp.old b/config/dnsblacklist/dnsblacklist.tmp.old
new file mode 100644
index 00000000..e9fadf57
--- /dev/null
+++ b/config/dnsblacklist/dnsblacklist.tmp.old
@@ -0,0 +1,276 @@
+<?php
+//http://cri.univ-tlse1.fr/blacklists/index_en.php
+
+ require_once('config.inc');
+ require("guiconfig.inc");
+ include("head.inc");
+
+ //set the config as a global variable
+ global $config;
+
+ //create a category blacklist array
+ $category['abortion'] = 'Abortion information excluding when related to religion';
+ $category['ads'] = 'Advert servers and banned URLs';
+ $category['adult'] = 'Sites containing adult material such as swearing but not porn';
+ $category['aggressive'] = 'Similar to violence but more promoting than depicting';
+ $category['antispyware'] = 'Sites that remove spyware';
+ $category['artnudes'] = 'Art sites containing artistic nudity';
+ $category['astrology'] = 'Astrology websites';
+ $category['audio-video'] = 'Sites with audio or video downloads';
+ $category['banking'] = 'Banking websites';
+ $category['beer'] = 'Sites with information on beer or liquors';
+ $category['blog'] = 'Journal/Diary websites';
+ $category['cellphones'] = 'Stuff for mobile/cell phones';
+ $category['chat'] = 'Sites with chat rooms etc';
+ $category['childcare'] = 'Sites to do with childcare';
+ //$category['cleaning'] = 'Sites to do with cleaning';
+ //$category['clothing'] = 'Sites about and selling clothing';
+ $category['contraception'] = 'Information about contraception';
+ //$category['culinary'] = 'Sites about cooking et al';
+ $category['dating'] = 'Sites about dating';
+ $category['desktopsillies'] = 'Sites containing screen savers, backgrounds, cursers, pointers, and themes';
+ $category['dialers'] = 'Sites with dialers such as those for pornography or trojans';
+ $category['drugs'] = 'Drug related sites';
+ $category['ecommerce'] = 'Sites that provide online shopping';
+ $category['entertainment'] = 'Sites that promote movies, books, magazine, humor';
+ $category['filehosting'] = 'Sites to do with filehosting';
+ //$category['frencheducation'] = 'Sites to do with french education';
+ $category['gambling'] = 'Gambling sites including stocks and shares';
+ $category['games'] = 'Game related sites';
+ //$category['gardening'] = 'Gardening sites';
+ $category['government'] = 'Military and schools etc';
+ //$category['guns'] = 'Sites with guns';
+ $category['hacking'] = 'Hacking/cracking information';
+ //$category['homerepair'] = 'Sites about home repair';
+ //$category['hygiene'] = 'Sites about hygiene and other personal grooming related stuff';
+ $category['instantmessaging'] = 'Sites that contain messenger client download and web-based messaging sites';
+ //$category['jewelry'] = 'Sites about and selling jewelry';
+ $category['jobsearch'] = 'Sites for finding jobs';
+ $category['kidstimewasting'] = 'Sites kids often waste time on';
+ $category['mail'] = 'Webmail and email sites';
+ $category['marketingware'] = 'Sites about marketing products';
+ $category['medical'] = 'Medical websites';
+ $category['mixed_adult'] = 'Mixed adult content sites';
+ $category['mobile-phone'] = 'Sites to do with mobile phones';
+ $category['naturism'] = 'Sites that contain nude pictures and/or promote a nude lifestyle';
+ $category['news'] = 'News sites';
+ $category['onlineauctions'] = 'Online auctions';
+ $category['onlinegames'] = 'Online gaming sites';
+ $category['onlinepayment'] = 'Online payment sites';
+ $category['personalfinance'] = 'Personal finance sites';
+ //$category['pets'] = 'Pet sites';
+ $category['phishing'] = 'Sites attempting to trick people into giving out private information.';
+ $category['porn'] = 'Pornography';
+ $category['proxy'] = 'Sites with proxies to bypass filters';
+ $category['radio'] = 'non-news related radio and television';
+ $category['ringtones'] = 'Sites containing ring tones, games, pictures and other';
+ $category['searchengines'] = 'Search engines such as google';
+ $category['sect'] = 'Sites about religious groups';
+ $category['sexuality'] = 'Sites dedicated to sexuality, possibly including adult material';
+ $category['shopping'] = 'Shopping sites';
+ $category['socialnetworking'] = 'Social networking websites';
+ $category['sportnews'] = 'Sport news sites';
+ $category['sports'] = 'All sport sites';
+ $category['spyware'] = 'Sites who run or have spyware software to download';
+ $category['updatesites'] = 'Sites where software updates are downloaded from including virus sigs';
+ $category['vacation'] = 'Sites about going on holiday';
+ $category['violence'] = 'Sites containing violence';
+ $category['virusinfected'] = 'Sites who host virus infected files';
+ $category['warez'] = 'Sites with illegal pirate software';
+ $category['weather'] = 'Weather news sites and weather related';
+ //$category['weapons'] = 'Sites detailing or selling weapons';
+ $category['webmail'] = 'Just webmail sites';
+
+ //get line count for domains list
+ function line_number ($file) {
+ $result = trim(exec("wc -l $file"));
+ $result_array = explode (" ", $result);
+ return $result_array[0];
+ }
+
+ //print_r($_POST);
+ //$x = 0;
+ //foreach($_POST['blacklist'] as $value) {
+ //$blacklist[$x]['name'] = $val;
+ //$blacklist[$value] = 'zzz';
+ //echo "\$category[\$x]['name'] = '$val';<br>";
+ //echo "\$category['$value'] = 'zzz'; <br/>\n";
+ //$x++;
+ //}
+ //unset($x);
+ //echo "<pre>";
+ //print_r($_POST["blacklist"]);
+ //echo "</pre>";
+ //foreach($_POST["blacklist"] as $key => $value) {
+ //echo "name: ".$value."<br />";
+ //$x++;
+ //}
+
+if (count($_POST)>0) {
+ $dnsmasqfile = "/usr/local/etc/dnsmasq.conf";
+ $targetfile = "/usr/local/etc/dnsmasq.blacklist.conf";
+ $includestring = "conf-file=/usr/local/etc/dnsmasq.blacklist.conf";
+ $dnsmasqconf = "/usr/local/etc/dnsmasq.conf";
+ //clear previous values
+ foreach($category as $key => $value) {
+ $config['installedpackages']['dnsblacklist']['config'][0][$key] = '';
+ }
+ if ($_POST['enable'] == 1) {
+ //echo "enabled";
+ $config['installedpackages']['dnsblacklist_settings']['config'][0]['enable'] = 1;
+ }
+ else {
+ //echo "disabled";
+ $config['installedpackages']['dnsblacklist_settings']['config'][0]['enable'] = 0;
+ }
+ //add the include entry for dnsmasq.blacklist.conf to dnsmasq.conf
+ if (file_exists($dnsmasqfile)) {
+ $getdnsmasq = file_get_contents($dnsmasqfile);
+ if(stristr($getdnsmasq,'conf-file=/usr/local/etc/dnsmasq.blacklist.conf') === TRUE) {
+ //include found no need to add it
+ }
+ else {
+ $myfhandle = fopen($dnsmasqconf, 'r+');
+ fwrite($myfhandle, $includestring);
+ fclose($myfhandle);
+ }
+ }
+ else {
+ $my2fhandle = fopen($dnsmasqconf, 'x+');
+ fwrite($my2fhandle, $includestring);
+ fclose($my2fhandle);
+ }
+ //truncate the dnsmasq.blacklist.conf file
+ if (file_exists($targetfile)) {
+ $fh = fopen($targetfile, 'w');
+ fclose($fh);
+ }
+ //build the dnsmasq.blacklist.conf
+ if (count($_POST["blacklist"]) > 0) {
+ foreach($_POST["blacklist"] as $value) {
+ //set the current selected values
+ $blackfile = "blacklists/$value/domains";
+ $config['installedpackages']['dnsblacklist']['config'][0][$value] = 1;
+ //if enabled write the selected categories to the dnsmasq.blacklist.conf
+ if ($config['installedpackages']['dnsblacklist_settings']['config'][0]['enable'] == 1) {
+ $fh2 = fopen($targetfile, 'a');
+ $fh = fopen($blackfile,'r');
+ while($line=fgets($fh)) {
+ fwrite($fh2, "address=/" .trim($line). "/74.125.45.100". "\n");
+ }
+ fclose($fh);
+ fclose($fh2);
+ }
+ }
+ }
+ write_config();
+ services_dnsmasq_configure();
+ sleep(1);
+ $savemsg_dnsb = "DNS Blacklist settings have been saved.";
+}
+?>
+
+<?php include("fbegin.inc"); ?>
+<p class="pgtitle">Services: DNS Blacklist</p>
+<form method=POST action="">
+
+<?php
+if ($config['installedpackages']['dnsblacklist_settings']['config'][0]['enable'] == 1) {
+ echo "<input name='enable' type='checkbox' value='1' checked>\n";
+}
+else {
+ echo "<input name='enable' type='checkbox' value='1'>\n";
+}
+?>
+
+<strong>Enable DNS Blacklist</strong><br><br>
+<table width="100%" border="0" cellpadding="0" cellspacing="0">
+<tr><td class="tabcont" >
+<?php if ($savemsg_dnsb) print_info_box($savemsg_dnsb); ?>
+
+Below is a scroll-box filled with categories you can select to be added to your blacklist. <br><br> Each category has a list of known domains/sites that will be denied access by users of this network.
+<br><br><i>(Note: Using all categories at once will require 300Mb of free memory. The <b>adult</b> and <b>porn</b> categories are rather memory intensive, requiring 200Mb together.)</i>
+<br><br><br>
+
+function ListFiles($dir) {
+
+ if($dh = opendir($dir)) {
+
+ $files = Array();
+ $inner_files = Array();
+
+ while($file = readdir($dh)) {
+ if($file != "." && $file != ".." && $file[0] != '.') {
+ if(is_dir($dir . "/" . $file)) {
+ array_push($files, $dir);
+ //$inner_files = ListFiles($dir . "/" . $file);
+ //if(is_array($inner_files)) $files = array_merge($files, $inner_files);
+ } else {
+ //array_push($files, $dir . "/" . $file);
+ }
+ }
+ }
+
+ closedir($dh);
+ return $files;
+ }
+}
+
+
+foreach (ListFiles('/usr/local/www/packages/dnsblacklist/') as $key=>$file){
+ echo $file ."<br />\n";
+}
+
+
+
+<div style="height:340px;width:680px;overflow:scroll;">
+<?php
+/*
+echo "<table>\n";
+foreach($category as $key => $value) {
+ $domain_count = line_number("blacklists/$key/domains");
+ //echo "name: ".$key."<br />";
+ echo "<tr>\n";
+ if ($config['installedpackages']['dnsblacklist']['config'][0][$key] == 1) {
+ // echo "<td><input type='checkbox' name='blacklist[]' value='$key' checked /></td><td><strong>$key<strong></td><td>$value</td><td><i>($domain_count domains)</i></td>\n";
+ }
+ else {
+ // echo " <td><input type='checkbox' name='blacklist[]' value='$key' /></td><td><strong>$key</strong></td><td>$value</td><td><i>($domain_count domains)</i></td>\n";
+ }
+ echo "</tr>\n";
+ $x++;
+}
+echo "</table>\n";
+*/
+?>
+</div>
+<br />
+<br />
+<!--
+Select a category to edit:
+-->
+<?php
+////$tmp_category = array(1=> "Edit Category", );
+////$tmp_category = str_replace(" ", " ", $category);
+//echo "<SELECT name=category>\n";
+//foreach($category as $key => $value) {
+// echo "<OPTION value='".$key."'>".$key."</option>\n";
+// $x++;
+//}
+//echo "</select>\n";
+?>
+<!-- or <u>Add your own domains</u> <i>(Coming Soon)</i>
+<br />
+<br />
+-->
+
+<input type="submit" value="Save">
+</td>
+</tr>
+</table>
+</form>
+
+<?php include("fend.inc"); ?>
+
+</body>
+</html> \ No newline at end of file