Firewall pfSense: instalace a správa

21. 6. 2016
Doba čtení: 6 minut

Sdílet

Installace II
Installace II
Dnes si povíme, jak se pfSense instaluje na jednotlivé platformy. Ujasníme si možnosti práce se sériovou konzolí, ukážeme si základní diagnostické nástroje a základní nástroje správy.

Volba Hardware

Jak již bylo řečeno v předchozím díle, pfSense se dá instalovat na velmi široké spektrum hardware, vždy je nutné si zkontrolovat, zda např. námi zvolená Mini-ATX základní deska s vestavěnou síťovou kartou je ve FreeBSD podporována potřebným ovladačem. Pro potřeby routeru s NAT funkcí budeme potřebovat síťové karty dvě.

Pokud máme dost peněz a chceme získat i podporu k danému produktu, můžeme kontaktovat některého z evropských partnerů pfSense, případně patrona projektu společnost Netgate, u kterého se dá pořídit široká škála produktů dle požadovaného výkonu.

Seznam instalačních souborů
PC platforma USB VGA,ISO pfSense-CE-memstick-2.3.1-RELEASE-amd64.img.gz
Embedded APU USB Serial pfSense-CE-memstick-serial-2.3.1-RELEASE-amd64.img.gz
Embedded ALIX img pro CF pfSense-CE-2.3.1-RELEASE-4g-amd64-nanobsd.img.gz
Virtualizace ISO pfSense-CE-2.3.1-RELEASE-amd64.iso.gz

Instalace pfSense do VMware

Pro demonstraci instalace jsem zvolil virtuální prostředí. Obdobné postupy platí pro instalace na běžný hardware.

Ze stránky projektu si stáhneme instalační obraz, který nahrajeme např. do úložiště ESXi pfSense-CE-2.3.1-RELEASE-amd64.iso. Vytvoříme si virtuální počítač, jako FreeBSD(64bit) s např. 2GB RAM a 8GB HDD. Virtuálce přidělíme dvě síťové karty. U CD nastavíme ISO pro boot.

pfSense: Downlaod install ISO

Downlaod install ISO

Instalátor je velmi jednoduchý a je funkční jak pod VGA, tak pomocí sériové konzole, v případě instalace z USB např. Na PC Engines APU desku.

pfSense: Install I

Pro Install stiskneme (I)

pfSesne: Quick/Easy Install

Quick/Easy Install

Při volbě instalace kernelu je nutné vybrat ten správný, dle použitého hardware. U desek, které nemají VGA je nutné volit Embedded kernel.

pfSesne: Install Kernel

Install Kernel

pfSense: reboot after install

Reboot po instalaci

Po instalaci je nutné přidělit jednotlivé síťové karty, např. WAN a LAN.

pfSense: Přiřazení interface

Přiřazení interface

Po dokončení instalace a rebootu se nám na konzoli objeví menu s volbami správy systému. Konzole je dostupná pomocí VGA nebo sériové konzole. Dále máme možnost se pomocí SSH vzdáleně přihlásit pod uživatelem admin. Tato funkcionalita se musí povolit, např. volba 14) v konzolovém menu. Je vhodné použít SSH klíče. Dále je nutné vytvořit patřičné firewallové pravidlo pro povolení portu 22, např. z vyjmenovaných IPv4 adres nebo celé sítě.

pfSense: Konzolové menu - disable pf

Konzolové menu – disable pf

V případě, že se do webového rozhraní chceme dostat z WAN je nutné dočasně vypnout firewall. To provedeme pomocí příkazové řádky a příkazu pfctl -d. Běžně ovšem postačuje se přihlásit k LAN interface, který poskytuje DHCPv4, případně DHCPv6.

cmd

cmd

Příkazová řádka nám umožní použit spoustu UNIXových příkazů. Jako např. ifconfig, tcpdump, netstat, sysctl, pfctl, ping, traceroute atd. Máme možnost si vypsat PF tabulky atd. Podrobněji probereme v kapitole o firewallu.

pfctl -sT # výpis všech tabulek (aliasů)
pfctl -t ip_MYTABLE -T show # výpis obsahu tabulky
pfctl -t ip_MYTABLE -T add 213.168.187.15 # přidání IP do tabulky

Po prvním přihlášení do web rozhraní nás provede wizard, kterým můžeme nastavit základní volby, jako IPv4 pro LAN, časovou zónu a NTP server. Je zakončen nastavením hesla uživatele admin. Poté je proveden reload WebGUI. (Je nutné myslet nad případnou změnou IPv4 u LAN a na klientském počítači si nastavit IP ve stejné síti. Nebo si znovu vyžádat IP od DHCP.)

pfSense: Login

Login do pfSense WebGUI

pfSense: Poinstalační nastavení

Poinstalační nastavení – informace o pfSense Gold subscription

Instalace pfSense na Compact Flash

Instalace na CF spočívá pouze v zapsání obrazu na CF. Po vložení karty do slotu CF např. na desce PC Engines ALIX nastartuje systém, který připojíme pomocí sériové konzole a nastavíme interface. Pak už je vše stejné jako u plné instalace.

zcat pfSense-CE-2.3.1-RELEASE-4g-amd64-nanobsd.img.gz | dd of=/dev/sdX bs=16k
244615+1 vstoupivších záznamů
244615+1 vystoupivších záznamů
4 007 775 744 bajtů (4,0 GB) zkopírováno, 857,294 s, 4,7 MB/s

Pro připojení k sériové konzoli potřebujeme kabel USB s redukcí na serial. A ve Windows Putty v Linuxu třeba screen (screen /dev/ttyUSB0 115200).

Jun 26 19:46:12 cml kernel: [ 1614.246115] pl2303 3-2.3:1.0: pl2303 converter detected
Jun 26 19:46:12 cml kernel: [ 1614.246307] usb 3-2.3: pl2303 converter now attached to ttyUSB0
Jun 26 19:46:12 cml kernel: [ 1614.246436] usbcore: registered new interface driver pl2303

Upgrade na aktuální verzi

Po opětovném přihlášení můžeme začít s konfigurací a správou pfSense. Po instalaci verze 2.3.1 se nám na dashboardu objeví informace o tom, že existuje Update 1. V minulosti se povyšovaly jednotlivé RELEASE, ale nově byly od verze 2.3 zavedeny updaty, které reagují na bezpečnostní chyby a opravují např. FreeBSD opravy. Stejně jako FreeBSD má zpravodaj zabezpečení. Projekt pfSense zavedl obdobnou informativní stránku rozšířenou o opravy pfSense modulů a balíčků.

pfSense: Upgrade na 2.3.1 Update1

Upgrade na 2.3.1 Update1

System Update

System Update

System Update Success

System Update Success

Instalace dvou balíčků

Po aplikaci pfSense 2.3.1 Update 1 se pustíme do instalace prvních balíčků. V menu System / Package Manager / Available Packages. Protože jsme pfSense instalovali do VMware, je vhodné nainstalovat balíček Open-VM-Tools.

Install Open-VM-Tools

Install Open-VM-Tools

Install Open-VM-Tools success

Install Open-VM-Tools success

Pokud se v hlavním menu Diagnostic / ARP Table podíváme na jednotlivé záznamy, uvidíme jen MAC adresy a hostname. Pro snazší identifikaci zařízení je velmi vhodné nainstalovat balíček nmap, který nám výpis v tabulce obohatí o informace o výrobci. Tyto informace jsou odvozeny z MAC adresy zařízení pomocí OUI databáze. Takto velmi snadno identifikujeme např. výrobce Android telefonu připojeného do sítě, viz obrázek. Databáze prefixů je k nahlédnutí zde v podobě out.txt (3,3 MB)

ARP Table

ARP Table

Po instalaci můžeme pomocí konzole ověřit přítomnost balíčků přímo na příkazové řádce. Dále můžeme zjišťovat podrobnosti o balíčcích pomocí příkazu  pkg.

pkg info

pkg info – výpis instalovných balíčků

Podporované balíčky

U balíčků je nutné doplnit informaci o podpoře. Na tomto seznamu jsou uvedeny balíčky, ke kterým pfSense zajišťuje podporu. Ostatní jsou dílem komunity a ne vždy mohou fungovat spolehlivě. A hlavně pokud takový balíček použijeme, nemůžeme k němu čekat podporu.

Diagnostika routeru

V menu Diagnostics je mnoho funkcionalit. Dnes se zmíním o Stavech. Jak již bylo řečeno v prvním díle pfSense používá jako firewall Packet Filter, což je stavový firewall. V menu Diagnostic / State a Diagnostic / State Summary vidíme všechny firewallem uchovávané stavy spojení. Pokud nás zajímá, které zařízení komunikuje např. do internetu, můžeme si jej zde odfiltrovat. Máme též možnost stavy resetovat. Tato volba je vhodná, když ladíme nějaké firewallové pravidlo.

Vzdálené logování pomocí syslogu

pfSense umožňuje nastavit remote loging pomocí syslogu Status / System Logs / Settings. To je vhodné hlavně z toho důvodu, že firewall nemá moc možností uchovávat objemné logy. Proto je vhodné logy nasměrovat na vzdálený syslog server, kam se ukládají např. blokované pakety a jiné údaje.

Vzdáleny syslog

Nastavení vzdáleného syslog serveru

pfSense loguje zahozené pakety pomocí device pflog0. Od verze 2.2 umí pfSense raw logy formátovat do filterlog. Což je rozumě parsovatelný jednořádkový záznam.

bitcoin_skoleni

Syslog záznamy z routerů si posílám do ELISA Logmanagement, což je produkt, na jehož vývoji se podílím. Pomocí Kibana mohu velmi snadno vidět na mapě světa, odkud se kdo pokouší komunikovat s veřejnými IPv4 adresami hnedle několika routerů. Stačilo jen nadefinovat parsovací pravidla a vytvořit přehledný dashboard.

filterlog - World Map

filterlog – World Map

World Map - filterlog

World Map – filterlog

Závěr

V dalším díle seriálu o pfSense si povíme podrobněji o bezpečnosti a síťování, jak v routeru používat např. xDSL konektivitu. Ukážeme si, jak vytvořit aliasy obsahující všechny IP rozsahy ČR atd.

Autor článku

Pracuje jako systém administrátor – UNIX/Linux systémů. Vystudoval VOŠ Liberec, obor Počítačové systémy. Ve svém oboru prosazuje otevřená řešení IT infrastruktury.