[v2,8/8] ipblacklist: Build infrastructure

Message ID 20200427143123.6378-9-ipfr@tfitzgeorge.me.uk
State Superseded
Headers
Series ipblacklist: IP Address Blacklists |

Commit Message

Tim FitzGeorge April 27, 2020, 2:31 p.m. UTC
  Signed-off-by: Tim FitzGeorge <ipfr@tfitzgeorge.me.uk>
---
 config/rootfiles/common/aarch64/stage2      |  1 +
 config/rootfiles/common/configroot          |  2 ++
 config/rootfiles/common/ipblacklist-sources |  1 +
 config/rootfiles/common/logwatch            |  2 ++
 config/rootfiles/common/misc-progs          |  2 ++
 config/rootfiles/common/stage2              |  1 +
 config/rootfiles/common/web-user-interface  |  3 ++
 config/rootfiles/common/x86_64/stage2       |  1 +
 lfs/configroot                              |  4 +--
 lfs/ipblacklist-sources                     | 53 +++++++++++++++++++++++++++++
 lfs/logwatch                                |  2 ++
 make.sh                                     |  1 +
 src/misc-progs/Makefile                     |  2 +-
 13 files changed, 72 insertions(+), 3 deletions(-)
 create mode 100644 config/rootfiles/common/ipblacklist-sources
 create mode 100644 lfs/ipblacklist-sources
  

Patch

diff --git a/config/rootfiles/common/aarch64/stage2 b/config/rootfiles/common/aarch64/stage2
index 82e2c20d0..e78137d08 100644
--- a/config/rootfiles/common/aarch64/stage2
+++ b/config/rootfiles/common/aarch64/stage2
@@ -96,6 +96,7 @@  usr/local/bin/convert-dns-settings
 usr/local/bin/convert-ovpn
 usr/local/bin/filesystem-cleanup
 usr/local/bin/hddshutdown
+usr/local/bin/ipblacklist
 usr/local/bin/ipsec-interfaces
 usr/local/bin/makegraphs
 usr/local/bin/qosd
diff --git a/config/rootfiles/common/configroot b/config/rootfiles/common/configroot
index 67c4abc75..e2ebf2c84 100644
--- a/config/rootfiles/common/configroot
+++ b/config/rootfiles/common/configroot
@@ -82,6 +82,8 @@  var/ipfire/geoip-functions.pl
 var/ipfire/graphs.pl
 var/ipfire/header.pl
 var/ipfire/ids-functions.pl
+var/ipfire/ipblacklist
+#var/ipfire/ipblacklist/settings
 var/ipfire/isdn
 #var/ipfire/isdn/settings
 var/ipfire/key
diff --git a/config/rootfiles/common/ipblacklist-sources b/config/rootfiles/common/ipblacklist-sources
new file mode 100644
index 000000000..7f54b1bbf
--- /dev/null
+++ b/config/rootfiles/common/ipblacklist-sources
@@ -0,0 +1 @@ 
+var/ipfire/ipblacklist/sources
diff --git a/config/rootfiles/common/logwatch b/config/rootfiles/common/logwatch
index c47fb4199..8b4810d97 100644
--- a/config/rootfiles/common/logwatch
+++ b/config/rootfiles/common/logwatch
@@ -192,6 +192,7 @@  usr/share/logwatch/default.conf/services/zz-sys.conf
 usr/share/logwatch/dist.conf/logfiles
 usr/share/logwatch/dist.conf/services
 usr/share/logwatch/dist.conf/services/dialup.conf
+usr/share/logwatch/dist.conf/services/ipblacklist.conf
 #usr/share/logwatch/lib
 usr/share/logwatch/lib/Logwatch.pm
 #usr/share/logwatch/scripts
@@ -256,6 +257,7 @@  usr/share/logwatch/scripts/services/http
 usr/share/logwatch/scripts/services/imapd
 #usr/share/logwatch/scripts/services/in.qpopper
 usr/share/logwatch/scripts/services/init
+usr/share/logwatch/scripts/services/ipblacklist
 usr/share/logwatch/scripts/services/ipop3d
 usr/share/logwatch/scripts/services/iptables
 usr/share/logwatch/scripts/services/kernel
diff --git a/config/rootfiles/common/misc-progs b/config/rootfiles/common/misc-progs
index c48a474b2..d17f3dd80 100644
--- a/config/rootfiles/common/misc-progs
+++ b/config/rootfiles/common/misc-progs
@@ -10,8 +10,10 @@  usr/local/bin/extrahdctrl
 usr/local/bin/fireinfoctrl
 usr/local/bin/firewallctrl
 usr/local/bin/getconntracktable
+usr/local/bin/getipsetstat
 usr/local/bin/getipstat
 #usr/local/bin/iowrap
+usr/local/bin/ipblacklistctrl
 usr/local/bin/ipfirereboot
 usr/local/bin/ipsecctrl
 usr/local/bin/launch-ether-wake
diff --git a/config/rootfiles/common/stage2 b/config/rootfiles/common/stage2
index 8067df39b..78c55338d 100644
--- a/config/rootfiles/common/stage2
+++ b/config/rootfiles/common/stage2
@@ -95,6 +95,7 @@  usr/local/bin/convert-dns-settings
 usr/local/bin/convert-ovpn
 usr/local/bin/filesystem-cleanup
 usr/local/bin/hddshutdown
+usr/local/bin/ipblacklist
 usr/local/bin/ipsec-interfaces
 usr/local/bin/makegraphs
 usr/local/bin/qosd
diff --git a/config/rootfiles/common/web-user-interface b/config/rootfiles/common/web-user-interface
index a3636002e..a3434128d 100644
--- a/config/rootfiles/common/web-user-interface
+++ b/config/rootfiles/common/web-user-interface
@@ -34,6 +34,7 @@  srv/web/ipfire/cgi-bin/hardwaregraphs.cgi
 srv/web/ipfire/cgi-bin/hosts.cgi
 srv/web/ipfire/cgi-bin/ids.cgi
 srv/web/ipfire/cgi-bin/index.cgi
+srv/web/ipfire/cgi-bin/ipblacklist.cgi
 srv/web/ipfire/cgi-bin/ipinfo.cgi
 srv/web/ipfire/cgi-bin/iptables.cgi
 srv/web/ipfire/cgi-bin/logs.cgi
@@ -44,8 +45,10 @@  srv/web/ipfire/cgi-bin/logs.cgi/firewalllogcountry.dat
 srv/web/ipfire/cgi-bin/logs.cgi/firewalllogip.dat
 srv/web/ipfire/cgi-bin/logs.cgi/firewalllogport.dat
 srv/web/ipfire/cgi-bin/logs.cgi/ids.dat
+srv/web/ipfire/cgi-bin/logs.cgi/ipblacklists.dat
 srv/web/ipfire/cgi-bin/logs.cgi/log.dat
 srv/web/ipfire/cgi-bin/logs.cgi/proxylog.dat
+srv/web/ipfire/cgi-bin/logs.cgi/showrequestfromblacklist.dat
 srv/web/ipfire/cgi-bin/logs.cgi/showrequestfromcountry.dat
 srv/web/ipfire/cgi-bin/logs.cgi/showrequestfromip.dat
 srv/web/ipfire/cgi-bin/logs.cgi/showrequestfromport.dat
diff --git a/config/rootfiles/common/x86_64/stage2 b/config/rootfiles/common/x86_64/stage2
index 026532b8f..5aa177008 100644
--- a/config/rootfiles/common/x86_64/stage2
+++ b/config/rootfiles/common/x86_64/stage2
@@ -97,6 +97,7 @@  usr/local/bin/convert-dns-settings
 usr/local/bin/convert-ovpn
 usr/local/bin/filesystem-cleanup
 usr/local/bin/hddshutdown
+usr/local/bin/ipblacklist
 usr/local/bin/ipsec-interfaces
 usr/local/bin/makegraphs
 usr/local/bin/qosd
diff --git a/lfs/configroot b/lfs/configroot
index 2c9dbe0e3..90b90eb3c 100644
--- a/lfs/configroot
+++ b/lfs/configroot
@@ -51,7 +51,7 @@  $(TARGET) :
 
 	# Create all directories
 	for i in addon-lang auth backup ca captive certs connscheduler crls ddns dhcp dhcpc dns dnsforward \
-			ethernet extrahd/bin fwlogs fwhosts firewall isdn key langs logging mac main \
+			ethernet extrahd/bin fwlogs fwhosts firewall ipblacklist isdn key langs logging mac main \
 			menu.d modem optionsfw \
 			ovpn patches pakfire portfw ppp private proxy/advanced/cre \
 			proxy/calamaris/bin qos/bin red remote sensors suricata time \
@@ -65,7 +65,7 @@  $(TARGET) :
 	    captive/settings captive/agb.txt captive/clients captive/voucher_out certs/index.txt certs/index.txt.attr ddns/config ddns/settings ddns/ipcache dhcp/settings \
 	    dhcp/fixleases dhcp/advoptions dhcp/dhcpd.conf.local dns/settings dns/servers dnsforward/config ethernet/aliases ethernet/settings ethernet/known_nics ethernet/scanned_nics \
 	    ethernet/wireless extrahd/scan extrahd/devices extrahd/partitions extrahd/settings firewall/settings firewall/config firewall/geoipblock firewall/input firewall/outgoing \
-	    fwhosts/customnetworks fwhosts/customhosts fwhosts/customgroups fwhosts/customservicegrp fwhosts/customgeoipgrp fwlogs/ipsettings fwlogs/portsettings \
+	    fwhosts/customnetworks fwhosts/customhosts fwhosts/customgroups fwhosts/customservicegrp fwhosts/customgeoipgrp fwlogs/ipsettings fwlogs/portsettings ipblacklist/settings \
 	    isdn/settings mac/settings main/hosts main/routing main/security main/settings optionsfw/settings \
 	    ovpn/ccd.conf ovpn/ccdroute ovpn/ccdroute2 pakfire/settings portfw/config ppp/settings-1 ppp/settings-2 ppp/settings-3 ppp/settings-4 \
 	    ppp/settings-5 ppp/settings proxy/settings proxy/squid.conf proxy/advanced/settings proxy/advanced/cre/enable remote/settings qos/settings qos/classes qos/subclasses qos/level7config qos/portconfig \
diff --git a/lfs/ipblacklist-sources b/lfs/ipblacklist-sources
new file mode 100644
index 000000000..c9431285d
--- /dev/null
+++ b/lfs/ipblacklist-sources
@@ -0,0 +1,53 @@ 
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+#                                                                             #
+# This program is free software: you can redistribute it and/or modify        #
+# it under the terms of the GNU General Public License as published by        #
+# the Free Software Foundation, either version 3 of the License, or           #
+# (at your option) any later version.                                         #
+#                                                                             #
+# This program is distributed in the hope that it will be useful,             #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
+# GNU General Public License for more details.                                #
+#                                                                             #
+# You should have received a copy of the GNU General Public License           #
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
+#                                                                             #
+###############################################################################
+
+###############################################################################
+# Definitions
+###############################################################################
+
+include Config
+
+VER        = ipfire
+
+THISAPP    = ipblacklist-sources
+TARGET     = $(DIR_INFO)/$(THISAPP)
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+install : $(TARGET)
+
+check :
+
+download :
+
+md5 :
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) :
+	@$(PREBUILD)
+	mkdir -p /var/ipfire/ipblacklist
+	install -v -m 0644 $(DIR_SRC)/config/ipblacklist/sources /var/ipfire/ipblacklist
+
+	@$(POSTBUILD)
diff --git a/lfs/logwatch b/lfs/logwatch
index a980b1b40..a1b02f9d7 100644
--- a/lfs/logwatch
+++ b/lfs/logwatch
@@ -93,6 +93,8 @@  $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
 	#  done
 	cp -f $(DIR_SRC)/config/logwatch/dialup /usr/share/logwatch/scripts/services/dialup
 	cp -f $(DIR_SRC)/config/logwatch/dialup.conf /usr/share/logwatch/dist.conf/services/dialup.conf
+	cp -f $(DIR_SRC)/config/logwatch/ipblacklist /usr/share/logwatch/scripts/services/ipblacklist
+	cp -f $(DIR_SRC)/config/logwatch/ipblacklist.conf /usr/share/logwatch/dist.conf/services/ipblacklist.conf
 	
 	-mkdir -p /var/cache/logwatch
 	chmod -v 777 /var/cache/logwatch
diff --git a/make.sh b/make.sh
index f507c5584..8e062140b 100755
--- a/make.sh
+++ b/make.sh
@@ -1645,6 +1645,7 @@  buildipfire() {
   lfsmake2 speedtest-cli
   lfsmake2 rfkill
   lfsmake2 amazon-ssm-agent
+  lfsmake2 ipblacklist-sources
 }
 
 buildinstaller() {
diff --git a/src/misc-progs/Makefile b/src/misc-progs/Makefile
index bea54e773..60b3965e0 100644
--- a/src/misc-progs/Makefile
+++ b/src/misc-progs/Makefile
@@ -32,7 +32,7 @@  SUID_PROGS = squidctrl sshctrl ipfirereboot \
 	smartctrl clamavctrl addonctrl pakfire mpfirectrl wlanapctrl \
 	setaliases urlfilterctrl updxlratorctrl fireinfoctrl rebuildroutes \
 	getconntracktable wirelessclient torctrl ddnsctrl unboundctrl \
-	captivectrl
+	captivectrl ipblacklistctrl getipsetstat
 SUID_UPDX = updxsetperms
 
 OBJS = $(patsubst %,%.o,$(PROGS) $(SUID_PROGS))