95 lines
3.1 KiB
Plaintext
95 lines
3.1 KiB
Plaintext
define netif = enp0s3
|
|
define dmzif = enp0s8
|
|
define lanif = enp0s9
|
|
|
|
define firewall = 192.168.0.140
|
|
define ipdmz = 172.16.0.254
|
|
define iplan = 10.0.0.254
|
|
|
|
define lan-ntw = 10.0.0.0/24
|
|
|
|
define dns-server = {10.121.38.7 , 10.121.38.8}
|
|
|
|
define proxy-lyc = 10.121.38.1
|
|
define proxy-port = 8080
|
|
|
|
table ip ipfilter{
|
|
chain prerouting {
|
|
type filter hook prerouting priority filter; policy drop;
|
|
icmp type echo-reply accept
|
|
ct state established, related accept
|
|
icmp type echo-request iif {$lanif} ip daddr 172.16.0.1-172.16.0.254 accept
|
|
icmp type echo-request iif {$lanif} ip daddr {$iplan} accept
|
|
tcp dport 20 accept
|
|
tcp dport 21 accept
|
|
tcp dport {80, 443} accept
|
|
tcp dport 22 accept
|
|
ip saddr $proxy-lyc tcp dport {80, 443} accept
|
|
ct state {established,related} accept
|
|
tcp sport {80,443} ip saddr $lan-ntw accept
|
|
tcp dport {80,443} ip saddr $lan-ntw accept
|
|
}
|
|
|
|
chain system_in {
|
|
type filter hook input priority filter; policy drop;
|
|
icmp type echo-reply accept
|
|
icmp type echo-request iif {$lanif} accept
|
|
ct state established, related accept
|
|
tcp dport 20 accept
|
|
tcp dport 21 accept
|
|
tcp dport {80, 443} accept
|
|
tcp dport 22 accept
|
|
ip saddr $proxy-lyc tcp dport {80, 443} accept
|
|
}
|
|
chain routing {
|
|
type filter hook forward priority filter; policy drop;
|
|
icmp type echo-request iif {$lanif} oif {$dmzif} accept
|
|
icmp type echo-reply iif {$dmzif} oif {$lanif} accept
|
|
ct state {established,related} accept
|
|
tcp sport {80,443} ip saddr $lan-ntw accept
|
|
tcp dport {80,443} ip saddr $lan-ntw accept
|
|
}
|
|
|
|
chain system_out {
|
|
type filter hook output priority filter; policy drop;
|
|
ip daddr $dns-server accept
|
|
ip daddr $proxy-lyc tcp dport $proxy-port accept
|
|
icmp type echo-reply oif {$lanif} accept
|
|
icmp type echo-request accept
|
|
tcp dport 20 accept
|
|
tcp sport 20 accept
|
|
tcp dport 21 accept
|
|
tcp sport 21 accept
|
|
tcp dport {80, 443} accept
|
|
tcp sport {80, 443} accept
|
|
tcp sport 22 accept
|
|
}
|
|
chain postrouting {
|
|
type filter hook postrouting priority filter; policy drop;
|
|
ip daddr $dns-server accept
|
|
ip daddr $proxy-lyc tcp dport $proxy-port accept
|
|
icmp type echo-request ip saddr {$iplan, $ipdmz, $firewall} accept
|
|
icmp type echo-reply iif {$dmzif} oif {$lanif} accept
|
|
icmp type echo-request iif {$lanif} oif {$dmzif} accept
|
|
icmp type echo-request ip saddr $iplan oif $lanif accept
|
|
tcp dport 20 accept
|
|
tcp sport 20 accept
|
|
tcp dport 21 accept
|
|
tcp sport 21 accept
|
|
tcp dport {80, 443} accept
|
|
tcp sport {80, 443} accept
|
|
tcp sport 22 accept
|
|
ct state {established,related} accept
|
|
}
|
|
}
|
|
table ip nat {
|
|
chain prerouting {
|
|
type nat hook prerouting priority filter; policy accept;
|
|
}
|
|
|
|
chain postrouting {
|
|
type nat hook postrouting priority filter; policy accept;
|
|
ip saddr $lan-ntw oif $netif snat $firewall
|
|
}
|
|
}
|