aboutsummaryrefslogtreecommitdiffstats
path: root/config/ipblocklist
diff options
context:
space:
mode:
Diffstat (limited to 'config/ipblocklist')
-rw-r--r--config/ipblocklist/8/countryblock_IPBlocklist.widget.tmp116
-rwxr-xr-xconfig/ipblocklist/8/ipblocklist.inc18
-rwxr-xr-xconfig/ipblocklist/8/ipblocklist.tmp5
-rwxr-xr-xconfig/ipblocklist/8/ipblocklist.xml7
4 files changed, 139 insertions, 7 deletions
diff --git a/config/ipblocklist/8/countryblock_IPBlocklist.widget.tmp b/config/ipblocklist/8/countryblock_IPBlocklist.widget.tmp
new file mode 100644
index 00000000..a62fcede
--- /dev/null
+++ b/config/ipblocklist/8/countryblock_IPBlocklist.widget.tmp
@@ -0,0 +1,116 @@
+<?php
+/*
+ Copyright 2011 Thomas Schaefer - Tomschaefer.org
+ Part of pfSense widgets (www.pfsense.com)
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are met:
+
+ 1. Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+
+ 2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+
+ THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
+ INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
+ AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
+ OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ POSSIBILITY OF SUCH DAMAGE.
+*/
+
+$nocsrf = true;
+
+@require_once("guiconfig.inc");
+@require_once("pfsense-utils.inc");
+@require_once("functions.inc");
+
+$ipblocklist_file = "/usr/local/www/packages/ipblocklist/ipblocklist.php";
+$countryblock_file = "/usr/local/www/packages/countryblock/countryblock.php";
+
+echo "<table style=\"padding-top:0px; padding-bottom:0px; padding-left:0px; padding-right:0px\" width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\"";
+echo" <tr>";
+if (file_exists($ipblocklist_file)) {
+ echo " <td class=\"listhdrr\">IP-Blocklist";
+ ob_start();
+ $results = exec("/sbin/pfctl -s rules | grep -c ipblocklist");
+ ob_end_clean();
+ if ($results > '2') echo "<img src ='/themes/{$g['theme']}/images/icons/icon_interface_up.gif'>";
+ else
+ echo "<img src ='/themes/{$g['theme']}/images/icons/icon_interface_down.gif'>";
+ echo "</td>";
+}
+if (file_exists($countryblock_file)) {
+ echo " <td class=\"listhdrr\">Countryblock";
+ ob_start();
+ $results = exec("/sbin/pfctl -s rules | grep -c countryblock");
+ ob_end_clean();
+ if ($results > '0') echo "<img src ='/themes/{$g['theme']}/images/icons/icon_interface_up.gif'>";
+ else
+ echo "<img src ='/themes/{$g['theme']}/images/icons/icon_interface_down.gif'>";
+ echo "</td>";
+}
+echo" </tr>";
+echo" <tr>";
+if (file_exists($ipblocklist_file)) {
+ echo " <td class=\"listlr\">";
+ ob_start();
+ $resultsIP = exec("/sbin/pfctl -T show -t ipblocklist |grep -v -c Z");
+ ob_end_clean();
+ echo $resultsIP;
+ echo " Networks";
+ echo "</td>";
+}
+if (file_exists($countryblock_file)) {
+ echo " <td class=\"listr\">";
+ ob_start();
+ $resultsCB = exec("pfctl -T show -t countryblock |grep -v -c Z");
+ ob_end_clean();
+ echo $resultsCB;
+ echo " Networks";
+ echo "</td>";
+}
+echo" </tr>";
+echo" <tr>";
+if (file_exists($ipblocklist_file)) {
+ ob_start();
+ $resultsIP = exec("tail -r /usr/local/www/packages/ipblocklist/errorOUT.txt");
+ ob_end_clean();
+ if ($resultsIP == "") {
+ echo " <td></td>";
+ } else {
+ echo " <td class=\"listlr\">";
+ echo "<br/><span style='color:red'>";
+ echo $resultsIP;
+ echo "</span>";
+ echo "</td>";
+ }
+}
+if (file_exists($countryblock_file)) {
+ ob_start();
+ $resultsCB = exec("tail -r /usr/local/www/packages/countryblock/errorOUT.txt");
+ ob_end_clean();
+ if ($resultsCB == "") {
+ echo " <td></td>";
+ } else {
+ echo " <td class=\"listlr\">";
+ echo "<br/><span style='color:red'>";
+ echo $resultsCB;
+ echo "</span>";
+ echo "</td>";
+ }
+}
+echo" </tr>";
+//echo" <tr>";
+//if (file_exists($ipblocklist_file)) echo " <td>&nbsp;</td>";
+//if (file_exists($countryblock_file)) echo " <td>&nbsp;</td>";
+//echo" </tr>";
+echo"</table>";
+
+?>
diff --git a/config/ipblocklist/8/ipblocklist.inc b/config/ipblocklist/8/ipblocklist.inc
index 003f28bf..545cb4ab 100755
--- a/config/ipblocklist/8/ipblocklist.inc
+++ b/config/ipblocklist/8/ipblocklist.inc
@@ -55,12 +55,16 @@ function php_install_command_ip()
//install PERL
- exec("pkg_add -r perl");
- exec("pkg_add -r p5-Net-CIDR");
- exec("pkg_add -r compat7x-i386.tbz");
- exec("pkg_add -r compat6x-i386.tbz");
+ exec("pkg_add -r ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8-stable/All/perl-5.12.4_2.tbz");
+ exec("pkg_add -r ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8-stable/All/p5-Net-CIDR-0.14.tbz");
+ //exec("pkg_add -r compat7x-i386.tbz");
+ //exec("pkg_add -r compat6x-i386.tbz");
+ exec("rehash");
//rename PHP files from .tmp to .php
+ exec("cp /tmp/countryblock_IPBlocklist.widget.tmp /usr/local/www/widgets/widgets/countryblock_IPBlocklist.widget.php");
+ unlink_if_exists("/tmp/countryblock_IPBlocklist.widget.tmp");
+
exec("cp /tmp/lists.txt /usr/local/www/packages/ipblocklist/lists.txt");
exec("cp /tmp/class.phpmailer.tmp /usr/local/www/packages/ipblocklist/class.phpmailer.php");
unlink_if_exists("/tmp/class.phpmailer.tmp ");
@@ -109,6 +113,9 @@ function php_install_command_ip()
exec("/usr/bin/touch /usr/local/www/packages/ipblocklist/OUTBOUND");
+ //Attempt to pull from a backup
+ exec("/bin/mkdir /usr/local/www/packages/ipblocklist_bkup");
+ exec("cp /usr/local/www/packages/ipblocklist_bkup/lists.txt /usr/local/www/packages/ipblocklist/lists.txt");
conf_mount_ro();
config_unlock();
@@ -121,11 +128,12 @@ function deinstall_command_ip()
$handle = popen("/usr/local/etc/rc.d/ipblocklist.sh stop", "r");
unlink_if_exists("/usr/local/pkg/ipblocklist.xml");
unlink_if_exists("/usr/local/pkg/ipblocklist.inc");
+ unlink_if_exists("/usr/local/pkg/pf/IP-Blocklist.sh");
exec("rm -R /usr/local/www/packages/ipblocklist/ipblocklists");
exec("rm -R /usr/local/www/packages/ipblocklist");
exec("rm /usr/local/etc/rc.d/IP-Blocklist.sh");
exec("pfctl -t ipblocklist -T kill");
- exec("ipfw -f flush");
+ //exec("ipfw -f flush");
conf_mount_ro();
}
diff --git a/config/ipblocklist/8/ipblocklist.tmp b/config/ipblocklist/8/ipblocklist.tmp
index ffbfdc57..9291a468 100755
--- a/config/ipblocklist/8/ipblocklist.tmp
+++ b/config/ipblocklist/8/ipblocklist.tmp
@@ -56,13 +56,16 @@ if (count($_POST)>0) {
//Now clear ipfw, and process each list to ipfw commands
exec("/bin/sh convert-execute.sh");
+
+ //Attempt to create a backup of user lists
+ mwexec("cp /usr/local/www/packages/ipblocklist/lists.txt /usr/local/www/packages/ipblocklist_bkup/lists.txt");
}
else {
//echo "disabled";
$config['installedpackages']['ipblocklist_settings']['config'][0]['enable'] = 0;
//Clear Lists
- mwexec("ipfw -f flush");
+ //mwexec("ipfw -f flush");
mwexec("pfctl -t ipblocklist -T kill");
mwexec("rm -R /usr/local/www/packages/ipblocklist/lists");
mwexec("sed -i -e '/ipblocklist/d' /tmp/rules.debug");
diff --git a/config/ipblocklist/8/ipblocklist.xml b/config/ipblocklist/8/ipblocklist.xml
index ca488d01..00ac22b8 100755
--- a/config/ipblocklist/8/ipblocklist.xml
+++ b/config/ipblocklist/8/ipblocklist.xml
@@ -41,7 +41,7 @@
<requirements>perl</requirements>
<faq>http://forum.pfsense.org/index.php/topic,24769.0.html</faq>
<name>IP Blocklist Settings</name>
- <version>0.3.4</version>
+ <version>0.3.5</version>
<title>Settings</title>
<include_file>/usr/local/pkg/ipblocklist.inc</include_file>
<menu>
@@ -154,6 +154,11 @@
<chmod>0755</chmod>
<item>http://www.pfsense.org/packages/config/ipblocklist/8/lists.txt</item>
</additional_files_needed>
+ <additional_files_needed>
+ <prefix>/tmp/</prefix>
+ <chmod>0644</chmod>
+ <item>http://www.pfsense.org/packages/config/ipblocklist/8/countryblock_IPBlocklist.widget.tmp</item>
+ </additional_files_needed>
<fields>
<field>
<fielddescr>Variable One</fielddescr>