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

Allikas: Kuutõrvaja
(PF paketifiltri seadistamine)
(PF paketifiltri seadistamine)
78. rida: 78. rida:
 
  # pfctl -d
 
  # pfctl -d
  
PF paketifiltriga parasjagu kehtestatud olekute väärtusi saab vaadata käsuga, OpenBSD v. 4.1 vastav väljund on tootud illustratsiooniks, allpool on lühidalt seda väljundit kommenteeritud
+
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
 
  # pfctl -sa

Redaktsioon: 4. august 2007, kell 22:47

Sissejuhatus

OpenBSD operatsioonisüsteemi kasutamine võrgusõlmes on tema üheks oluliseks kasutusalaks. OpenBSD tulemüüril (ruuteril) on muu hulgas sellised omadused

  • liikluse filtreerimine - pf, mitmesugustele tingimustele põhinevate piirangute seadmine sh automaatselt täituvad ja tühjenevad blacklistid, synproxy
  • liikluse prioritiseerimine - altq
  • koormusjaotur - pf
  • statistika ja andmete analüüsiks kogumise vahendid (pfctl, pftop, pfstat, pflogd, tcpdump)
  • VPN - IPsec, stunnel
  • redundantse tulemüüri klustri võimalus - pfsync (koos sessioonide edasiandmisega)

Ü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/28
                   __|__  
                  |     |  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

  1. Kohtvõrgu osast KALAKE, kus asuvad kasutajate töökohaarvutid pääseb piiramatult avalikku internetti ning DMZ võrku.
  2. Avalikust internetist peab pääsema ainult DMZ võrgus töötava veebiserveri juurde.
  3. DMZ võrgust ei saa algatada ühendusti kuskil suunas.
  4. Tulemüüri kohtvõrgu ja DMZ võrguliidestel töötab nimeserveri teenus.
  5. Tulemüüris tehakse NAT'i DMZ ning KALAKE võrgus paiknevatele arvutitele.
  6. DMZ ja KALAKE võrgu arvutite vaikelüüsiks ning nimeserveriks on vastavalt 10.0.1.254 ja 192.168.1.254.

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.

PF paketifiltri seadistamine

PF paketifiltri tööd juhitakse programmiga pfctl, mille abil saab lisaks paketifiltri sisse ja välja lülitamisele laadida tekstifailis kirjas olevad paketifiltri reeglid, tavaliselt pfctl seadistusfailiks /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 toimub käsuga

# pfctl -f /etc/pf.conf

Ning vajadusel reeglite kehtestamine ehk sisselülitamine ning väljalülitamine 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