pfSense áttekintés
Copyright © 2011 Lévai László. Minden jog fenntartva.
Tartalomjegyzék
Leírás
A pfSense egy ingyenes, FreeBSD-re épülõ tûzfal és routing alkalmazás. Rendkívül rugalmasan konfigurálható, egyszerûen kezelhetõ webes felülettel rendelkezik.
A projekt fejlesztése 2004-ben a m0n0wall projekt forkolásával kezdõdött. A fejlesztõk egyik célkitûzése egy teljesen PC-re telepíthetõ rendszer kifejlesztése volt, de a pfSense beágyazott rendszereken is gond nélkül elfut. A rendszer képes LiveCD-rõl is futni, ebben az esetben nem igényel semmiféle telepítést, a beállításokat pedig kimenthetjük egy USB kulcsra és bármikor visszatölthetjük, egy pillanat alatt felhúzva saját tûzfalrendszerünket.
A 2.0-ás stabil verzió az alábbi funkciókat tartalmazza (a teljesség igénye nélkül):
- a rendszer teljes menedzselhetõsége webes interfészen keresztül;
tûzfal:
- csomagszûrés forrás és/vagy cél IP-címe, protokollok, forrás és/vagy cél portok alapján;
- kapcsolatok mennyiségének limitálása;
p0feszköz operációs rendszerek kiszûrésére;- szabály alapú logolás;
- rugalmas routolási szabályok léterehozása;
- tûzfalszabályokhoz, portokhoz, csoportokhoz, stb. beszédes nevek rendelése;
- csomag normalizálás (scrub) (ez a funkció alapból engedélyezett);
- tûzfalszabályok menet közbeni tiltása/engedélyezése;
állapottartó csomagszûrés:
- a státusz tábla méretének menet közbeni növelése;
- kapcsolati limitek megadása;
- állapottartási típusok megadása (keep-state, modulate-state, synproxy-state, none);
- a státusz tábla optimalizálása;
NAT:
- port forward port range vagy több IP-cím alapján;
- 1:1 port forward;
- alapértelmezetten engedélyezve a kimenõ kapcsolatok NAT-olása;
- részletes NAT-olási szabályok létrehozása;
- NAT limitálás PTPP/GRE protokolok esetén;
CARP alapú redundáns rendszer kialakítása;
- terheléselosztó rendszer kialakítása;
- OpenVPN, IPSEC, PPTP szerverek kialakítása;
- PPPoE szerver kialakítása;
RRD Graph alapú monitorozás és reportolás:
- processzor;
- hálózati forgalom;
- tûzfal;
- hálózati kártyák;
- csomag/másodperc arány hálózati kártyákon;
- WAN csatoló hálózati átjárójának ping válaszideje;
Rendszer állapotának valósidejû figyelése;
- DHCP szerver és Relay szerver kialakítása;
- Wi-fi Access Point kiépítése;
- DNS szerver kialakítása.
Minimális hardverkövetelmény:
- CPU: Intel Pentium kompatibilitis processzor (100 Mhz felett);
- RAM: 128 MB;
- HDD: 1 GB;
- CD-ROM;
- Hálózati kártyák.
A fejlesztõk a hálózati forgalom függvényében különbözõ hardverkövetelményeket ajánlanak, amelyekrõl a pfSense oldalán lehet tájékozódni.
Ezen cikknek nem feladata a pfSense teljes körû bemutatása, vagy egy tûzfalrendszer kialakítása, inkább csak egy gondolatébresztõ bemutatás szeretne lenni.
Telepítés
Az egyes tükrözésekrõl letölthetõ számos telepítõkészlet, a példa okán egy 64 bites ISO képet használunk.
1. A VirtualBox környezet elõkészítése
Alakítsunk ki a fenti követelményeknek megfelelõ virtuális hardverkörnyezetet, legyen 2 darab Host-Only típusú hálózati kártyánk.
2. A rendszer telepítése
Miután sikeresen bebootoltunk a telepítõeszközrõl, a kernel üzenetei után nyomjuk le az I billentyût a rendszer telepítésének elkezdéséhez.
- Configure Console: itt állíthatjuk be a konzol tulajdonságait, most minden megfelel, ezért az Accept these Settings menüpont választásával mehetünk is tovább.
- Select Task: válasszuk ki, hogy mit szeretnénk csinálni, ehhez most válasszuk Quick/Easy Install menüpontot.
- Are you sure?: a szokásos megerõsítés, OK; elkezdõdik a rendszer felmásolása a merevlemezünkre.
- Install Kernel(s): több fajta kernelt is telepíthetünk a céljainknak megfelelõen, jelen esetben a Symmetric multiprocessing kernel menüpontot válasszuk.
- Reboot: kész is vagyunk a telepítéssel, Reboot, majd bootoljunk a merevlemezrõl.
Konfigurálás
Bootolás után, kernel üzenetek és a felismert hálókártyák tájékoztatása után a Do yu want to set up vlans now? kérdés fogad, amire egyelõre No a válasz.
WAN interface legyen az
em0.LAN interface legyen az
em1.Kész vagyunk! Nyomjuk meg az Enter billentyût, és ezt követõen tájékoztatást kapunk a beállított hálózati kártyákról: Do you want to proceed? Ebben esetben válaszunk Yes lesz.
Végrehajtódnak a konfigurációs beállítások és be is jelentkeztünk a rendszerbe.
A rendszer konfigurálása
- Lépjünk be a webes adminisztációs felületen keresztül. Az alapértelmezett account: admin/pfsense.
- Weben keresztüli bejelentkezés után a Dashboard fogad minket, itt átfogó képet pahatunk a rendszerünk mindenkori állapotáról.
Válasszuk a System/Setup Wizard menüpontot, rendszerünket itt tudjuk készre konfigurálni, melyet most meg is teszünk.
General Information:
- Hostname: a tûzfalunk neve;
- Domain: a domainünk neve;
- Primary DNS Server: a WAN interfész elsõdleges DNS szerverének IP-címe;
- Secondary DNS Server: a WAN interfész másodlagos DNS szerverének IP-címe;
- Override DNS: a DNS szerverek DHCP/PPP használatakor felülíródjanak-e a WAN interfészen.
Time Server Information:
- Time Server Hostname: ide jön az internetes idõszinkron szerver IP-címe vagy neve;
- Timezone: adjuk meg az idõzónát: Europe/Budapest.
Cofigure WAN Interface:
- Selected Type: a WAN interfész beállítási módja, amely Static, DHCP, PPPoE, PPTP lehet. Ennek megfelelõen kell majd alább kitölteni.
General Configuration:
- MAC Address: Spoof védelem ellen állítsuk be a WAN MAC-címét;
- MTU: a hálózati MTU értéke, maradhat üresen.
Static IP Configuration:
- IP Address: statikus IP esetén a WAN interfész IP-címe;
- Gateway: a WAN interfész gateway IP-címe.
DHCP Client Configuration:
- DHCP Hostname: csak akkor kell beállítani, ha a WAN interfész DHCP-n keresztül kapja a hálózati adatokat.
PPPoE configuration: PPPOverEthernet esetén ide jönnek a szolgáltatótól kapott adatok.
PPTP configuration: Point-to-Point Tunnel protokoll esetén kell csak kitölteni.
RFC1918 Networks:
- Block RFC1918 Private Networks: a privát hálózatoknak
fenntartott hálózati tartományok tiltása a WAN interfészen. Ezek a
10/8,172.16/12,192.168/16és a127/8-as tartományok.
- Block RFC1918 Private Networks: a privát hálózatoknak
fenntartott hálózati tartományok tiltása a WAN interfészen. Ezek a
Block bogon networks:
- Block bogon networks: egyéb fenntartott hálózati tartományok blokkolása.
Configure LAN Interface:
- LAN IP Address: a LAN interfész IP-címe;
- Subnet Mask: a LAN interfész hálózati maszkja.
Set Admin WebGUI Password: webes felület adminisztrációs jelszavának beállítása. Mindenképpen változtassuk meg!
Készen is vagyunk a beállítással! Ehhez nyomjuk meg a Reload gombot, de konzolból biztos, ami biztos indítsuk újra az egész rendszert.
A szolgáltatások áttekintése
System
Advanced: Itt tudunk mélységében hozzányúlni a rendszer beállításaihoz, szabályozhatjuk a webConfigurator mûködését, beállíthatjuk a tûzfal és a NAT mûködését, a hálózatunk mûködését, proxy-t, load balancing-ot konfigurálhatunk be, tuningolhatjuk a rendszert, SMTP szervert adhatunk meg.
Cert Manager: Certificate menedzsment, generálhatunk, beállíthatunk, törölhetünk certificate-eket.
Firmware: Itt upgradelhetjük a rendszerünk firmware-jét.
General Setup: Megadhatjuk a rendszerük nevét és domainjét, beállíthatjuk az idõszinkron szerverét, DNS szervereket adhatunk meg, és skint választhatunk a webes felülethez.
Logout: Ez a menüpont magáért beszél.
Routing: Routolási szabályokat hozhatunk létre, vagy szerkeszthetjük a már meglévõket.
Setup Wizard: Ld. fentebb.
User Manager: Felhasználókat és csoportokat kezelhetünk.
Interfaces
(assign): A telepítéskor be nem állított vagy késõbb hozzáadott hálózati interfészeket vehetjük kezelés alá.
LAN: LAN interfészek beállítása.
WAN: WAN interfészek beállítása.
Firewall
Aliases: Beszédes nevek hozzárendelése hostokhoz, hálózatokhoz, portokhoz, stb.
NAT: A tûzfal NAT szabályainak felvétele, illetve a kimenõ forgalom NAT-olásának szabályozása.
Rules: A WAN interfészre vonatkozó tûzfalszabályok beállítása, de lehetõség van a többi interfészen átmenõ forgalmat is szabályozni.
Schedules: A tûzfal szabályok hatását idõzíteni is tudjuk, ezt lehet itt beállítani.
Traffic Shaper: Sávszélesség korlátozása interfész, queue, limiter, layer7 alapján, de van wizard lehetõség is.
Virtual IPs: Több IP-cím rendelése az interfészekhez, valamint CARP alapú redundáns rendszerek szabályozása.
Services
Captive Portal: Részletekbe menõen szabályozhatjuk itt bizonyos oldalak elérhetõségét.
DHCP Relay: DHCP Relay szervert állíthatunk be hálózatok között.
DHCP Server: Bekapcsolhatjuk és beállíthatjuk a rendszer DHCP szerverét a LAN interfészen.
DNS Forwarder: DNS továbbításra vonatkozó beállítások.
Dynamic DNS: Dinamikus DNS szolgáltatást beállítása, rengeteg szolgáltató támogatott.
IGMP Proxy: Az IGMP protokoll használatára vonatkozó beállítások.
Load Balancer: Terheléselosztás beállítása és monitorozása.
OLSR: Speciális routing szolgáltatás.
OpenNTPD: OpenNTPD szerver engedélyezése és beállítása.
PPPoE Server: PPPoE szerver beállítása.
RIP: Routing Information Protocol engedélyezése.
SNMP: Az SNMP démon beállításai.
UPnP & NAT-PMP: NAT port mappingra és UPnP protokollra vonatkozó beállítások. Ennek engedélyezése biztonsági kockázatot jelent!
Wake on Lan: A felvett hosztokat tudjuk felébreszteni egyenként, vagy mindet egyszerre.
VPN
IPSEC: IPSec alapú VPN létrehozása és menedzselése.
L2TP: Layer2 Tunneling Protocol alapú VPN létrehozésa.
OpenVPN: OpenVPN szerver vagy kliens beállítása.
PPTP: PPTP alapú VPN létrehozásának lehetõsége.
Status
Carp: CARP beállítása esetén itt tájékozódhatunk a CARP interfészek állapotáról.
Dashboard: Ezt kapjuk login után is.
DHCP Leases: A kiadott DHCP-jegyekról tájékozódhatunk.
Filter Reload: Szabályok újratöltése.
Gateways: A beállított átjárókról kaphatunk információkat.
Interfaces: A beállított interfészekrõl kaphatunk itt információkat.
IPSEC: IPSec alapú VPN beállítása esetén itt tájékozódhatunk annak állapotáról.
Load Balancer: A beállított terheléselosztásról nyújt információkat.
OpenVPN: OpenVPN beállítása esetén itt kaphatunk információkat annak mûködésérõl.
Queues: A sávszélesség-korlátozásról nyújt információt.
RRD Graphs: Különbözõ színes-szagos grafikonokat készíttethetünk el.
Services: A szolgáltatások állapotát monitorozza.
System Logs: A különbözõ logokat nézhetjük itt át.
Traffic Graph: Az interfészenkénti forgalmat grafikonon ábrázolja.
UPnP & NAT-PMP: Az UPnP és NAT-PMP állapotokról tájékozódhatunk, amennyiben állítottuk be ilyet a Services menüpont alatt.
Diagnostics
ARP Tables: Az ARP-tábla tartalmát mutatja meg.
Authentication: Hitelesítési próbákat tehetünk a már elõzõleg felvett felhasználókkal.
Backup/Restore: Konfigurációk mentése és betöltése.
Command Prompt: Itt kaphatunk egy parancssort a rendszerhez, tölthetünk le és fel fájlokat.
DNS Lookup: DNS lekéréseket intézése.
Edit File: Konfigurációs fájlokat szerkesztése.
Factory Defaults: Minden beállítást visszaállítása a gyári beállításokra.
Halt System: A rendszer leállítása.
Limiter Info: Itt szintén a sávszélességkorlátozásról kaphatunk információkat.
Packet Capture: Sniffing.
pfInfo: Tûzfalunk állapotáról kaphatunk egy szép, hosszú listát.
pfTop: A tûzfalon áthaladó csomagokról kaphatunk részletes információkat.
Ping: Pingelés különbözõ interfészeken.
Reboot: Rendszer újraindítása.
Routes: Betekintés a routing tábla tartalmába.
SMART Status: A merevlemez állapotáról nyújt képet, de tesztet is végezhetünk itt.
States: Az állapottartó tûzfalszabályokról nyújt információt.
States Summary: Az elõbbiek egy összesített módozata.
System Activity: Az aktív processzek és azok állapotának megjelenítése.
Tables: Ha hoztunk létre tûzfaltáblákat, akkor itt figyelemmel kisérhetjük ezeket.
Traceroute: Hálózati ellenõrzés végzése.
Help
Ezen menüpont alatt különbüzõ oldalakra, fórumokra juthatunk, ahol segítséget kaphatunk a rendszerrel kapcsolatos kérdéseinkre.
Összegzés
Summa summárum a pfSense egy rendkivûl komplex rendszert nyújthat számunkra, kereskedelmi termékeket megszégyenítõ funkciógazdagsággal rendelkezik. Kezdetben egy kicsit nehéz ugyan rajta eligazodni, és valószínüleg többször nekiugrik az ember egy tûzfalrendszer felépítésének, vagy szolgálatások bekonfigurálásának. Nem biztos, hogy a számos eszköz közül mindre szükségünk lesz, de ha a késõbbiek folyamán például egy rendundáns rendszert vagy egy IPSec VPN-t kell létrehoznunk, a programban a kezünk alatt mindent megtalálunk majd. A pfSense ideális lehet otthoni vagy kis cégek, tûzfalrendszereként.
