aboutsummaryrefslogtreecommitdiffstats
path: root/config/ipblocklist/ipblocklist_list.tmp
diff options
context:
space:
mode:
authorScott Ullrich <sullrich@pfsense.org>2010-05-22 22:43:59 -0400
committerScott Ullrich <sullrich@pfsense.org>2010-05-22 22:43:59 -0400
commit0946cc52048c95dbf8a2c17578578be30d270c58 (patch)
tree873427d78c778ce6ab7c60e05a6b6f773c40b9eb /config/ipblocklist/ipblocklist_list.tmp
parent63d1f632b66a2a86da344044cbba4f89f07eee27 (diff)
downloadpfsense-packages-0946cc52048c95dbf8a2c17578578be30d270c58.tar.gz
pfsense-packages-0946cc52048c95dbf8a2c17578578be30d270c58.tar.bz2
pfsense-packages-0946cc52048c95dbf8a2c17578578be30d270c58.zip
Adding IP-Blocklist package: This package uses the pf (pfctl) to block IP addresses. For each IP range or list added a pf table is made and applied to the firewall to prevent traffic from being sent to and traffic from being received from the target. You can either enter an IP range manually (experimental) or add a list from sites like iblocklist.com. Tested on 1.2.2 and 1.2.3 with FF and IE.
Diffstat (limited to 'config/ipblocklist/ipblocklist_list.tmp')
-rwxr-xr-xconfig/ipblocklist/ipblocklist_list.tmp115
1 files changed, 115 insertions, 0 deletions
diff --git a/config/ipblocklist/ipblocklist_list.tmp b/config/ipblocklist/ipblocklist_list.tmp
new file mode 100755
index 00000000..669f4384
--- /dev/null
+++ b/config/ipblocklist/ipblocklist_list.tmp
@@ -0,0 +1,115 @@
+<html>
+<head>
+<a href="manual_add.php"><img src="../../themes/nervecenter/images/icons/icon_plus.gif" ALT="Manual" ALIGN=RIGHT></a>
+Add List URL: <form method="post" action="">
+<input name="content" type="text" />
+<input type="image" src="../../themes/nervecenter/images/icons/icon_plus.gif" value="submit">
+<a href="purge.php?line=0">Purge All</a>
+
+<STYLE type="text/css">
+ a img {border:none; }
+ </STYLE>
+</head>
+
+<?php
+
+function delLineFromFile($fileName, $lineNum){
+// check the file exists
+ if(!is_writable($fileName))
+ {
+ // print an error
+ print "The file $fileName is not writable";
+ // exit the function
+ exit;
+ }
+ else
+ {
+ // read the file into an array
+ $arr = file($fileName);
+ }
+
+ // the line to delete is the line number minus 1, because arrays begin at zero
+ $lineToDelete = $lineNum-1;
+
+ // check if the line to delete is greater than the length of the file
+ if($lineToDelete > sizeof($arr))
+ {
+ // print an error
+ print "You have chosen a line number, <b>[$lineNum]</b>, higher than the length of the file.";
+ // exit the function
+ exit;
+ }
+
+ //remove the line
+ unset($arr["$lineToDelete"]);
+
+ // open the file for reading
+ if (!$fp = fopen($fileName, 'w+'))
+ {
+ // print an error
+ print "Cannot open file ($fileName)";
+ // exit the function
+ exit;
+ }
+
+ // if $fp is valid
+ if($fp)
+ {
+ // write the array to the file
+ foreach($arr as $line) { fwrite($fp,$line); }
+
+ // close the file
+ fclose($fp);
+ }
+
+echo "done";
+}
+
+
+$myFile = "lists.txt";
+$content = $_REQUEST['content'];
+$fh = fopen($myFile, 'a+');
+fwrite($fh, $content);
+if (strlen($content) > 1) {
+ fwrite($fh, "\n");
+ } else {
+}
+fclose($fh);
+
+
+//echo (filesize($myFile));
+if (filesize($myFile) > 1) {
+ //$fh = fopen($myFile, 'r');
+ //$theData = fread($fh, filesize($myFile));
+ //fclose($fh);
+ echo "<br/> Current List(s): <br/>";
+ // Get the whole file into a single string
+ $fileContents = file_get_contents($myFile);
+
+ // Explode the file contents string by each line
+ $lines = explode(PHP_EOL, $fileContents); // Replace PHP_EOL with "\r\n" or "\n" or "\r" if you like
+
+ // Iterate through each line and do what you need with it
+
+ foreach ($lines as $line) {
+ $i++;
+ echo "<a href=purge.php?line=$i style='border-style: none'><img src='../../themes/nervecenter/images/icons/icon_x.gif'></a>";
+ echo " ";
+ echo $line;
+ //echo "";
+ // echo $i;
+ echo "<br/>";
+
+ }
+
+
+ //echo $theData;
+
+
+}
+echo "<br/><br/>";
+
+
+
+
+?> \ No newline at end of file