aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
authorDavid M. Syzdek <david@syzdek.net>2021-05-10 15:02:39 -0800
committerDavid M. Syzdek <david@syzdek.net>2021-05-10 15:02:50 -0800
commit0963985a41b78ac5454ac21ea775975908f824c4 (patch)
treeb0fc2426cb14a7c923c8564d901a197a23d50a88 /src
parent0922280c808e286e557360ecba7d08941f654d80 (diff)
downloadbbfw-0963985a41b78ac5454ac21ea775975908f824c4.tar.gz
bbfw-0963985a41b78ac5454ac21ea775975908f824c4.tar.bz2
bbfw-0963985a41b78ac5454ac21ea775975908f824c4.tar.xz
bbfw-0963985a41b78ac5454ac21ea775975908f824c4.zip
examples: updating example rules
Diffstat (limited to 'src')
-rw-r--r--src/firewall.d/global.d/ipsets-example68
-rw-r--r--src/firewall.d/global.d/rules-example22
-rw-r--r--src/firewall.d/global.d/rules4-example10
-rw-r--r--src/firewall.d/global.d/rules6-example10
-rw-r--r--src/firewall.d/ipsets-example2
-rw-r--r--src/firewall.d/rules-example8
-rw-r--r--src/firewall.d/rules4-example3
-rw-r--r--src/firewall.d/rules6-example3
8 files changed, 82 insertions, 44 deletions
diff --git a/src/firewall.d/global.d/ipsets-example b/src/firewall.d/global.d/ipsets-example
index 8a6d35f..ff54196 100644
--- a/src/firewall.d/global.d/ipsets-example
+++ b/src/firewall.d/global.d/ipsets-example
@@ -13,26 +13,54 @@
13# @sysconfdir@/firewall.d/rules6 13# @sysconfdir@/firewall.d/rules6
14# 14#
15 15
16####################### 16######################
17# # 17# #
18# Standard Services # 18# Private Networks #
19# # 19# #
20####################### 20######################
21 21
22create SERVICES bitmap:port range 1-1024 comment 22create PRIVATE4 hash:ip family inet hashsize 1024 comment
23add SERVICES 20 comment "FTP data" 23create PRIVATE6 hash:ip family inet6 hashsize 1024 comment
24add SERVICES 21 comment "FTP" 24create PRIVATE list:set
25add SERVICES 22 comment "SSH" 25add PRIVATE PRIVATE4
26add SERVICES 23 comment "Telnet" 26add PRIVATE PRIVATE6
27add SERVICES 25 comment "SMTP" 27add PRIVATE4 10.0.0.0/8 "rfc1918"
28add SERVICES 53 comment "DNS" 28add PRIVATE4 172.16.0.0/12 "rfc1918"
29add SERVICES 69 comment "TFTP" 29add PRIVATE4 192.168.0.0/1 "rfc1918"
30add SERVICES 80 comment "HTTP" 30add PRIVATE6 fc00::/7 "rfc4193"
31add SERVICES 110 comment "POP3" 31add PRIVATE6 fe80::/10 "rfc4291"
32add SERVICES 123 comment "NTP" 32
33add SERVICES 143 comment "IMAP" 33
34add SERVICES 389 comment "LDAP" 34#################
35add SERVICES 443 comment "HTTPS" 35# #
36# Black Holes #
37# #
38#################
39
40# dynamic blackhole lists
41create DYNAMIC_BLACKHOLE4 hash:ip family inet hashsize 1024 timeout 600
42create DYNAMIC_BLACKHOLE6 hash:ip family inet6 hashsize 1024 timeout 600
43create DYNAMIC_BLACKHOLE list:set
44add DYNAMIC_BLACKHOLE DYNAMIC_BLACKHOLE4
45add DYNAMIC_BLACKHOLE DYNAMIC_BLACKHOLE6
46
47# dynamic blackhole exemptions
48create DYNAMIC_EXEMPTION4 hash:net family inet hashsize 1024 comment
49create DYNAMIC_EXEMPTION6 hash:net family inet6 hashsize 1024 comment
50create DYNAMIC_EXEMPTION list:set
51add DYNAMIC_EXEMPTION DYNAMIC_EXEMPTION4
52add DYNAMIC_EXEMPTION DYNAMIC_EXEMPTION6
53add DYNAMIC_EXEMPTION PRIVATE4
54add DYNAMIC_EXEMPTION PRIVATE6
55
56# static blackhole lists
57create BLACKHOLE4 hash:ip family inet hashsize 1024
58create BLACKHOLE6 hash:ip family inet6 hashsize 1024
59create BLACKHOLE list:set
60add BLACKHOLE BLACKHOLE4
61add BLACKHOLE BLACKHOLE6
62add BLACKHOLE DYNAMIC_BLACKHOLE4
63add BLACKHOLE DYNAMIC_BLACKHOLE6
36 64
37 65
38# end of rules 66# end of rules
diff --git a/src/firewall.d/global.d/rules-example b/src/firewall.d/global.d/rules-example
index 66efc0f..e6a598b 100644
--- a/src/firewall.d/global.d/rules-example
+++ b/src/firewall.d/global.d/rules-example
@@ -29,15 +29,31 @@
29# allow all local host traffic 29# allow all local host traffic
30-I INPUT -i lo -j ACCEPT 30-I INPUT -i lo -j ACCEPT
31 31
32# reject ident loopups (fixes delays when connecting to misconfigured hosts) 32# drop black hole traffic
33-A INPUT -p tcp --dport ident -j REJECT --reject-with tcp-reset 33-I INPUT -m set --match-set BLACKHOLE src -j DROP
34-I INPUT -m set --match-set BLACKHOLE src \
35 -m limit --limit 1/minute \
36 -j LOG --log-level 7 --log-prefix "iptables blackhole: "
37
38# reject ident lookups (fixes delays when connecting to misconfigured hosts)
39-A INPUT -m set --match-set PRIVATE src \
40 -p tcp --dport ident \
41 -j REJECT --reject-with tcp-reset
34 42
35# allow established connections 43# allow established connections
36-A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT 44-I INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
45
46# allow local networks to access services
47-A INPUT -m set --match-set PRIVATE src -p tcp --dport ssh -j ACCEPT
48-A INPUT -m set --match-set PRIVATE src -p tcp --dport domain -j ACCEPT
49-A INPUT -m set --match-set PRIVATE src -p udp --dport domain -j ACCEPT
37 50
38# log everything else 51# log everything else
39-A INPUT -m limit --limit 10/minute -j LOG --log-level 7 --log-prefix "iptables drop input: " 52-A INPUT -m limit --limit 10/minute -j LOG --log-level 7 --log-prefix "iptables drop input: "
40 53
54# blackhole filter misses
55-A INPUT -m set ! --match-set DYNAMIC_EXEMPTION src -j SET --add-set DYNAMIC_BLACKHOLE src
56
41COMMIT 57COMMIT
42 58
43 59
diff --git a/src/firewall.d/global.d/rules4-example b/src/firewall.d/global.d/rules4-example
index 5f73887..2736754 100644
--- a/src/firewall.d/global.d/rules4-example
+++ b/src/firewall.d/global.d/rules4-example
@@ -19,11 +19,6 @@
19# # 19# #
20######################### 20#########################
21*filter 21*filter
22
23# allow all ICMP traffic
24-I INPUT -p icmp -j ACCEPT
25-I FORWARD -p icmp -j ACCEPT
26
27COMMIT 22COMMIT
28 23
29 24
@@ -42,11 +37,6 @@ COMMIT
42# # 37# #
43###################### 38######################
44*raw 39*raw
45
46# ICMP traffic
47-I PREROUTING -p icmp -j NOTRACK
48-I OUTPUT -p icmp -j NOTRACK
49
50COMMIT 40COMMIT
51 41
52# end of rules 42# end of rules
diff --git a/src/firewall.d/global.d/rules6-example b/src/firewall.d/global.d/rules6-example
index 8591787..cf5dd1a 100644
--- a/src/firewall.d/global.d/rules6-example
+++ b/src/firewall.d/global.d/rules6-example
@@ -20,11 +20,6 @@
20# # 20# #
21######################### 21#########################
22*filter 22*filter
23
24# allow all ICMPv6 traffic
25-I INPUT -p icmpv6 -j ACCEPT
26-I FORWARD -p icmpv6 -j ACCEPT
27
28COMMIT 23COMMIT
29 24
30 25
@@ -34,11 +29,6 @@ COMMIT
34# # 29# #
35###################### 30######################
36*raw 31*raw
37
38# ICMP traffic
39-I PREROUTING -p icmpv6 -j NOTRACK
40-I OUTPUT -p icmpv6 -j NOTRACK
41
42COMMIT 32COMMIT
43 33
44# end of rules 34# end of rules
diff --git a/src/firewall.d/ipsets-example b/src/firewall.d/ipsets-example
index 437676b..fb2785b 100644
--- a/src/firewall.d/ipsets-example
+++ b/src/firewall.d/ipsets-example
@@ -40,7 +40,7 @@ add PRIVATE4 10.0.0.0/8 "rfc1918"
40add PRIVATE4 172.16.0.0/12 "rfc1918" 40add PRIVATE4 172.16.0.0/12 "rfc1918"
41add PRIVATE4 192.168.0.0/1 "rfc1918" 41add PRIVATE4 192.168.0.0/1 "rfc1918"
42add PRIVATE6 fc00::/7 "rfc4193" 42add PRIVATE6 fc00::/7 "rfc4193"
43add PRIVATE6 fe80::/10 "rfc4291"" 43add PRIVATE6 fe80::/10 "rfc4291"
44 44
45 45
46# end of rules 46# end of rules
diff --git a/src/firewall.d/rules-example b/src/firewall.d/rules-example
index d892e9a..806098b 100644
--- a/src/firewall.d/rules-example
+++ b/src/firewall.d/rules-example
@@ -32,6 +32,14 @@
32############################## 32##############################
33*filter 33*filter
34 34
35# set default policies
36:INPUT DROP
37:FORWARD DROP
38:OUTPUT ACCEPT
39
40# allow all local host traffic
41-I INPUT -i lo -j ACCEPT
42
35## accept HTTP/HTTPS connections 43## accept HTTP/HTTPS connections
36#-A INPUT -p tcp --dport http -j ACCEPT 44#-A INPUT -p tcp --dport http -j ACCEPT
37#-A INPUT -p tcp --dport https -j ACCEPT 45#-A INPUT -p tcp --dport https -j ACCEPT
diff --git a/src/firewall.d/rules4-example b/src/firewall.d/rules4-example
index 238b8ca..2b5c0bc 100644
--- a/src/firewall.d/rules4-example
+++ b/src/firewall.d/rules4-example
@@ -31,6 +31,9 @@
31######################### 31#########################
32*filter 32*filter
33 33
34# allow all ICMP traffic
35-I INPUT -p icmp -j ACCEPT
36
34## accept SSH connections from RFC1918 addresses 37## accept SSH connections from RFC1918 addresses
35#-A INPUT -p tcp -s 10.0.0.0/8 --dport ssh -j ACCEPT 38#-A INPUT -p tcp -s 10.0.0.0/8 --dport ssh -j ACCEPT
36#-A INPUT -p tcp -s 172.16.0.0/12 --dport ssh -j ACCEPT 39#-A INPUT -p tcp -s 172.16.0.0/12 --dport ssh -j ACCEPT
diff --git a/src/firewall.d/rules6-example b/src/firewall.d/rules6-example
index 732a635..595e72d 100644
--- a/src/firewall.d/rules6-example
+++ b/src/firewall.d/rules6-example
@@ -31,6 +31,9 @@
31######################### 31#########################
32*filter 32*filter
33 33
34# allow all ICMPv6 traffic
35-I INPUT -p icmpv6 -j ACCEPT
36
34## accept SSH connections from link-local and RFC4193 addresses 37## accept SSH connections from link-local and RFC4193 addresses
35#-A INPUT -p tcp -s fc00::/7 --dport ssh -j ACCEPT 38#-A INPUT -p tcp -s fc00::/7 --dport ssh -j ACCEPT
36#-A INPUT -p tcp -s fe80::/10 --dport ssh -j ACCEPT 39#-A INPUT -p tcp -s fe80::/10 --dport ssh -j ACCEPT