Hlavní navigace

Firewall pfSense: možnosti připojení a bezpečnost

Lukáš Malý 20. 7. 2016

V dalším díle o pfSense si povíme o bezpečnosti a o možnostech připojení pfSense k internetu, práci s firewallovými pravidly a aliasy a nakonec se podíváme na zálohování konfigurací.

WAN interface a jeho možnosti

Po instalaci pfSense nastavíme WAN interface pravděpodobně jako IPv4 static, případně jako DHCPv4, pokud jej ISP podporuje. Ale pokud nemáme Ethernetové připojení, máme další možnosti.

pfSense za xDSL modemem

V případě, že máme stávající xDSL modem od jakéhokoliv poskytovatele a z nějakého důvodu nám nevyhovují vlastnosti a možnosti nastaveni xDLS modemu. Můžeme modem překonfigurovat do režimu BRIDGE a propojit Ethernetem s WAN interface pfSense. Kde vybereme IPv4 Configuration Type – PPPoE což je Point-to-point protocol over Ethernet, který je v modemech běžně používán. Bridge v modemu nám přemostí komunikaci a pomyslně ji posune na náš router, který se zachová jako modem a předá DSLAMu uživatele a heslo, který u ISP bývá stejný, např. O2/O2. Pomocí PPPoE dojde k navázání spojeni a přidělení IPv4 adresy. Možnosti provozováni IPv6 si povíme v dalších dílech.

Ovšem někdy může být velmi zábavné překonfigurovávat modem do režimu BRIDGE konkrétně u Comtrend VR-3026e jsem si užil své.

WiFi

Do našeho hardware můžeme též přidat WiFi miniPCI modul Compex WLE200NX 802.11a/b/g/n a tím z routeru můžeme udělat AP nebo se jeho pomocí připojit k lokálnímu WiFi ISP, pokud nás tedy budou schopni a ochotni připojit pomocí vlastního přijímače.

pfSense 2.3 WiFi - nastaveni

Po vložení karty do HW a nastartování přiřadíme interface a pojmenujeme dle libosti, např. WLAN.

Nastavení WiFi interface je vždy závislé na možnostech a vlastnostech konkrétního HW.

  • General Configuration
  • Static IPv4 Configuration
  • Common Wireless Configuration – Settings apply to all wireless networks on ath0.
  • Regulatory Settings
  • Network-Specific Wireless Configuration
  • WPA
  • 802.1× RADIUS Options
  • Reserved Networks

pfSense 2.3 WiFi setings

Po připojení a asociaci WiFi zařízení jej máme možno vidět v menu  Status / Wireless.

pfSense 2.3 WiFi Status

4G/LTE

Další možností jak se připojit k internetu, může být využití mobilních technologií. Do Embedded routeru s deskou PC Engines APU.1D, 1D4, 2D2 a 2D4 se dá pořídit LTE modem Huawei ME909u-521, který je v poslední verzi pfSense i FreeBSD podporován. S deskou ALIX.6F2 by LTE modem měl též fungovat. Deska má jak SIM slot, tak mini PCI.

Ověřeno ve zdrojácích FreeBSD.

grep -iR ME909U /usr/src/sys/dev/*        
/usr/src/sys/dev/usb/serial/u3g.c:    U3G_DEV(HUAWEI, ME909U,U3GINIT_HUAWEISCSI2),
/usr/src/sys/dev/usb/usbdevs:product HUAWEI ME909U        0x1573  LTE modem

Po vložení karty do routeru a nastartování jen nakonfigurujeme WAN interface s použitím PPP prtokolu.

IPv4 Configuration Type     PPP
Country                     Czech Republic
Provider                    T-Mobile
Plan                        T-Mobile - internet.t-mobile.cz
Phone number                *99#
Access Point Name           internet.t-mobile.cz
Init string                 &F0E1Q0 +CMEE=2
Modem port                  /dev/cuaU0.0

pfSense 2.3 LTE

Je samozřejmé, že k LTE modemu potřebujeme pigtail a patřičnou anténu. Karta disponuje vývody MAIN a AUX a je doporučeno zapojit dvě antény, pro lepší efektivitu příjmu signálu.

Podrobnosti o zprovoznění pfSense jako LTE router mám sepsané zde.

pfSense 2.3 LTE PPP

pfSense 2.3 LTE PPP Status

Firewall a definice pravidel

Jak je firewall bezpečný, bezesporu záleží na bezpečnostní politice, kterou pomocí firewallu uplatňujeme. Firewall pfSense po instalaci blokuje vše na interface, který jsme určili jako WAN. Interface pro interní použití LAN povoluje vše. Dále jsou v pfSense přítomna automatická pravidla, která nám přináší jistý komfort. Např. pokud budeme používat IPSec tunel, tak se nemusime starat o povolování komunikace mezi hraniční IPv4 veřejnými adresami např.  isakmp 500/udp a 500/tcp, ale řešíme jen interní komunikaci uvnitř tunelu. Pokud nám automatické povolení nevyhovují, lze je samozřejmě vypnout.

Dalšími automatickými pravidly jsou volby Block private networks and loopback addresses a Block bogon networks tyto volby jsou zapnutelné u jednotlivých interface a je jen na nás zda je využijeme. U WAN interface jsou defaultně zapnuté.

V pfSense jsou firewallová pravidla přiřazována vždy na nějaký interface. Buď fyzický nebo virtuální v podobě VLAN. V menu je položka Firewall, která nám umožňuje definovat Aliasy, NAT, samotná pravidla (Rules). Dále pak máme možnost nastavovat časově omezená pravidla a omezování rychlosti.

pfSense 2.3 Firewall

Pro definování pravidel je možné využívat Aliasy, což jsou množiny IP adres, portů, případně celých subnetů. Specialitou je URL Alias, který si router načte z nějaké adresy. Např. zde je seznam českých subnetů CZ.cidr, které když použijeme v nějakém blokovacím pravidle, velmi efektivně tím omezíme komunikaci nějakého obecně otevřeného portu (1194/tcp nebo udp #OpenVPN) jen z IPv4 adres, které jsou přiděleny českým ISP. Vždy je ovšem nutné si uvědomit, zda se někdo nebude připojovat ze zahraničí. Dále je nutno CZ.cidr soubor aktualizovat. Velké změny v něm patrně již nenastanou. IPv4 jsou již rozdělené a nějaké změny se asi dělají jen velmi málo.

Aliasy nám tedy umožňují definovat jedno pravidlo, které ma širší záběr. Pokud tedy chceme povolit komunikaci z nějaké IP, nebudeme vytvářet nové pravidlo, ale přidáme IP do patřičného aliasu, který je součástí pravidla.

pfSense 2.3 Firewall Alias

Pro vzdálenou správu pfSense pomocí HTTPS a SSH můžeme takto vytvořit jedno povolovací pravidlo pro interface WAN.

Pokud nás zajímají jak jsou pravidla definována uvnitř pfSense v podobě Packet Filteru, můžeme nahlédnout pomocí příkazu pfctl.

Všechna pravidla ve kterých je alias ip_ADMIN.

pfctl -sr | grep ADMIN
pass in quick on ppp0 reply-to (ppp0 10.64.64.0) inet proto tcp from <ip_ADMIN> to 100.90.6.191 port = https flags S/SA keep state label "USER_RULE: Allow ADMINs"
pass in quick on ppp0 reply-to (ppp0 10.64.64.0) inet proto tcp from <ip_ADMIN> to 100.90.6.191 port = ssh flags S/SA keep state label "USER_RULE: Allow ADMINs"

Výpis všech Packet Filter tabulek. Je nutno si všimnout, že Port alias je uložen mimo Packet Filter, protože Alias p_ADMIN mezi tabulkami není.

pfctl -sT
bogons
ip_ADMIN
ip_CZ_IP_RANGE
ip_Facebook_AS
ip_MONITOR
snort2c
sshlockout
virusprot
webConfiguratorlockout

Výpis objemné tabulky čítá bezmála 1000 záznamů.

pfctl -t ip_CZ_IP_RANGE -T show | wc -l
     942

IPv4 adresa www.root.cz je obsažena v patřičném subnetu.

pfctl -t ip_CZ_IP_RANGE -T show | grep 91.213.160
   91.213.160.0/24

Závěr

V dalším díle seriálu o pfSense si povíme podrobněji o správci certifikátů, správě uživatelů a využití obou při konfiguraci OpenVPN.

Našli jste v článku chybu?

20. 7. 2016 20:17

Debatovat na téma Linux vs *BSD nehodlám! Ale pokud Vám vadí WebGUI, tak je možno použít např. projekt https://bsdrp.net/ - BSD Router Project: Open Source Router Distribution. Zatim jsem jej nezkousel.

Třeba bude následovat někdy nějaký článek.

Pokud Vam i Vasim zakazníkům vyhovuje debian je to zcela jistě dobrá volba.

Ale pokud po mě někdo chce router do firmy nebo domů. Uvítám když si tam bude moci něco naklikat sam nejaký lokalni admin, který uvíta např. LAN funkce jako DHCP atd.

22. 7. 2016 8:05

Zbezne jsem nahlizel na rozdily v pfSense a OPNsense a ve vlastnostech OPNsene https://opnsense.org/ je navic uvedena dvoufaktorova autentizace 2FA, Netflow Explorer a Network Netflow Monitoring. Az si jej na nejaky odlozeny ALIX nainstaluji budu se snazit vypichnout rozdily techto obdobnych systemu.

Jinak jsem si vsiml ze u FW pravidel je pocitadlo stavu pro jednotliva pravidla. Firewall / Rules / WAN, coz neni co zadate. Ale pekne to ukazuje kolik dat proteklo danym pravidlem. Da se z toho od…

Vitalia.cz: „Připluly“ z Německa a možná obsahují jed

„Připluly“ z Německa a možná obsahují jed

Podnikatel.cz: Přehledná titulka, průvodci, responzivita

Přehledná titulka, průvodci, responzivita

Lupa.cz: Slevové šílenství je tu. Kde nakoupit na Black Friday?

Slevové šílenství je tu. Kde nakoupit na Black Friday?

Podnikatel.cz: Vládu obejde, kvůli EET rovnou do sněmovny

Vládu obejde, kvůli EET rovnou do sněmovny

DigiZone.cz: Česká televize mění schéma ČT :D

Česká televize mění schéma ČT :D

Podnikatel.cz: 1. den EET? Problémy s pokladnami

1. den EET? Problémy s pokladnami

Měšec.cz: Finančním poradcům hrozí vracení provizí

Finančním poradcům hrozí vracení provizí

Vitalia.cz: Říká amoleta - a myslí palačinka

Říká amoleta - a myslí palačinka

Podnikatel.cz: EET: Totálně nezvládli metodologii projektu

EET: Totálně nezvládli metodologii projektu

Měšec.cz: Jak vymáhat výživné zadarmo?

Jak vymáhat výživné zadarmo?

120na80.cz: Rakovina oka. Jak ji poznáte?

Rakovina oka. Jak ji poznáte?

120na80.cz: Pánové, pečujte o svoje přirození a prostatu

Pánové, pečujte o svoje přirození a prostatu

DigiZone.cz: NG natáčí v Praze seriál o Einsteinovi

NG natáčí v Praze seriál o Einsteinovi

120na80.cz: Bojíte se encefalitidy?

Bojíte se encefalitidy?

Vitalia.cz: Láska na vozíku: Přitažliví jsme pro tzv. pečovatelky

Láska na vozíku: Přitažliví jsme pro tzv. pečovatelky

Podnikatel.cz: Na poslední chvíli šokuje vyjímkami v EET

Na poslední chvíli šokuje vyjímkami v EET

Root.cz: Vypadl Google a rozbilo se toho hodně

Vypadl Google a rozbilo se toho hodně

Lupa.cz: Není sleva jako sleva. Jak obchodům nenaletět?

Není sleva jako sleva. Jak obchodům nenaletět?

Měšec.cz: Kdy vám stát dá na stěhování 50 000 Kč?

Kdy vám stát dá na stěhování 50 000 Kč?

Vitalia.cz: Paštiky plné masa ho zatím neuživí

Paštiky plné masa ho zatím neuživí