Każde połączenie sieciowe jest przetrzymywane w pamięci systemu przez określoną ilość czasu. W OpenBSD nie ma problemu aby ten czas zmniejszyć lub zwiększyć. Do tego używamy oczywiście wbudowanego packet filter. Optymalizacja tych wartości może pozytwnie wpłynąć na działanie całego systemu. Żeby zobaczyć wszystkie aktualne połączenia w systemie wpisujemy:
root@fw-m:/>pfctl -ss -v all tcp x.x.x.x -> y.y.y.y:80 FIN_WAIT_2:FIN_WAIT_2 [2767833305 + 6944] wscale 8 [3518465835 + 66048] wscale 5 age 00:05:28, expires in 00:00:19, 21:26 pkts, 1492:34161 bytes, rule 84
Przykładowe połączenie na porcie 80 z hostem y.y.y.y zostało zakończone i zostanie usunięte za 19 sekund. Wszystkie wartości timeout możemy zobaczyć używając polecenia pfctl
.
root@fw-m:/>pfctl -st tcp.first 120s tcp.opening 30s tcp.established 86400s tcp.closing 900s tcp.finwait 45s tcp.closed 90s tcp.tsdiff 30s udp.first 60s udp.single 30s udp.multiple 60s icmp.first 20s icmp.error 10s other.first 60s other.single 30s other.multiple 60s frag 30s interval 10s
Zmiana wartości timeout
Packet filter oferuje 4 gotowe zestawy ustawien. (aggressive, conservative, high-latency, normal), ale możemy też zmienić każdą wartość osobno. Jeśli chcemy użyć gotowego zestawu wystarczy, że w pliku pf.conf
wpiszemy:
root@fw-m:/>cat /etc/pf.conf set optimization aggressive
a jeżel chcemy ustawić poszczególne wartości:
root@fw-m:/>cat /etc/pf.conf set timeout { tcp.first 60, tcp.closing 120, tcp.closed 45, tcp.finwait 30, tcp.established 28800 } set timeout { udp.first 30, udp.single 30, udp.multiple 30 } set timeout { other.first 30, other.single 30, other.multiple 30 }
Testujemy konfigurację i restart firewall’a
root@fw-m:/>pfctl -ng -f /etc/pf.conf root@fw-m:/>pfctl -f /etc/pf.conf
I sprawdzamy czy nowe wartości zostały wczytane:
root@fw-m:/etc>pfctl -st tcp.first 60s tcp.opening 30s tcp.established 28800s tcp.closing 120s tcp.finwait 30s tcp.closed 45s tcp.tsdiff 30s udp.first 30s udp.single 30s udp.multiple 30s icmp.first 20s icmp.error 10s other.first 30s other.single 30s other.multiple 30s frag 30s interval 10s
0 Komentarze.