aboutsummaryrefslogtreecommitdiffstats
path: root/config/countryblock/countryblock.sh
diff options
context:
space:
mode:
authorTom Schaefer <tom@tomschaefer.org>2010-10-06 01:50:20 -0400
committerTom Schaefer <tom@tomschaefer.org>2010-10-06 01:50:20 -0400
commit2f813641d14c2bd5fdc7a8b789ac61f83ba0857a (patch)
tree3a64df572cc5156c1ee123de9dfe4011318ab3d2 /config/countryblock/countryblock.sh
parentc01d3baba7d098f7f46a43dd1ec732e8196c4095 (diff)
downloadpfsense-packages-2f813641d14c2bd5fdc7a8b789ac61f83ba0857a.tar.gz
pfsense-packages-2f813641d14c2bd5fdc7a8b789ac61f83ba0857a.tar.bz2
pfsense-packages-2f813641d14c2bd5fdc7a8b789ac61f83ba0857a.zip
ver1.8 email notifications and new cron script
Diffstat (limited to 'config/countryblock/countryblock.sh')
-rwxr-xr-x[-rw-r--r--]config/countryblock/countryblock.sh85
1 files changed, 84 insertions, 1 deletions
diff --git a/config/countryblock/countryblock.sh b/config/countryblock/countryblock.sh
index 5c736a77..11a8c335 100644..100755
--- a/config/countryblock/countryblock.sh
+++ b/config/countryblock/countryblock.sh
@@ -1 +1,84 @@
-/usr/local/www/packages/countryblock/execute.sh \ No newline at end of file
+#!/bin/sh
+
+#check if countryblock running
+export resultr=`pfctl -s rules | grep -c countryblock`
+#echo $resultr
+if [ "$resultr" -gt "0" ]; then
+ echo running
+ exit 1
+else
+ echo not running
+ /usr/bin/logger -s "Countryblock was found not running"
+ echo "Countryblock not running" | /usr/local/bin/php /usr/local/www/packages/countryblock/email_send.php
+fi
+
+pfctl -t countryblock -T kill
+sed -i -e '/countryblock/d' /tmp/rules.debug
+
+#Now edit /tmp/rules.debug
+
+#find my line for table
+export i=`grep -n 'block quick from any to <snort2c>' /tmp/rules.debug | grep -o '[0-9]\{2,4\}'`
+export t=`grep -n 'User Aliases' /tmp/rules.debug |grep -o '[0-9]\{1,2\}'`
+
+i=$(($i+'1'))
+t=$(($t+'1'))
+#i = line where <snort2c> is
+#t is where 'User Aliases' is
+echo $i
+echo $t
+
+rm /tmp/rules.debug.tmp
+
+#Insert table-entry limit
+sed -i -e '/900000/d' /tmp/rules.debug
+while read line
+ do a=$(($a+1));
+ #echo $a;
+ if [ "$a" = "$t" ]; then
+ echo "" >> /tmp/rules.debug.tmp
+ echo "set limit table-entries 900000" >> /tmp/rules.debug.tmp
+ fi
+ echo $line >> /tmp/rules.debug.tmp
+done < "/tmp/rules.debug"
+
+mv /tmp/rules.debug /tmp/rules.debug.old
+mv /tmp/rules.debug.tmp /tmp/rules.debug
+
+pfctl -o basic -f /tmp/rules.debug > errorOUT.txt 2>&1
+
+rm /tmp/rules.debug.tmp
+
+#Insert countryblock rules
+a="0"
+echo $a
+while read line
+ do a=$(($a+1));
+ echo $a;
+ if [ "$a" = "$i" ]; then
+ echo "" >> /tmp/rules.debug.tmp
+ echo "#countryblock" >> /tmp/rules.debug.tmp
+ echo "table <countryblock> persist file '/usr/local/www/packages/countryblock/lists/countries.txt'" >> /tmp/rules.debug.tmp
+ echo "table <countryblockW> persist file '/usr/local/www/packages/countryblock/countries-white.txt'" >> /tmp/rules.debug.tmp
+
+ for i in $(cat /usr/local/www/packages/countryblock/interfaces.txt); do
+ echo "pass quick from <countryblockW> to $i label 'countryblock'" >> /tmp/rules.debug.tmp
+ echo "pass quick from $i to <countryblockW> label 'countryblock'" >> /tmp/rules.debug.tmp
+ if [ -f logging ]; then
+ echo "block log quick from <countryblock> to $i label 'countryblock'" >> /tmp/rules.debug.tmp
+ else
+ echo "block quick from <countryblock> to $i label 'countryblock'" >> /tmp/rules.debug.tmp
+ fi
+ if [ -f OUTBOUND ]; then
+ echo "block quick from $i to <countryblock> label 'countryblock'" >> /tmp/rules.debug.tmp
+ fi
+ done
+ fi
+ echo $line >> /tmp/rules.debug.tmp
+done < "/tmp/rules.debug"
+
+mv /tmp/rules.debug /tmp/rules.debug.old
+mv /tmp/rules.debug.tmp /tmp/rules.debug
+
+rm errorOUT.txt
+pfctl -o basic -f /tmp/rules.debug > /usr/local/www/packages/countryblock/errorOUT.txt 2>&1