Erinevus lehekülje "OpenBSD tulemüür" redaktsioonide vahel

Allikas: Kuutõrvaja
(Tulemüüri tegevuse analüüsimine)
(Teemad)
 
(ei näidata 2 kasutaja 83 vahepealset redaktsiooni)
1. rida: 1. rida:
===Sissejuhatus===
+
===OpenBSD tulemüür===
  
OpenBSD operatsioonisüsteemi kasutamine võrgusõlmes on tema üheks oluliseks kasutusalaks. OpenBSD tulemüüril (ruuteril) on muu hulgas sellised omadused
+
Järgnevad tekstid eeldavad, et ollakse tuttav OpenBSD kui operatsioonisüsteemi kasutamisega ning on olemas mõõdukas ettekujutus TCP/IP protokollist.
 +
 
 +
OpenBSD operatsioonisüsteemi kasutamine võrgusõlmes on tema üheks oluliseks kasutusalaks. Sõltuvalt konkreetsetest vajadustest võib OpenBSD tulemüüril olla realiseeritud selliseid funktsioone
  
 
* liikluse filtreerimine - pf, mitmesugustele tingimustele põhinevate piirangute seadmine sh automaatselt täituvad ja tühjenevad blacklistid, synproxy
 
* liikluse filtreerimine - pf, mitmesugustele tingimustele põhinevate piirangute seadmine sh automaatselt täituvad ja tühjenevad blacklistid, synproxy
 +
* NAT - mitte-avalike aadressidega arvutite interneti ühendamine
 
* liikluse prioritiseerimine - altq
 
* liikluse prioritiseerimine - altq
* koormusjaotur - pf
+
* koormusjaotur - pf, relayd
* statistika ja andmete analüüsiks kogumise vahendid (pfctl, pftop, pfstat, pflogd, tcpdump)
+
* tulemüüri kluster - mitmest erinevast füüsilisest arvutist koosnev üks loogiline tulemüür (nn active/passive või active/active režiimis; carp, pfsync)
* VPN - IPsec, stunnel
+
* statistika ja andmete analüüsiks kogumine (pfctl, pftop, tcpstat, pflogd, tcpdump, symon, syweb, netflow)
* redundantse tulemüüri klustri võimalus - pfsync (koos sessioonide edasiandmisega)
+
* Sild (ingl. k. bridge)
 
+
* ruutinguprotokollide bgp ja ospf kasutamine
Käesoleva teksti mõistmiseks on abiks mõõdukas ettekujutus TCP/IP protokollist.
 
 
 
===Ülesandepüstitus===
 
 
 
Tulemüüri seadistamine algab sellest, et võimalikult täpselt ette kujutada, millist tulemust saavutada soovitakse. Olgu käesoleva pala kontekstis tegu sellise ülesandepüstitusega, mida iseloomustab skeem
 
 
 
                  internet
 
                      |  default gw, 172.16.1.18
 
                      |
 
                      |  fxp0, 172.16.1.17/30
 
                    __|__ 
 
                  |    |  rl0, 10.0.1.254/24
 
                  |    |------ DMZ 10.0.1.0/24 -----
 
                  |_____|
 
                      |
 
                      |  em0, 192.168.1.254/24
 
                      |
 
                      |
 
                      |_______ KALAKE - 192.168.1.0/24 _________
 
 
 
ning peavad olema täidetud sellised nõuded
 
 
 
# Tulemüüri kohtvõrgu ja DMZ võrguliidestel töötab nimeteenus.
 
# DMZ ja KALAKE võrgu arvutite vaikelüüsiks ning nimeserveriks on vastavalt 10.0.1.254 ja 192.168.1.254.
 
# Kohtvõrgu osast KALAKE, kus asuvad kasutajate töökohaarvutid pääseb piiramatult avalikku internetti ning DMZ võrku.
 
# Tulemüüris tehakse NAT'i DMZ ning KALAKE võrgus paiknevatele arvutitele.
 
# Avalikust internetist peab pääsema ainult DMZ võrgus töötava veebiserveri juurde.
 
# DMZ võrgust ei saa algatada ühendusti kuskil suunas.
 
 
 
===Tulemüüri võrgu seadistamine===
 
 
 
Peale tulemüüri paigaldamist, tuleks tulemüür füüsiliselt internetist lahti ühendada, seadistada käsitsi võrguseadmetele joonisel toodud aadressid, veel parem, veenduda, et eksisteerivad sellise sisuga järgnevad failid (et failidesse kirjutatud seadistused oleksid tänu nendele failidele kehtestatud, peaks peale failide muutmist arvutile tegema alglaadimise)
 
 
 
# cat /etc/hostname.fxp0
 
inet 172.16.1.17 255.255.255.240 NONE
 
# cat /etc/hostname.rl0
 
inet 10.0.1.254 255.255.255.0 NONE
 
# cat /etc/hostname.em0
 
inet 192.168.1.254 255.255.255.0 NONE
 
# cat /etc/mygate
 
172.16.1.18
 
# cat /etc/resolv.conf
 
lookup file bind
 
127.0.0.1
 
# cat /etc/sysctl.conf | grep net.inet.ip.forward
 
net.inet.ip.forwarding=1        # 1=Permit forwarding (routing) of IPv4 packets
 
 
 
Seejärel ühendada külge DMZ ja KALAKE kohtvõrgust mõni arvuti ning veenduda, et kui paketifilter on välja lülitatud
 
 
 
# pfctl -d
 
 
 
siis ruuting töötab. Seda võiks kontrollida nt ping programmi abil.
 
 
 
===Nimeserveri kasutamine===
 
 
 
Üldiselt töötavad võrku ühendatud arvutid paremini, kui nimesüsteem töötab korrektselt. Seepärast tuleb käivitada kohalikke nimeseid ja vastavaid pöördteisendusi lahendava ning nn cache'ivas rezhiimis töötava nimeserveri. Alustuseks sobib kävitada lihtsalt vaikimisi /var/named kataloogis olevate seadistustega nimeserver
 
 
 
# named
 
 
 
ning veendumaks, et ta töötab küsida
 
 
 
# dig @localhost localhost
 
 
 
Nimeserveri kasutamise kohta on üksikasjalikum juhend toodud palas 'OpenBSD levinud teenuste seadistamine ja käivitamine'.
 
 
 
===pfctl programmi kasutamine===
 
 
 
PF paketifiltri töö juhtimiseks on programm pfctl, mille abil saab laadida tekstifailis kirjas olevad paketifiltri reeglid ning lisaks paketifiltri välja ja sisse lülitada. Tavaliselt on reeglid kirjas failis /etc/pf.conf. Põhjalik PF paketifiltri juhend asub aadressil http://www.openbsd.org/faq/pf/index.html.
 
 
 
Selleks, et liiklus läbiks tulemüüri, võiks kõige lihtsamal olla süntaksiliselt korrektse /etc/pf.conf faili sisu
 
 
 
pass all
 
 
 
Reeglite laadimine ja kehtestamine toimub käsuga, nii tuleb öelda ka iga kord peale /etc/pf.conf faili muutmist muudatuste kehtestamiseks
 
 
 
# pfctl -f /etc/pf.conf
 
 
 
Vajadusel paketifiltri sisse-ning väljalülitamine toimub vastavalt käskudega
 
 
 
# pfctl -e
 
# pfctl -d
 
 
 
PF paketifiltri kontrolli all olevate parameetrite väärtusi saab vaadata käsuga, OpenBSD v. 4.1 vastav väljund on tootud illustratsiooniks, allpool on lühidalt seda väljundit kommenteeritud
 
 
 
# pfctl -sa
 
FILTER RULES:
 
pass all flags S/SA keep state
 
No queue in use
 
 
INFO:
 
Status: Enabled for 0 days 00:00:02          Debug: Urgent
 
 
State Table                          Total            Rate
 
  current entries                        0             
 
  searches                              12            6.0/s
 
  inserts                                0            0.0/s
 
  removals                              0            0.0/s
 
Counters
 
  match                                12            6.0/s
 
  bad-offset                            0            0.0/s
 
  fragment                              0            0.0/s
 
  short                                  0            0.0/s
 
  normalize                              0            0.0/s
 
  memory                                0            0.0/s
 
  bad-timestamp                          0            0.0/s
 
  congestion                            0            0.0/s
 
  ip-option                              0            0.0/s
 
  proto-cksum                            0            0.0/s
 
  state-mismatch                        0            0.0/s
 
  state-insert                          0            0.0/s
 
  state-limit                            0            0.0/s
 
  src-limit                              0            0.0/s
 
  synproxy                              0            0.0/s
 
 
TIMEOUTS:
 
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
 
adaptive.start            6000 states
 
adaptive.end              12000 states
 
src.track                    0s
 
 
LIMITS:
 
states        hard limit    10000
 
src-nodes    hard limit    10000
 
frags        hard limit    5000
 
tables        hard limit    1000
 
table-entries hard limit  200000
 
 
OS FINGERPRINTS:
 
696 fingerprints loaded
 
 
 
Siinjuures tuleks tähele panna järgmisi sektsioone
 
 
 
* FILTER RULES - /etc/pf.conf failis sisalduv reegel kirjutati lahti 'pass all flags S/SA keep state', mis tähendab, et lisati juurde meie poolt ilmutatud kujul näitamata jäänud parameetrite vaikeväärtused
 
* INFO - paketifilter on sisselülitatud olekus, 'Status: Enabled for 0 days 00:00:02'
 
* TIMEOUTS - mitmesugused TCP/IP protokolli alusel toimuvale andmevahetusele mõju avaldavad timeout parameetrid
 
* LIMITS - tulemüüri ressurssikasutusele seatud piirangud
 
 
 
===PF paketifiltri reeglite kirjutamine===
 
 
 
Paketifiltri reeglite failis on muude sektsioonide hulgas FILTER RULES sektsioon, mille abil abil kontrollitakse tulemüüri erinevaid võrguseadmeid läbivat liiklust ja sellest tulenevalt ka tulemüüri läbivat liiklust. Filter reegli juures on kirjas
 
 
 
* muster, millega iga võrguseadet läbivat TCP/IP paketti sh tema liikumise suunda võrreldakse
 
* tegevus - pass või block
 
 
 
Pakette klapitatakse reeglitega nende seadistusfailis esinemise järjekorras, kusjuures viimasena paketiga klappinud reegli juures näidatud tegevus rakendatakse. Kui paketiga ei klapi ükski reegel, siis viimane ilmutamata kujul olev reegel lubab paketi läbi.
 
 
 
MACROS sektsioonis on kirjeldatud edaspidi kasutavate muutujate väärtused.
 
 
 
OPTIONS sektsioonis on kirjeldatud tulemüüri tööd üldiselt mõjutavate parameetrite vaikeväärtused. Antud juhul on öeldud, et tulemüüri sisenevat liiklust tuleb korrastada, nt fragmenteeritud pakette kokku ühendada (scrub in) ning et lo seadme liiklusele üldse mitte rakendada paketifiltrit.
 
 
 
TRANSLATIONS RULES sektsioonis on näidatud, milliste pakettide puhul toimub IP aadresside NAT-teisendus, OpenBSD paketifiltri kontekstis tähendab see ip paketi SRC aadressi ja SRC pordi ümberkirjutust. Antud juhul ütleb reegel, et välist seadmest väljuvate pakettide puhul, mille src aadress ei ole välise interface'i aadress, tuleb SRC aadress muuta välise interface'i aadressiks.
 
 
 
Samuti on näidatud TRANSLATION RULES sektsioonis, milliste pakettide puhul toimub RDR-teisendus ehk port forwarding, OpenBSD paketifiltri kontekstis tähendab see ip paketi DST ip aadressi ja DST pordi ümberkirjutust. Antud juhul ütleb reegel, et välisest seadmest sisenevatel pakettidel, mille DST aadress on tulemüüri väline aadress ning DST port on 80 või 443 tuleb teha DST ip aadressi ümberkirjutus, DST port jääb samaks. Seejärel liiguvad paketid edasi uude sihtpunkti.
 
 
 
TRANSLATION RULES kasutamisel tuleb arvestada sellega, et rakendatakse esimesena paketiga klappiv reeglit ning FILTER RULES reegleid rakendatakse  TRANSLATION RULES reeglite poolt ümber kirjutatud ip pakettidele.
 
 
 
# MACROS
 
ext_if="fxp0"
 
dmz_if="rl0"
 
kalake_if="em0"
 
 
# OPTIONS
 
set skip on lo
 
scrub in
 
 
# TRANSLATION RULES
 
nat on $ext_if inet from !$ext_if -> $ext_if
 
rdr on $ext_if inet proto tcp to $ext_if port { 80, 443 } -> 10.0.1.1
 
 
# FILTER RULES
 
# vaikimisi on igasugune liiklus keelatud
 
block all
 
 
# keelata seadmetest siseneda pakettidel, mis sealt kindlasti siseneda ei saaks
 
# nt kui valisest seadmest sisenab kohtvorgu src ip aadressiga pakett
 
antispoof quick for { $ext_if $dmz_if $kalake_if } inet
 
 
# lubatud on igast seadmest valjuv liiklus
 
# (piirangud rakendatakse sisenemisel, nii on alustuseks lihtsam ja piisavalt turvaline)
 
pass out quick all
 
 
# lubatud kohtvorgust sisenev suund
 
pass in quick on $kalake_if
 
 
# lubatud internetist dmz veebiserverisse liiklus
 
pass in quick on $ext_if proto tcp to 10.0.1.1 port { 80, 443 } synproxy keep
 
 
# lubatud dmz pealt esitada tulemüürile nimepäringuid
 
pass in quick on $dmz_if proto udp to 10.0.1.254 port 53
 
 
 
Toodud reeglite kehtestamisel paketifilter asendab muutujad nende väärtustega ning lisab ilmutama jäetud puhkudel vaikeväärtused ning tulemusena moodustatakse sellised reeglid
 
 
 
TRANSLATION RULES:
 
nat on fxp0 inet from ! 172.16.1.17 to any -> 172.16.1.17
 
rdr on fxp0 inet proto tcp from any to 172.16.1.17 port = www -> 10.0.1.1
 
rdr on fxp0 inet proto tcp from any to 172.16.1.17 port = https -> 10.0.1.1
 
 
FILTER RULES:
 
block drop in quick on ! fxp0 inet from 172.16.1.16/30 to any
 
block drop in quick inet from 172.16.1.17 to any
 
block drop in quick on ! rl0 inet from 10.0.1.0/24 to any
 
block drop in quick inet from 10.0.1.254 to any
 
block drop in quick on ! em0 inet from 192.168.1.0/24 to any
 
block drop in quick inet from 192.168.1.254 to any
 
block drop all
 
pass out quick all flags S/SA keep state
 
pass in quick on em0 all flags S/SA keep state
 
pass in quick on fxp0 inet proto tcp from any to 10.0.1.1 port = www flags S/SA synproxy state
 
pass in quick on fxp0 inet proto tcp from any to 10.0.1.1 port = https flags S/SA synproxy state
 
pass in quick on rl0 inet proto udp from any to 10.0.1.254 port = domain keep state
 
  
Veebiserveri suunal moodustatavate TCP ühenduste puhul kasutatakse SYN-proxy tehnikat, mis tähendab, et klient pöördub tulemüüri poole, kuid tulemüür käitub TCP kihis töötava proxyna, eriti oluline on seejuures, et tulemüür ei vahenda klienti ennem TCP 3-way handshake'ingu tegemist DMZ võrgus paiknevale veebiserverile.
+
Muude populaarsete tulemüürilahenduste seas paistab OpenBSD paketifilter (tulemüür) silma sellistes aspektides
  
===Tulemüüri tegevuse analüüsimine===
+
* reeglite kirjutamise efektiivsus - mitme pordi või aadressi näitamine ühes reeglis, tabeli konstruktsioon, include'id ja ankrud mitmete failide vahel jaotatud seadistuste kasutamiseks
 +
* tulemüüri oleku jälgimise võimalus - pfctl utiliidi abil saab suvalisel ajahetkel täpselt kontrollida, millised ühendused tulemüürist läbi käivad ja millised paketifiltri reeglid on ühendusega seotud
 +
* tulemüüri paketifiltri tegevuste logimine - saab täpselt logida, millised pakette on lubatud läbi või milliseid on takistatud, label'ite kasutamine
 +
* synproxy - tulemüür tekitab tulemüüri taga töötava serveri eest ära 3-way tcp handshake, et kaitsta serverit syn-floodi eest
 +
* tcpcookies kasutamise võimalus puudub
 +
* aktiivne/passiivne kluster - kahest arvutist saab moodustada ühe loogilise tulemüüri, igal ajahetkel pakub teenust vaid üks klustri komponent, kusjuures ümberlülitumisel võetakse üle ka ühendused, st olemasolevad tcp ühendused ei katke
 +
* aktiivne/aktiivne kluster - kahest arvutist saab moodustada ühe loogilise tulemüüri, nt src ip aadressi alusel käib kliendi ühendus tulemüüri taga oleva serveriga kas läbi ühe või teise tulemüüri
 +
* automaatne blacklistimine - sõltuvalt allika iseloomust (nt kui palju ühendusi tehakse ajaühikus) saab korraldada allika ip aadressi täpsusega automaatse blacklistimise (sh blacklistist väljatoomise)
 +
* tcp/ip protokolli nö fundamentaalsete omaduste kasutamine tulemüüri seadistamisel - nt saab kontrollida tcp ühenduse pidamisega seotud timeout väärtuste alusel tulemüüri olekuid (nt unustatakse ära olekud, mis on tekkinud syn pakettidest, millele ei järgnenud kliendi poolset ack'i ettenäidatud aja jooksul; või unustatakse ära olekud, millega seoses ei ole toimunud reaalset andmevahtust etteantud aja vältel)
 +
* siltide (ingl. k. tag) kasutamine - tulemüüris on võimalik ühest seadmest sisenenud paketile lisada silt ning selle alusel teha otsustusi kui ta teisest seadmest väljub; tundub, et see ongi ainuvõimalik moodus turvalise (kontrollitakse sisenevat ja väljuvat liiklust), efektiivselt töötava ja efektiivselt hallatava tulemüüri moodustamiseks
  
Kui tulemüüris on esialgseks kasutamiseks sobiv komplekti reegleid kirjeldatud ja paketifilter sisse lülitatud, siis lisaks tulemüüri ümber jäävate arvutitega teenustele ligipääsu katsetamisele st ligipääs KALAKE võrgust internetti ning internetist DMZ võrgus asuvale veebiserverile maksab uurida ka vahetult tulemüüris toimuvat. Selleks sobivad programmid
+
OpenBSD pf on seejuures täies mahus porditud ka FreeBSD peale seega töötab 99% siin palas leiduvast süntaksist ja näitematerjalist
 +
erinevad on peamiselt vaid rajad ning mõned konkreetse süsteemi utiliidid
  
* pfctl
+
Lisaks saab sõltuvalt vajadusest tulemüüril kasutada nt selliseid teenuseid, mis küll iseenesest ei tulemüürimisega seotud
* pftop
 
* tcpstat
 
* tcpdump
 
  
pftop manuaalis (man pftop) on üksikasjalikult kirjeldatud programmi kasutamise võimalusi, muu seas on võimalik käivitada programm interaktiivses rezhiimis ning seejärel
+
* dhcp server
 +
* nimeserver - bind
 +
* VPN - IPsec, OpenVPN
 +
* veebivahendaja - squid
 +
* greylisting tarkvara - spamd
 +
* tftp
 +
* ntp
  
* klahvi V abil valida erinevate vaadete vahel
+
===Teemad===
* klahvi O abil järjestada ridu ümber
 
* klahvi P abil jätta parasjagu olev esitus seisma
 
* tühiku klahvi abil värkendada esitust
 
* PgUp ja PgDn või noolte abil kerida ridu üles või alla
 
* klahvi Q abil väljuda programmist
 
  
või käivitada sobivate võtmetega mitte-interaktiivses rezhiimis, näiteks
+
Käesolev käsitlus esineb pigem reaalselt tõenäoliselt esinevatele probleemidele sobivate lahenduste väljapakkumisena kui keskendub tähestikulises järjekorras erinevate programmide manuaalide (ingl. k. manpages) ümberjutustamisele.
  
# pftop -a -b | less
+
* [[:Tulemüüri kasutamise vajadus]]
 +
* Tulemüüri ettevalmistamiseks vajalik riistvara ja tarkvara
 +
* [[Packet Filter]] - OpenBSD tulemüüritarkvara PF süntaksi tutvustus
 +
* [[OpenBSD v. 4.7 paketifilter]]
 +
* [[:Kahe võrgukaardiga ruutiv tulemüür]]
 +
* [[:Kahe võrgukaardiga aadressteisendav tulemüür]]
 +
* [[:Enam kui kahe võrgukaardiga aadressteisendav tulemüür]]
 +
* [[:Liikluse prioritiseerimine tulemüüris]]
 +
* [[:Mitme välisühendusega tulemüür]]
 +
* Passive-active tulemüürikluster
 +
* Active-active tulemüürikluster
 +
* Sild
 +
* [[:Ruuting domeenid]]
 +
* [[:FTP kasutamine OpenBSD paketifiltriga]]
  
pfctl programmi manuaalis (man pfctl) on ammendavalt kirjeldatud programmi kasutamise võimalusi, muu seas on võimalik
+
===Märkused===
  
* 'pfctl -sa' - kuvada kõikvõimalikud andmed lühidalt
+
* Paketifiltri abil ei saa kirjutada ümber OpenBSD arvutis lokaalselt genereeritud paketi dst ip aadressi ja porti.
* 'pfctl -vvvsa' - sama, aga üksikasjalikumalt
 
* 'pfctl -sr' - kuvada FILTER RULES
 
* 'pfctl -rn' - kuvada TRANSLATION RULES
 
* 'pfctl -ss' - kuvada olekud
 
  
tcpstat programmi manuaalis (man tcpstat) on ammendavalt kirjeldatud programmi kasutamise võimalusi, näites saab selliselt esitada seadmega seoses iga sekundi järel võrguliikluse statistikat
+
===Kasulikud lisamaterjalid===
  
# tcpstat -i fxp0 1
+
* http://home.nuug.no/~peter/pf/en/long-firewall.html
 +
* Pf ja iptables ning ipfilter testid
 +
* http://www.benzedrine.cx/pf-paper.html
 +
* http://undeadly.org/cgi?action=article&sid=20060927091645 (kolmeosalise artikli esimene osas, viited teistele seal)

Viimane redaktsioon: 20. mai 2010, kell 20:23

OpenBSD tulemüür

Järgnevad tekstid eeldavad, et ollakse tuttav OpenBSD kui operatsioonisüsteemi kasutamisega ning on olemas mõõdukas ettekujutus TCP/IP protokollist.

OpenBSD operatsioonisüsteemi kasutamine võrgusõlmes on tema üheks oluliseks kasutusalaks. Sõltuvalt konkreetsetest vajadustest võib OpenBSD tulemüüril olla realiseeritud selliseid funktsioone

  • liikluse filtreerimine - pf, mitmesugustele tingimustele põhinevate piirangute seadmine sh automaatselt täituvad ja tühjenevad blacklistid, synproxy
  • NAT - mitte-avalike aadressidega arvutite interneti ühendamine
  • liikluse prioritiseerimine - altq
  • koormusjaotur - pf, relayd
  • tulemüüri kluster - mitmest erinevast füüsilisest arvutist koosnev üks loogiline tulemüür (nn active/passive või active/active režiimis; carp, pfsync)
  • statistika ja andmete analüüsiks kogumine (pfctl, pftop, tcpstat, pflogd, tcpdump, symon, syweb, netflow)
  • Sild (ingl. k. bridge)
  • ruutinguprotokollide bgp ja ospf kasutamine

Muude populaarsete tulemüürilahenduste seas paistab OpenBSD paketifilter (tulemüür) silma sellistes aspektides

  • reeglite kirjutamise efektiivsus - mitme pordi või aadressi näitamine ühes reeglis, tabeli konstruktsioon, include'id ja ankrud mitmete failide vahel jaotatud seadistuste kasutamiseks
  • tulemüüri oleku jälgimise võimalus - pfctl utiliidi abil saab suvalisel ajahetkel täpselt kontrollida, millised ühendused tulemüürist läbi käivad ja millised paketifiltri reeglid on ühendusega seotud
  • tulemüüri paketifiltri tegevuste logimine - saab täpselt logida, millised pakette on lubatud läbi või milliseid on takistatud, label'ite kasutamine
  • synproxy - tulemüür tekitab tulemüüri taga töötava serveri eest ära 3-way tcp handshake, et kaitsta serverit syn-floodi eest
  • tcpcookies kasutamise võimalus puudub
  • aktiivne/passiivne kluster - kahest arvutist saab moodustada ühe loogilise tulemüüri, igal ajahetkel pakub teenust vaid üks klustri komponent, kusjuures ümberlülitumisel võetakse üle ka ühendused, st olemasolevad tcp ühendused ei katke
  • aktiivne/aktiivne kluster - kahest arvutist saab moodustada ühe loogilise tulemüüri, nt src ip aadressi alusel käib kliendi ühendus tulemüüri taga oleva serveriga kas läbi ühe või teise tulemüüri
  • automaatne blacklistimine - sõltuvalt allika iseloomust (nt kui palju ühendusi tehakse ajaühikus) saab korraldada allika ip aadressi täpsusega automaatse blacklistimise (sh blacklistist väljatoomise)
  • tcp/ip protokolli nö fundamentaalsete omaduste kasutamine tulemüüri seadistamisel - nt saab kontrollida tcp ühenduse pidamisega seotud timeout väärtuste alusel tulemüüri olekuid (nt unustatakse ära olekud, mis on tekkinud syn pakettidest, millele ei järgnenud kliendi poolset ack'i ettenäidatud aja jooksul; või unustatakse ära olekud, millega seoses ei ole toimunud reaalset andmevahtust etteantud aja vältel)
  • siltide (ingl. k. tag) kasutamine - tulemüüris on võimalik ühest seadmest sisenenud paketile lisada silt ning selle alusel teha otsustusi kui ta teisest seadmest väljub; tundub, et see ongi ainuvõimalik moodus turvalise (kontrollitakse sisenevat ja väljuvat liiklust), efektiivselt töötava ja efektiivselt hallatava tulemüüri moodustamiseks

OpenBSD pf on seejuures täies mahus porditud ka FreeBSD peale seega töötab 99% siin palas leiduvast süntaksist ja näitematerjalist erinevad on peamiselt vaid rajad ning mõned konkreetse süsteemi utiliidid

Lisaks saab sõltuvalt vajadusest tulemüüril kasutada nt selliseid teenuseid, mis küll iseenesest ei tulemüürimisega seotud

  • dhcp server
  • nimeserver - bind
  • VPN - IPsec, OpenVPN
  • veebivahendaja - squid
  • greylisting tarkvara - spamd
  • tftp
  • ntp

Teemad

Käesolev käsitlus esineb pigem reaalselt tõenäoliselt esinevatele probleemidele sobivate lahenduste väljapakkumisena kui keskendub tähestikulises järjekorras erinevate programmide manuaalide (ingl. k. manpages) ümberjutustamisele.

Märkused

  • Paketifiltri abil ei saa kirjutada ümber OpenBSD arvutis lokaalselt genereeritud paketi dst ip aadressi ja porti.

Kasulikud lisamaterjalid