Zobrazují se příspěvky se štítkempfSense. Zobrazit všechny příspěvky
Zobrazují se příspěvky se štítkempfSense. Zobrazit všechny příspěvky

pátek 12. listopadu 2021

Zabbix 6.0.0alpha6 - nový dashboard widgets #geomap

Očekávaný Zabbix 6.0 LTS je aktuálně ve verzi Zabbix 6.0.0alpha6. Velmi zajímavou novinkou je přidání nového widgets geomap do dashboard. Je k dispozici hned několik mapových poskytovatelů OpenStreetmap Mapnik nebo OpenTopoMap.

Podrobný popis nastavení je dostupný v dokumentaci.

Pár ukázek, jak mohou být mapové podklady využity z pohledu Zabbix monitorovacího systému.







čtvrtek 30. dubna 2020

Upgrade firmware on PC Engines APU.3C4

Nedávno jsem psal článek, na root.cz, jak aktualizovat PC Engines BIOS pomoci pfSense a flashrom. Opakovani je matka moudrosti :-) Včera vyšel nový BIOS Mainline releases v4.11.0.6 a tak jsem jej chtěl vyzkoušet na desce PC Engines/APU.3C4. Od výrobce tam je 4.0.7 z 2017XXXX. Doposud jsem aktualizoval jen verze Legacy releases v4.0.30. Zde si poznamenám postup s updatem na aktuální Mainline releases.

Nainstalujeme si aktualizační nástroj.

pkg install flashrom

Zjistíme si generaci desky

dmidecode | grep 'Product Name' | uniq 
Product Name: APU3

Zjistíme si verzi aktuálního BIOSu.

dmidecode | grep 'Version'
Version: 4.0.7
Version: AMD GX-412TC SOC

Provedeme stažení správneho archivu, ověříme kontrolní součet a aktualizujeme, nakonec reboot.

cd /tmp
fetch https://3mdeb.com/open-source-firmware/pcengines/apu3/apu3_v4.11.0.6.zip
apu3_v4.11.0.6.zip                                     647 kB 1476 kBps    00s
 

unzip apu3_v4.11.0.6.zip
Archive:  apu3_v4.11.0.6.zip
 extracting: apu3_v4.11.0.6.rom 
 extracting: apu3_v4.11.0.6.SHA256.sig 
 extracting: apu3_v4.11.0.6.SHA256


cat apu3_v4.11.0.6.SHA256 a093e61db53aa4b5897c0f96f8e2df910db063e5faa77c941c64dd6d4f9a0153 apu3_v4.11.0.6.rom

openssl sha256 apu3_v4.11.0.6.rom
SHA256(apu3_v4.11.0.6.rom)= a093e61db53aa4b5897c0f96f8e2df910db063e5faa77c941c64dd6d4f9a0153
 


flashrom -w apu3_v4.11.0.6.rom -p internal:boardmismatch=force
flashrom v1.1 on FreeBSD 11.3-STABLE (amd64)
flashrom is free software, get the source code at https://flashrom.org Using clock_gettime for delay loops (clk_id: 4, resolution: 2ns).
coreboot table found at 0xdffae000.
Found chipset "AMD FCH". Enabling flash write... OK.
Found Winbond flash chip "W25Q64.V" (8192 kB, SPI) mapped at physical address 0x00000000ff800000.
This coreboot image (PC Engines:apu3) does not appear to be correct for the detected mainboard (PC Engines:PCEngines apu3).
Proceeding anyway because user forced us to.
Reading old flash chip contents... done.
Erasing and writing flash chip... Erase/write done.
Verifying flash... VERIFIED.

reboot

pátek 3. května 2019

Monitoring IPSec tunelů na pfSense

Již řadu let používám pfSense spolu s několika IPSec tunely. Monitorování tunelů jsem dlouho zanedbával. Dnes jsem našel řesení přímo odladěné pro pfSense, takže nasazení je rychle a snadné. Stačí doinstalovat package sudo, umístit scripty a do zabbix agenta nastavit uživatelské klíče.

https://github.com/alanwds/zabbix_ipsec_pfsense

https://github.com/fralvarezcalvo/zabbix_ipsec_pfsense

( Opravena podpora Python 3.2 ) 

Tento projekt vychází z jiného a přidává právě postup zprovoznění na pfSense. Pomocí LLD se automaticky objeví nakonfigurované tunely.

( Upravena podpora pro pfSense 2.5.0 s podpora Python 3.7 )

https://github.com/smejdil/zabbix_ipsec_pfsense

Zabbix Latest data - IPSec

čtvrtek 21. června 2018

Qotom Mini PC 4 Gigabit - Q355G4 with pfSense

Po roce jsem se opět viděl s kolegy z FG. Radek na mě myslel a přinesl mi na oběd ukázat černou krabku vhodnou jako router. Byl jsem nesmělý, ale Radek mi Qotom doslova vnutil, za což mu moc děkuji.

Qotom vyrábí mnoho variací tohoto Q Series Mini PC. Mě se do ruky dostal model Q355G4. Vyráběny jsou variace s Core i3, i5 a i7. V pfSense se procesor identifikuje jako Intel(R) Core(TM) i5-5250U CPU @ 1.60GHz 4 CPUs: 1 package(s) x 2 core(s) x 2 hardware threads AES-NI CPU Crypto: Yes (inactive).

Tento 4 portový model je vhodný pro použití jako router, pro malé nebo střední firmy. Prodáva se opět v několika variacích s nebo bez RAM a stejně tak i s nebo bez SSD. Nejvhodnější se si pořídit holé těžítko a RAM s SSD dodat z lokálních zdrojů se zárukou.
Qotom Q355G4


Poříditelný je v číně na AliExpress nebo v EU na Amazon, prodejce Kettop.

Mě nenapadlo nic jiného než na tohoto černocha nainstalovat mnou oblíbený pfSense. Nejprve jsem si připravil USB instalaci.

zcat pfSense-CE-memstick-2.4.3-RELEASE-amd64.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



Oproti PC Engines nelze použít image pfSense-CE-memstick-serial-*. Qotom disponuje seriovým portem, ale nedostaneme se po seriové konzoli do BIOSu. Proto použijeme klasickou image. Qotom disponuje HDMI vstupem ke grafické kartě.
Deska s procesorem a chladičem

S HDMI jsem si užil. Protože mám v LABu monitor, který má jen DVI a tak mam kabel DVI > HDMI. Např. malina skrze tento kabel bootuje a je vidět vše. U Qotom se signál probral až během boot sequence. Protože na disku byl Ubuntu Server, nemel jsem možnost dostat se do BIOSu a změnit boot nastaveni. Řešením bylo Qotom připojit k plnohodnotnému HDMI display.

Opět budu tento HW srovnávat s mnou hodně používanými deskami PC Engines. Qotom se díky výkonějšímu procesoru chová velmi svižně. Testy rychlosti síťování jsem neprováděl.

pfSense 2.4.3 WebGUI


Pokud chceme po instalaci používat sériovou konzoli, stačí ji jen zapnout.

Povolení seriové konzole
Na závěr velmi letmého seznámení se s Qotom musím poznamenat, že poměr cena a výkon je u tohoto kousku velmi zajímavý.

pondělí 27. června 2016

pfSense 2.3.1_5 + LTE modem Huawei ME909u-521


V jedné lokalitě jsem se rozhodl provozovat LTE připojení. Volba nemohla padnout na nic jiného než mou oblíbený pfSense provozovaný na desce od PC Engines model APU 1D. Do routeru jsem si pořídil Mini PCI Express LTE modem Huawei ME909u-521. Dále je samozřejmě nutná anténa a pigtail viz ilustrační obrázek.

pfSense LTE

Již v minulosti jsem tento modem chtěl pořizovat, ale ve FreeBSD potažmo v pfSense nebyla podpora. To se ale nedávno změnilo.

Kontrolováno ve zdrojácích FreeBSD 10.3

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


Modem se na konzoli jeví např. takto.

dmesg | grep -i huawei
ugen3.2: at usbus3
u3g0: on usbus3


Podrobný výpis modemu. Vypis ala lsusb (Linux)

usbconfig -d ugen3.2 dump_device_desc
ugen3.2: at usbus3, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA)

  bLength = 0x0012
  bDescriptorType = 0x0001
  bcdUSB = 0x0200
  bDeviceClass = 0x0000 
  bDeviceSubClass = 0x0000
  bDeviceProtocol = 0x0000
  bMaxPacketSize0 = 0x0040
  idVendor = 0x12d1
  idProduct = 0x1573
  bcdDevice = 0x0228
  iManufacturer = 0x0001 
  iProduct = 0x0002 
  iSerialNumber = 0x0003  0123456712ABCA17
  bNumConfigurations = 0x0003


Dostupné seriové porty modemu.

ls -1 /dev/cuaU0.*
/dev/cuaU0.0
/dev/cuaU0.1
/dev/cuaU0.2
/dev/cuaU0.3
/dev/cuaU0.4


Karta je osazena i GPS chipem, tak proto je tech portů vice.


Operátora jsem zvolil T-Mobile a SIM kartu a aktitovaným datovým tarifem a deaktivovaným PINem vložíme do SIM slotu na desce. Modem musí být vložen do Slotu (J16). Protože jen ten je propojen se SIM slotem viz popis k desce.

Pokud chceme modem otestovat ručně, můžeme z příkazové řádky.

Testovací AT příkazy převzaté z dokumentace.

cu -l /dev/cuaU0.0

Connected
AT^HCSQ?
^HCSQ: "LTE",56,49,158,20

ATI

Manufacturer: Huawei Technologies Co., Ltd.
Model: ME909u-521
Revision: 12.636.11.01.00
IMEI: 860461025220081
+GCAP: +CGSM

AT&V
&C: 1; &D: 2; &S: 0; E: 0; Q: 0; V: 1; X: 1; S0: 0; S3: 13; S4: 10;
S5: 8; S7: 0; S10: 14; +ICF: 3,3; +IFC: 0,0

AT+CGDCONT?
+CGDCONT: 1,"IP","internet.t-mobile.cz","0.0.0.0",0,0
+CGDCONT: 16,"IPV4V6","","0.0.0.0",0,0

AT^SYSINFOEX
^SYSINFOEX: 2,3,0,1,,6,"LTE",101,"LTE"


AT^IMEISV?
^IMEISV: 8604610252200816


Pokud nám modem takto reaguje je funkční a ovladače fungují. Pro zprovoznění LTE/4G musíme WAN interface nakonfigurovat pomocí PPP protokolu.

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


Nastavení WAN_PPP




Status interface

Konfigurační soubor PPP který sestavil pfSense vypadá následovně.

cat /var/etc/mpd_wan.conf
startup:
    # configure the console
    set console close
    # configure the web server
    set web close

default:
pppclient:
    create bundle static wan
    set bundle enable ipv6cp
    set iface name ppp0
    set iface disable on-demand
    set iface idle 0
    set iface enable tcpmssfix
    set iface up-script /usr/local/sbin/ppp-linkup
    set iface down-script /usr/local/sbin/ppp-linkdown
    set ipcp ranges 0.0.0.0/0 10.64.64.0/0
    set ipcp enable req-pri-dns
    set ipcp enable req-sec-dns
    #log -bund -ccp -chat -iface -ipcp -lcp -link

    create link static wan_link0 modem
    set link action bundle wan
    set link disable multilink
    set link keep-alive 10 60
    set link max-redial 0
    set link disable chap pap
    set link accept chap pap eap
    set link disable incoming
    set link mtu 1492
    set auth authname "user"
    set auth password ��
    set modem device /dev/cuaU0.0
    set modem script DialPeer
    set modem idle-script Ringback
    set modem watch -cd
    set modem var $DialPrefix "DT"
    set modem var $Telephone "*99#"
    set modem var $InitString "&F0E1Q0 +CMEE=2"
    set modem var $APN "internet.t-mobile.cz"
    set modem var $APNum "1"
    open

úterý 24. listopadu 2015

UPnP & NAT-PMP na pfSense 2.2.5 vs Synology DSM 5.2-5644

Nedávno jsem se známým řešil na jeho pfSense routeru doma podivné chování. V pravidlech neměl žádný portforward a i přesto mu funoval Postfix běžící na Synology z internetu. Po schizofréních dvouch hodinách a testování jsem si všiml zapnuté služby UPnP & NAT-PMP. Tuto službu jsem již dříve testoval a např. Skype ji umí využívat a otevírá si porty na WAN interface routeru. Povětšinou tuto službu nechávám raději vypnutou.

pfSense disponuje touto funkcionalitou - UPnP & NAT-PMP - jedná se o projekt miniupnpd, který zajišťuje NAT Port Mapping Protocol (NAT-PMP). Automatické mapování portů, které je řízené klientem.

V NAS Synology je tedy možno řídit co se má mapovat a co ne. Nastavení se provádí v menu Synology a router pfSense mapování zajistí automatizovaně. V nepovolaných rukou může být tato funkcionalita velmi nebezpečná. Na druhou stranu je to zajímavé technícké řešení automatizace NAT-PMP.

Controll Panel / External Acces / Router Configuration


V pfSense existuje sránka Status: UPnP & NAT-PMP Status, kde je přehledně vidět kdo (upnpclient) jaké porty kam mapuje.

pondělí 18. května 2015

Seznámení se s OpenOTP

Pracovně jsem se více seznámil se zajimavým autentizačním serverem nebo spíše systémem, který kombinuje řadu funkcí a vlastností v oblasti autentizace a authorizace. Je jím produkt společnosti RCDevs SA - Luxembourg - OpenOTP.

Systém se skládá z několika komponent:
  • WebADM
  • OpenOTP Server + RADIUS Bridge
  • TiQR Server
  • OpenID/SAML IdP
  • Self - services
  • Web Plugins
Osobně jsem vyzkoušel jen část funkcí. OpenOTP jsem použil pro vzdálené ověření OpenVPN uživatelů na routeru pfSense v kombinaci s TOTP nebo HOTP skrze RADIUS. Použil a testoval jsem dvě Self aplikace - User Self-Registration a LDAP Password Reset. Pořídil jsem si hardware token RCDevs RC200 podporuící TOTP, abych vyzkošel registrace tokenů atd.

Hardware Tokens:
Software Tokens:
Možností využití OpenOTP je mnoho. Výrobce uvádí porovnání vlastností. Na OpenOTP je velmí příjemné, že se jedná o Freeware. S tím že 40 uživatelů může systém využívat zcela zdarma.

pondělí 2. února 2015

PC Engines APU.1D vs pfSense 2.2


Dostala se mi pod ruku nová generace desky od PC Engines s označením APU.1D. Je to nástupce desek ALIX.2D3 a jí podobných. Desku jsem vybavil mSATA SSD diskem a wifi kartou. Deska je od výroby dodávána s hliníkovým pruhem jakožto pasivním chladičem přehřívaných čipu. Popis instalace je zobrazen v návodu výrobce. Vypadá to amatérsky, ale asi to mají spočítané a otestované, že to stačí i pro provoz v letním období.

Po zapojení desky jsem se k ní připojil sériovou konzolí 115200 8N1. Používám GNU screen.

sudo screen /dev/ttyUSB0 115200

Deska disponuje BIOSem, který umí bootovat z několika periferii iPXE, mSATA a např. USB. Podrobnosti jsou v dokumentaci k deskce. Rozhodl jsem se v desce povýšit BIOS na aktuální verzi Build 9/8/2014, jedná se o beta, ale na problémy jsem zatím nenarazil. K mání je i produkci verze.

Aktualizace BIOSu je možná pomocí USB nebo PXE. Oba postupy jsou poměrně jednoduché. Použil jsem svůj TFTP server.

Stáhneme http://www.pcengines.ch/file/apu_tinycore.tar.bz2 a umístíme na TFTP server a upravíme konfiguraci PXE. Výrobce používá projekt Tiny Core Linux, pomocí kterého bootneme do mini Linux distribuce, která obsahuje vše potřebné pro zapsání image BIOSu na flashROM. Obdobné se dá vyrobit USB disk.

S deskou APU mi měla dorazit i redukce mSATA <> SATA, ale ta se opozdila. Tak jsem si pomoci TFTP stáhl image pfSense do RAMdisku Tiny Core Linuxu. RAM 2GB je slušné vybavení desky.

tftp -g -r /pfsense/pfSense-2.2-RELEASE-4g-i386-nanobsd.img.gz 192.168.42.13
gunzip -c pfSense-2.2-RELEASE-4g-i386-nanobsd.img.gz | dd of=/dev/sda bs=4M

Po instalaci NanoBSD verze pfSense na SSD disk, stačí jen v BIOSu nastavit boot device mSATA a uložit.

Tento návod je pro zasvěcené systémáky. Kompletní router se vším všudy se dá pořídit v eShopu http://store.open-tech.cz/router/pfsense-apu-1d/

středa 7. srpna 2013

FreeBSD Distribuce

Poznamenávám si seznam OS odvozených od FreeBSD ...

pátek 14. června 2013

VDSL modem Comtrend VR-3026e s pfSense/Alix

 Tak jsem se po nějaké době dostal opět k DSL technologii přesněji VDSL. Jeden Negr z DKnL ma hospodu v Hradci Králové a doposud byl připojenej pomocí modemu  Comtrend VR-3026e. Ovšem požadoval další funkcionalitu, kterou již modem nedokázal zastoupit.

Modem je to poměrně konfigurovatelnej ale hodně neintuitivni. A přijít na to jak jej přepnout do režimu bridge byl poměrně velkejk oříšek. Nápomocný byl např. tento návod.

Je třeba dopředu vědět, do jakého režimu je u O2 linka přepnutá. ADSL režim (ATM mode) a VDSL2 režim (PTM mode). Zde je též pár hodnotných informací.


Nastavení bridge pro ATM - ADSL2+
Nastavení bridge pro PTM - VDSL2

Po přepnutí modemu do bridge je již možno přistoupit ke konfiguraci routeru pfSense na desce Alix, kde se už jen nadefinuje PPPoE WAN interface, který se autentizuje pomoci usera O2 a sofistikovaného hesla O2 :-)

pondělí 4. února 2013

pfSense package Zabbix 2


Oblibená Firewall distribuce - FreeBSD / pfSense má nově možnost instalovat balíček Zabbix agent verze 1.8.x i 2.0.x formou pfSense balíčků.

Package Name    Category    Package Version
Zabbix-2 Agent  Services    zabbix2-agent-2.0.4 pkg v0.5

Nový aktuální balíček zabbix2-agent je příjemným rozšířením, které nám umožní podrobně monitorovat firewall s tímto systémem.

Verze zabbix 2 má mnoho rozšíření, hlavně je přínosný Low-level discovery, který umožňuje automatickou detekci fs, net devices a SNMP oid.
  • discovery of file systems;
  • discovery of network interfaces;
  • discovery of SNMP OIDs.

sobota 22. prosince 2012

pfSense 2.0.2 Auto update


Vyšla nová verze oblíbeného firewalu pfSense. Dozvěděl jsem se to z pfSense Digest http://blog.pfsense.org/ Na oficiálních stránkách změna zatím neproběhla.


Aktualizoval jsem povětšinou z předchozí verze 2.0.1. Je doporučeno aktualizovat pomocí System / Firmware / Auto update. Aktualizace stáhne novou verzi sama, zaktualizuje se a proběhne restart. Po celou dobu bylo spojení funkční. Nastal jen krátký výpadek při rebootu. Zároveň se zaktualizovali i instalované balíčky.

Nová verze pfSense 2.0.2 je hlavně opravnou verzí.

pondělí 16. července 2012

iMedia WRAP


Jelikož jsem doma chtěl přejít na pfSense-2.0.1 musel jsem povýšit i HW a to z WRAP na ALIX. Zůstala mi již letitá, ale plně funkční deska WRAP.1E-1 a tak jsem pro ní hledal alespoň testovací využití. Nalezl jsem system multimediální distribuce http://www.imedialinux.com/ a její starší verzi i pro iMedia WRAP Linux.

Instalace byla snadná. Nutná byla drobná rekonfigurace IP atd. Deska ožila a plní funkci Linuxového serveru pro ověření funkcionality sitě atd.

pátek 15. června 2012

ADSL pfSense 2.0.1

Připojení pomocí ADSL se mi vyhýbá a tak s ním nemám žádné technické zkušenosti. Změna nastala v momentě, kdy jsem byl požádán o použití routeru Alix/pfSense s ADSL konektivitou. Problém je v tom, že Alix deska nemá žádný modem. Jediným řešením je v pfSense nastavit WAN interface s použitím protokolu PPPoE. pfSense 2.0 má protokol PPPoE implomentován po novu.

ADSL modem, který jsem řešil byl dodán ISP model Zyxel Prestige P-660HW-T3 je nutno přenastavit /  Connection Setup- ISP Parameters for Internet Access / Mode - Bridge a vypnout DHCP server.

Snad jen IP modemu LAN musí být z jiného rozsahu než je LAN pfSense. Na strane ADSL routeru je LAN např. 10.1.1.1 a na straně pfSense se žádná IP na WAN nenastavuje, jen se tento interface nakonfiguruje na typ PPPoE, kde musíme znát username a password, které nám poskytne ISP.

sobota 9. června 2012

ALIX2d2 a pfSense 2.0.1

Přistály mi doma tři desky ALIX2d2 pro realizaci tří routerů s OS pfSense. Jelikož již existuje verze pfSense 2.0.1 delší dobu, nastal čas na důkladné otestování na daném HW.

Nová verze řady 2.x přináší spoustu nových vlastností. Např. nově tvůrci připravují arch. verze i386 a amd64, rovněž nově přibyla verze i s VGA konzolí, takže při použití desky ALIX3d3, bude VGA již funkční.

Instalace na CF se nezměnila, jen se mi 4G image (pfSense-2.0.1-RELEASE-4g-i386-nanobsd.img.gz) nevešla a 4GB CF, použil jsem 2G. Stará CF čtečka mi umřela a nová má asi velý buffer, protože dd provede výpis o ukončení, ale čtečka stále bliká a zapiseje. Na to tedy pozor a vyčkat!

Nových vlastností je kupa, ale první krůčky mi naznačují, že alespoň konfigurace Alias a Rules, lze importovat. Ještě musím otestovat import celé konfigurace z pfSence 1.2.3 a importnout ji do pfSense 2.0.1.

Mile mě překvapila existence balíčku zabbix-proxy, což se může velmi hodit u větších HW silnějších routerů.

pátek 11. listopadu 2011

NetworkManager vs pfSense OpenVPN

Doposud jsem se domů připojoval jen pomocí Secure Shell a když bylo třeba pomoci Wake on LAN jsem si zapnul domácí PC. Jelikož se občas potřebuji připopjit domů a dostat se na nějaké to domací HTTP je již potřeba VPN.

Oblíbený router pfSense založený na FreeBSD má podporu několika VPN implementací. Testnul jsem právě OpenVPN. Jako velký pomocník mi byl tento návod. Který mě navedl na použití velmi užitečné aplikace TinyCA, která mi výrazně usnadnila vytvoření všech certifikátů pro server i pro klienta.

Samotné certifikáty jsem si nastavil v oblíbené aplikaci NetworkManager, který je dnes již v mnoha distribucí a výrazně usnaddnuje práci s připojením kde kam :-)

pátek 2. září 2011

pfSense CARP Cluster

V práci jsem dostal za úkol otestovat funkcionalitu firewalu pfSense verze 1.2.3 a zejména jeho Hardware Redundancy (CARP) a to ještě IPSec tunnel mezi router A a B. Tento firewal hojně používám, ale CARP jsem ještě nekonfiguroval. Stanovil jsem si cíl a tím bylo postavit za pomoci virtualizace celkem 4 routery, vždy dva a dva, které jsem umístil do jednotlivých DMZ rozsahů s veřejnými IP adresami.

Nejprve poznamenám, co že je to ten CARP. Ze zakoupené knihy jsem vyčel historii protokolu CARP - Common Address Redundancy Protocol, který vznikl jako svobodné řešení failover, jež vzniklo díky projektu OpenBSD. Společnost Cisco má svůj protokol VRRP a HSRP. Bohužel patenty znemožňují jejích implementaci ve svobodných otevřený systémech. CARP je tedy znám hlavně v *BSD systémech.



Mé kroky k zprovoznění pfSense Hardware Redundancy (CARP) vedly logicky na dokumentaci projektu pfSense. Zde je stručný popis failover firewallu. Dále je tu klikací tutorial, který objasní dané řešení. Zprovoznil jsem již zmíněné routery v ESXi 4.1, ktré vyžaduji 3 IP od ISP (veřejné adresy), dále pak potřebujeme 3 IP z LAN. Vždy dvě IP jsou přiřazeny jednotlivým routerům a jedna IP tvoří onen CARP interface, který zajišťuje přehození provozu z MASTER na BACKUP a případně naopak. Jednou z důležitých součástí tohoto řešení je pfsync, kterým si firewaly předávají informace jako FW Rule, NAT, IPSec, Virtual IP atd. Vše je patrné v tutorialu. Po zprovoznění funkční synchronizace, vytvoříme CARP interface, které přiřadíme do oddělených VHID Group. Na konzoli firewalu se nám objeví carpX device.

# ifconfig carp0
carp0: flags=49 metric 0 mtu 1500
inet 80.250.16.10 netmask 0xffffff80
carp: MASTER vhid 1 advbase 1 advskew 0
# ifconfig carp1
carp1: flags=49 metric 0 mtu 1500
inet 192.168.0.1 netmask 0xffffff00
carp: MASTER vhid 2 advbase 1 advskew 0


Po vytvoření CARP device na FW A se do pár sekund konfigurace přenese na FW B. Vše zajiťuje pfsync mechanizmus. Popisovat jednotlivé kroky není třeba, vše je jasně vidět v tutoriálu.

Dalším úkolem bylo nastavení IPSec tunelu mezi dvěma faiover firewall clustery (úžasná věta). Nastavením VPN / IPSec se nám zapne podpora IPSec, tím mám hlavně na mysli aktivace programu Racoon, který je soužástí ditribuce pfSense. Podpora IPSec je v *BSD díky implementaci KAME.net. Racoon zajišťuje výměnu klíčů mezi routery pomocí protokolu ISAKMP.

Nastavení VPN IPSec politik se opět přenese na druhý firewall v clusteru. Obdobná konfigurace proběhne i na druhé straně tunelu. A ejhle již např. ping ICMP jde z LAN A do DMZ A, kde se zabalí do ESP a předá na druhou stranu tunelu, kde se opět ESP otevře a vydá svůj poklad z LAN A na druhém konci tunelu.

Ohledně ESXi bylo nutno vytvořit a povolit v port groups nastavení, dle doporučení. Pozor, je to jistý bezpežnostní ústupek.

Pro otestování průchodů tunelu jsem si zprovoznil dva Ubuntu servery, které jsem posadil do LAN za failover routery. Mám oblíbený nástroj nesoucí jméno TTCP, který změří rychlost přenosu tunelem.

nasloucháme:

ubu-a:root:~> ttcp -v -r -s -f M -l 25600
ttcp-r: buflen=25600, nbuf=2048, align=16384/0, port=5001 tcp
ttcp-r: socket
ttcp-r: accept from 192.168.2.10
ttcp-r: 52428800 bytes in 68.72 real seconds = 0.73 MB/sec +++
ttcp-r: 52428800 bytes in 0.57 CPU seconds = 87.72 MB/cpu sec
ttcp-r: 8981 I/O calls, msec/call = 7.84, calls/sec = 130.68
ttcp-r: 0.0user 0.5sys 1:08real 0% 0i+0d 416maxrss 0+6pf 8662+13csw
ttcp-r: buffer address 0xd94000

spojíme se s nasluchačem:

ubu-b:root:~> ttcp -v -t -s -f m -l 25600 192.168.1.10
ttcp-t: buflen=25600, nbuf=2048, align=16384/0, port=5001 tcp -> 192.168.10.100
ttcp-t: socket
ttcp-t: connect
ttcp-t: 52428800 bytes in 68.45 real seconds = 5.84 Mbit/sec +++
ttcp-t: 52428800 bytes in 0.03 CPU seconds = 13333.33 Mbit/cpu sec
ttcp-t: 2048 I/O calls, msec/call = 34.22, calls/sec = 29.92
ttcp-t: 0.0user 0.0sys 1:08real 0% 0i+0d 414maxrss 0+8pf 455+0csw
ttcp-t: buffer address 0x2468000


na routeru pfhaA je možno sledovat ESP šifrovaný provoz:

tcpdump -i em1 host 80.250.16.10 and host 193.179.144.106
13:11:04.453352 IP 193.179.144.106 > 80.250.16.10: ESP(spi=0x07d761dc,seq=0x1aaf8), length 116
13:11:04.453696 IP 80.250.16.10 > 193.179.144.106: ESP(spi=0x06061ce4,seq=0xd580), length 116
13:11:04.468895 IP 193.179.144.106 > 80.250.16.10: ESP(spi=0x07d761dc,seq=0x1aaf9), length 116
13:11:04.469151 IP 80.250.16.10 > 193.179.144.106: ESP(spi=0x06061ce4,seq=0xd581), length 116


Zde je právě probíhající vyměna klíčů o kterou se stará Racoon

13:12:31.622854 IP 193.179.144.106.isakmp > 80.250.16.10.isakmp: isakmp: phase 1 I agg
13:12:31.638247 IP 80.250.16.10.isakmp > 193.179.144.106.isakmp: isakmp: phase 1 R agg
13:12:40.712942 IP 193.179.144.106.isakmp > 80.250.16.10.isakmp: isakmp: phase 1 I agg
13:12:40.713083 IP 80.250.16.10.isakmp > 193.179.144.106.isakmp: isakmp: phase 1 R agg