split out input chain for loopback

This commit is contained in:
Daniel Micay 2024-03-28 13:23:13 -04:00
parent 811fcf593e
commit 9b40bb90b8
9 changed files with 67 additions and 40 deletions

View File

@ -49,10 +49,7 @@ table inet filter {
type filter hook input priority filter type filter hook input priority filter
policy drop policy drop
iif lo tcp dport 22 tcp flags syn ip saddr != $ip-allowlist-ssh add @ip-connlimit-ssh { ip saddr ct count over 1 } reject with tcp reset iif lo goto input-internal
iif lo tcp dport 22 tcp flags syn ip6 saddr != $ip6-allowlist-ssh add @ip6-connlimit-ssh { ip6 saddr and ffff:ffff:ffff:ffff:ffff:: ct count over 1 } reject with tcp reset
iif lo accept
tcp dport { 80, 443 } accept tcp dport { 80, 443 } accept
meta l4proto { icmp, ipv6-icmp } accept meta l4proto { icmp, ipv6-icmp } accept
ct state vmap { established : accept, related : accept, new : goto graceful-reject } ct state vmap { established : accept, related : accept, new : goto graceful-reject }
@ -62,6 +59,12 @@ table inet filter {
tcp dport 22 synproxy mss 1460 wscale 7 timestamp sack-perm tcp dport 22 synproxy mss 1460 wscale 7 timestamp sack-perm
} }
chain input-internal {
tcp dport 22 tcp flags syn ip saddr != $ip-allowlist-ssh add @ip-connlimit-ssh { ip saddr ct count over 1 } reject with tcp reset
tcp dport 22 tcp flags syn ip6 saddr != $ip6-allowlist-ssh add @ip6-connlimit-ssh { ip6 saddr and ffff:ffff:ffff:ffff:ffff:: ct count over 1 } reject with tcp reset
accept
}
chain forward { chain forward {
type filter hook forward priority filter type filter hook forward priority filter
policy drop policy drop

View File

@ -52,10 +52,7 @@ table inet filter {
type filter hook input priority filter type filter hook input priority filter
policy drop policy drop
iif lo tcp dport 22 tcp flags syn ip saddr != $ip-allowlist-ssh add @ip-connlimit-ssh { ip saddr ct count over 1 } reject with tcp reset iif lo goto input-internal
iif lo tcp dport 22 tcp flags syn ip6 saddr != $ip6-allowlist-ssh add @ip6-connlimit-ssh { ip6 saddr and ffff:ffff:ffff:ffff:ffff:: ct count over 1 } reject with tcp reset
iif lo accept
tcp dport { 80, 443 } accept tcp dport { 80, 443 } accept
meta l4proto { icmp, ipv6-icmp } accept meta l4proto { icmp, ipv6-icmp } accept
ct state vmap { established : accept, related : accept, new : goto graceful-reject } ct state vmap { established : accept, related : accept, new : goto graceful-reject }
@ -65,6 +62,12 @@ table inet filter {
tcp dport 22 synproxy mss 1460 wscale 7 timestamp sack-perm tcp dport 22 synproxy mss 1460 wscale 7 timestamp sack-perm
} }
chain input-internal {
tcp dport 22 tcp flags syn ip saddr != $ip-allowlist-ssh add @ip-connlimit-ssh { ip saddr ct count over 1 } reject with tcp reset
tcp dport 22 tcp flags syn ip6 saddr != $ip6-allowlist-ssh add @ip6-connlimit-ssh { ip6 saddr and ffff:ffff:ffff:ffff:ffff:: ct count over 1 } reject with tcp reset
accept
}
chain forward { chain forward {
type filter hook forward priority filter type filter hook forward priority filter
policy drop policy drop

View File

@ -49,10 +49,7 @@ table inet filter {
type filter hook input priority filter type filter hook input priority filter
policy drop policy drop
iif lo tcp dport 22 tcp flags syn ip saddr != $ip-allowlist-ssh add @ip-connlimit-ssh { ip saddr ct count over 1 } reject with tcp reset iif lo goto input-internal
iif lo tcp dport 22 tcp flags syn ip6 saddr != $ip6-allowlist-ssh add @ip6-connlimit-ssh { ip6 saddr and ffff:ffff:ffff:ffff:ffff:: ct count over 1 } reject with tcp reset
iif lo accept
tcp dport { 25, 80, 443, 465, 993 } accept tcp dport { 25, 80, 443, 465, 993 } accept
meta l4proto { icmp, ipv6-icmp } accept meta l4proto { icmp, ipv6-icmp } accept
ct state vmap { established : accept, related : accept, new : goto graceful-reject } ct state vmap { established : accept, related : accept, new : goto graceful-reject }
@ -62,6 +59,12 @@ table inet filter {
tcp dport 22 synproxy mss 1460 wscale 7 timestamp sack-perm tcp dport 22 synproxy mss 1460 wscale 7 timestamp sack-perm
} }
chain input-internal {
tcp dport 22 tcp flags syn ip saddr != $ip-allowlist-ssh add @ip-connlimit-ssh { ip saddr ct count over 1 } reject with tcp reset
tcp dport 22 tcp flags syn ip6 saddr != $ip6-allowlist-ssh add @ip6-connlimit-ssh { ip6 saddr and ffff:ffff:ffff:ffff:ffff:: ct count over 1 } reject with tcp reset
accept
}
chain forward { chain forward {
type filter hook forward priority filter type filter hook forward priority filter
policy drop policy drop

View File

@ -49,10 +49,7 @@ table inet filter {
type filter hook input priority filter type filter hook input priority filter
policy drop policy drop
iif lo tcp dport 22 tcp flags syn ip saddr != $ip-allowlist-ssh add @ip-connlimit-ssh { ip saddr ct count over 1 } reject with tcp reset iif lo goto input-internal
iif lo tcp dport 22 tcp flags syn ip6 saddr != $ip6-allowlist-ssh add @ip6-connlimit-ssh { ip6 saddr and ffff:ffff:ffff:ffff:ffff:: ct count over 1 } reject with tcp reset
iif lo accept
tcp dport { 80, 443 } accept tcp dport { 80, 443 } accept
meta l4proto { icmp, ipv6-icmp } accept meta l4proto { icmp, ipv6-icmp } accept
ct state vmap { established : accept, related : accept, new : goto graceful-reject } ct state vmap { established : accept, related : accept, new : goto graceful-reject }
@ -62,6 +59,12 @@ table inet filter {
tcp dport 22 synproxy mss 1460 wscale 7 timestamp sack-perm tcp dport 22 synproxy mss 1460 wscale 7 timestamp sack-perm
} }
chain input-internal {
tcp dport 22 tcp flags syn ip saddr != $ip-allowlist-ssh add @ip-connlimit-ssh { ip saddr ct count over 1 } reject with tcp reset
tcp dport 22 tcp flags syn ip6 saddr != $ip6-allowlist-ssh add @ip6-connlimit-ssh { ip6 saddr and ffff:ffff:ffff:ffff:ffff:: ct count over 1 } reject with tcp reset
accept
}
chain forward { chain forward {
type filter hook forward priority filter type filter hook forward priority filter
policy drop policy drop

View File

@ -53,10 +53,7 @@ table inet filter {
type filter hook input priority filter type filter hook input priority filter
policy drop policy drop
iif lo tcp dport 22 tcp flags syn ip saddr != $ip-allowlist-ssh add @ip-connlimit-ssh { ip saddr ct count over 1 } reject with tcp reset iif lo goto input-internal
iif lo tcp dport 22 tcp flags syn ip6 saddr != $ip6-allowlist-ssh add @ip6-connlimit-ssh { ip6 saddr and ffff:ffff:ffff:ffff:ffff:: ct count over 1 } reject with tcp reset
iif lo accept
tcp dport { 80, 443, 7275 } accept tcp dport { 80, 443, 7275 } accept
udp dport 123 accept udp dport 123 accept
meta l4proto { icmp, ipv6-icmp } accept meta l4proto { icmp, ipv6-icmp } accept
@ -67,6 +64,12 @@ table inet filter {
tcp dport 22 synproxy mss 1460 wscale 7 timestamp sack-perm tcp dport 22 synproxy mss 1460 wscale 7 timestamp sack-perm
} }
chain input-internal {
tcp dport 22 tcp flags syn ip saddr != $ip-allowlist-ssh add @ip-connlimit-ssh { ip saddr ct count over 1 } reject with tcp reset
tcp dport 22 tcp flags syn ip6 saddr != $ip6-allowlist-ssh add @ip6-connlimit-ssh { ip6 saddr and ffff:ffff:ffff:ffff:ffff:: ct count over 1 } reject with tcp reset
accept
}
chain forward { chain forward {
type filter hook forward priority filter type filter hook forward priority filter
policy drop policy drop

View File

@ -61,12 +61,7 @@ table inet filter {
type filter hook input priority filter type filter hook input priority filter
policy drop policy drop
iif lo tcp dport 22 tcp flags syn ip saddr != $ip-allowlist-ssh add @ip-connlimit-ssh { ip saddr ct count over 1 } reject with tcp reset iif lo goto input-internal
iif lo tcp dport 22 tcp flags syn ip6 saddr != $ip6-allowlist-ssh add @ip6-connlimit-ssh { ip6 saddr and ffff:ffff:ffff:ffff:ffff:: ct count over 1 } reject with tcp reset
iif lo tcp dport { 53, 853 } tcp flags syn add @ip-connlimit-dns { ip saddr ct count over 16 } reject with tcp reset
iif lo tcp dport { 53, 853 } tcp flags syn add @ip6-connlimit-dns { ip6 saddr and ffff:ffff:ffff:ffff:: ct count over 16 } reject with tcp reset
iif lo accept
udp dport 53 accept udp dport 53 accept
tcp dport { 80, 443 } accept tcp dport { 80, 443 } accept
meta l4proto { icmp, ipv6-icmp } accept meta l4proto { icmp, ipv6-icmp } accept
@ -80,6 +75,14 @@ table inet filter {
tcp dport { 53, 853 } synproxy mss 1460 wscale 7 timestamp sack-perm tcp dport { 53, 853 } synproxy mss 1460 wscale 7 timestamp sack-perm
} }
chain input-internal {
tcp dport 22 tcp flags syn ip saddr != $ip-allowlist-ssh add @ip-connlimit-ssh { ip saddr ct count over 1 } reject with tcp reset
tcp dport 22 tcp flags syn ip6 saddr != $ip6-allowlist-ssh add @ip6-connlimit-ssh { ip6 saddr and ffff:ffff:ffff:ffff:ffff:: ct count over 1 } reject with tcp reset
tcp dport { 53, 853 } tcp flags syn add @ip-connlimit-dns { ip saddr ct count over 16 } reject with tcp reset
tcp dport { 53, 853 } tcp flags syn add @ip6-connlimit-dns { ip6 saddr and ffff:ffff:ffff:ffff:: ct count over 16 } reject with tcp reset
accept
}
chain forward { chain forward {
type filter hook forward priority filter type filter hook forward priority filter
policy drop policy drop

View File

@ -66,12 +66,7 @@ table inet filter {
type filter hook input priority filter type filter hook input priority filter
policy drop policy drop
iif lo tcp dport 22 tcp flags syn ip saddr != $ip-allowlist-ssh add @ip-connlimit-ssh { ip saddr ct count over 1 } reject with tcp reset iif lo goto input-internal
iif lo tcp dport 22 tcp flags syn ip6 saddr != $ip6-allowlist-ssh add @ip6-connlimit-ssh { ip6 saddr and ffff:ffff:ffff:ffff:ffff:: ct count over 1 } reject with tcp reset
iif lo tcp dport { 53, 853 } tcp flags syn add @ip-connlimit-dns { ip saddr ct count over 16 } reject with tcp reset
iif lo tcp dport { 53, 853 } tcp flags syn add @ip6-connlimit-dns { ip6 saddr and ffff:ffff:ffff:ffff:: ct count over 16 } reject with tcp reset
iif lo accept
udp dport 53 accept udp dport 53 accept
tcp dport { 80, 443 } accept tcp dport { 80, 443 } accept
meta l4proto { icmp, ipv6-icmp } accept meta l4proto { icmp, ipv6-icmp } accept
@ -85,6 +80,14 @@ table inet filter {
tcp dport { 53, 853 } synproxy mss 1460 wscale 7 timestamp sack-perm tcp dport { 53, 853 } synproxy mss 1460 wscale 7 timestamp sack-perm
} }
chain input-internal {
tcp dport 22 tcp flags syn ip saddr != $ip-allowlist-ssh add @ip-connlimit-ssh { ip saddr ct count over 1 } reject with tcp reset
tcp dport 22 tcp flags syn ip6 saddr != $ip6-allowlist-ssh add @ip6-connlimit-ssh { ip6 saddr and ffff:ffff:ffff:ffff:ffff:: ct count over 1 } reject with tcp reset
tcp dport { 53, 853 } tcp flags syn add @ip-connlimit-dns { ip saddr ct count over 16 } reject with tcp reset
tcp dport { 53, 853 } tcp flags syn add @ip6-connlimit-dns { ip6 saddr and ffff:ffff:ffff:ffff:: ct count over 16 } reject with tcp reset
accept
}
chain forward { chain forward {
type filter hook forward priority filter type filter hook forward priority filter
policy drop policy drop

View File

@ -49,10 +49,7 @@ table inet filter {
type filter hook input priority filter type filter hook input priority filter
policy drop policy drop
iif lo tcp dport 22 tcp flags syn ip saddr != $ip-allowlist-ssh add @ip-connlimit-ssh { ip saddr ct count over 1 } reject with tcp reset iif lo goto input-internal
iif lo tcp dport 22 tcp flags syn ip6 saddr != $ip6-allowlist-ssh add @ip6-connlimit-ssh { ip6 saddr and ffff:ffff:ffff:ffff:ffff:: ct count over 1 } reject with tcp reset
iif lo accept
tcp dport { 80, 443 } accept tcp dport { 80, 443 } accept
meta l4proto { icmp, ipv6-icmp } accept meta l4proto { icmp, ipv6-icmp } accept
ct state vmap { established : accept, related : accept, new : goto graceful-reject } ct state vmap { established : accept, related : accept, new : goto graceful-reject }
@ -62,6 +59,12 @@ table inet filter {
tcp dport 22 synproxy mss 1460 wscale 7 timestamp sack-perm tcp dport 22 synproxy mss 1460 wscale 7 timestamp sack-perm
} }
chain input-internal {
tcp dport 22 tcp flags syn ip saddr != $ip-allowlist-ssh add @ip-connlimit-ssh { ip saddr ct count over 1 } reject with tcp reset
tcp dport 22 tcp flags syn ip6 saddr != $ip6-allowlist-ssh add @ip6-connlimit-ssh { ip6 saddr and ffff:ffff:ffff:ffff:ffff:: ct count over 1 } reject with tcp reset
accept
}
chain forward { chain forward {
type filter hook forward priority filter type filter hook forward priority filter
policy drop policy drop

View File

@ -53,10 +53,7 @@ table inet filter {
type filter hook input priority filter type filter hook input priority filter
policy drop policy drop
iif lo tcp dport 22 tcp flags syn ip saddr != $ip-allowlist-ssh add @ip-connlimit-ssh { ip saddr ct count over 1 } reject with tcp reset iif lo goto input-internal
iif lo tcp dport 22 tcp flags syn ip6 saddr != $ip6-allowlist-ssh add @ip6-connlimit-ssh { ip6 saddr and ffff:ffff:ffff:ffff:ffff:: ct count over 1 } reject with tcp reset
iif lo accept
tcp dport { 80, 443 } accept tcp dport { 80, 443 } accept
meta l4proto { icmp, ipv6-icmp } accept meta l4proto { icmp, ipv6-icmp } accept
ct state vmap { established : accept, related : accept, new : goto graceful-reject } ct state vmap { established : accept, related : accept, new : goto graceful-reject }
@ -66,6 +63,12 @@ table inet filter {
tcp dport 22 synproxy mss 1460 wscale 7 timestamp sack-perm tcp dport 22 synproxy mss 1460 wscale 7 timestamp sack-perm
} }
chain input-internal {
tcp dport 22 tcp flags syn ip saddr != $ip-allowlist-ssh add @ip-connlimit-ssh { ip saddr ct count over 1 } reject with tcp reset
tcp dport 22 tcp flags syn ip6 saddr != $ip6-allowlist-ssh add @ip6-connlimit-ssh { ip6 saddr and ffff:ffff:ffff:ffff:ffff:: ct count over 1 } reject with tcp reset
accept
}
chain forward { chain forward {
type filter hook forward priority filter type filter hook forward priority filter
policy drop policy drop