Linux router: Porovnání verzí
Z Wiki UnArt Slavičín
Skočit na navigaciSkočit na vyhledávání
Řádek 7: | Řádek 7: | ||
apt-get install shorewall | apt-get install shorewall | ||
Definice zón - soubor '''/etc/shorewall/zones''': | |||
# zóna pro firewall | |||
FW firewall | FW firewall | ||
# zóna pro internet | |||
NET ipv4 | NET ipv4 | ||
# zóna pro lokální síť | |||
LOC ipv4 | LOC ipv4 | ||
Definice výchozích politik - soubor '''/etc/shorewall/policy''': | |||
# z firewallu povol kamkoliv | |||
FW all ACCEPT | FW all ACCEPT | ||
# z lokální sítě povol kamkoliv | |||
LOC all ACCEPT | LOC all ACCEPT | ||
# z internetu zakaž kamkoliv | |||
NET all DROP | NET all DROP | ||
# všechno ostatní zakaž | |||
all all REJECT | all all REJECT | ||
Definice rozhraní a jejich přiřazení k zóně - soubor '''/etc/shorewall/interfaces''': | |||
# rozhraní pro internet | |||
NET enp1s0 detect | |||
# rozhraní pro lokální síť | |||
LOC enp2s1 detect | |||
V souboru '''/etc/shorewall/shorewall.conf''' upravit následující hodnoty: | V souboru '''/etc/shorewall/shorewall.conf''' upravit následující hodnoty: |
Verze z 25. 4. 2019, 14:19
VLAN
apt-get install vlan
Shorewall
apt-get install shorewall
Definice zón - soubor /etc/shorewall/zones:
# zóna pro firewall FW firewall # zóna pro internet NET ipv4 # zóna pro lokální síť LOC ipv4
Definice výchozích politik - soubor /etc/shorewall/policy:
# z firewallu povol kamkoliv FW all ACCEPT # z lokální sítě povol kamkoliv LOC all ACCEPT # z internetu zakaž kamkoliv NET all DROP # všechno ostatní zakaž all all REJECT
Definice rozhraní a jejich přiřazení k zóně - soubor /etc/shorewall/interfaces:
# rozhraní pro internet NET enp1s0 detect # rozhraní pro lokální síť LOC enp2s1 detect
V souboru /etc/shorewall/shorewall.conf upravit následující hodnoty:
LOG_MARTIANS=No
IP_FORWARDING=On
ROUTE_FILTER=No
Conntrack
Zjištění aktuální hodnoty nf_conntrack_max:
cat /proc/sys/net/netfilter/nf_conntrack_max 65536
Zjištění aktuální hodnoty nf_conntrack_buckets (hashsize):
cat /proc/sys/net/netfilter/nf_conntrack_buckets 16384
Zjištění velikost hodnoty jednoho záznamu v tabulce conntrack:
cat /proc/slabinfo | awk '{if ($1 == "nf_conntrack") print $4}' 256
Výpočet:
nf_conntrack_max = velikost použitelné RAM v bytech / velikost jednoho záznamu nf_conntrack_buckets = nf_conntrack_max / 8
Příklad výpočtu pro 8GB RAM a velikost záznamu 256:
nf_conntrack_max = 8 * 1073741824 / 256 = 33554432 nf_conntrack_buckets = 33554432 / 8 = 4194304
Hodnotu nf_conntrack_max zapíšeme do souboru /etc/sysctl.conf:
net.netfilter.nf_conntrack_max=33554432 net.netfilter.nf_conntrack_tcp_timeout_established=7200
Hodnotu nf_conntrack_buckets do souboru /etc/modprobe.d/nf_conntrack.conf:
options nf_conntrack hashsize=4194304
Změníme za běhu:
echo 4194304 > /sys/module/nf_conntrack/parameters/hashsize sysctl -p
Zdroje: