Popis situace
Obecně jde o výměnu Fortinet FortiGate FG-300E za FortiGate FG-200G.
Dokumentace
Aktuální řešení
Protože končí podpora současných FortiGate zařízení, tak je potřeba pořídit nové a přenést na ně konfiguraci. Nahrazujeme dva HW boxy FortiGate FG-300E, které budou brzy Out of Support, za nové FortiGate FG-200G. Novější generace obvykle nabízejí vyšší výkon, takže pokud se nezvýšily požadavky, je možné zvolit nižší modelovou řadu.
HW Appliances jsou nakonfigurované jako FGCP HA cluster (FortiGate Cluster Protocol High Availability) a využívají VDOM (Virtual Domains). Aktuálně běží na FortiOS 7.4.11.
Způsob migrace konfigurace
Moje původní představa byla, že se na novém zařízení obnoví aktuální konfigurace, a tím bude vše hotovo. Ale v takovém případě se mohou objevit problémy, hlavně odlišnostmi HW modelů.
Doporučené řešení je použít službu FortiConverter. Ta podporuje i migraci z Firewallů jiných značek. V případě konverze FortiGate na FortiGate umožňuje migraci ze starších verzí a mezi různým hardwarem. Řeší se například mapování interfaců. Za určitých podmínek můžeme využít zdarma.
Obecný postup výměny zařízení
- obě nová zařízení zapojíme a provedeme základní nastavení a registraci
- z jednoho stávajícího FortiGate uložíme (zálohujeme) konfiguraci a pomocí FortiConverter provedeme její konverzi (migraci)
- převedenou konfiguraci obnovíme na jedno nové zařízení
- druhé nové zařízení připojíme do clusteru, dojde k synchronizaci konfigurace
- doladíme detaily nastavení
- původní zařízení vypneme, přepojíme síťové kabely, nová zařízení zapneme
Připojení a základní nastavení
Na obou nových boxech provedeme základní konfiguraci, která umožní připojení na webovou/SSH správu po síti. Zařízení namontujeme do racku, ideálně blízko stávajících, abychom při výměně jednoduše přepojili síťové kabely. Připojíme MGMT rozhraní do sítě a propojíme Heartbeat Interfaces obou boxů.
Příprava údajů
Připravíme si základní údaje pro stávající i nová zařízení.
- jméno, IP adresa pro správu, model, sériové číslo
- heslo pro admin účet (dočasné/trvalé)
- virtuální IP adresa pro správu
Pokud chceme současně připojit stávající i nová zařízení (Management) do administrační sítě, tak musíme použít jiné IP adresy. Zde máme cluster, takže se pro správu využívá virtuální IP a MAC adresa. Pro přímý přístup na jednotlivé členy clusteru využíváme In-band management (a tedy další IP adresy). Popsali jsme v článku FortiGate High Availability cluster a Virtual Domains (VDOM).
Připojení k zařízení
Pro správu můžeme primárně využít Console Port nebo MGMT Ethernet port. Pro úvodní nastavení můžeme MGMT port připojit do sítě s DHCP, aby získal IP adresu. Nebo můžeme použít přednastavenou adresu 192.168.1.99/24. Následně je možno se připojit na GUI https://192.168.1.99.
Po přihlášení je nejprve nutné nastavit heslo, pak následuje povinný krok registrace FortiCare. Nemáme možnost změnit žádná nastavení, abychom například nakonfigurovali přístup do internetu.

V některých případech proto může být vhodnější (či nutné) se připojit na konzoli a provést úvodní konfiguraci v příkazové řádce (CLI). V balení je pěkný bílý konzolový kabel do USB, který hned fungoval (emuluje sériový COM port). Vyzkoušel jsem také klasický modrý Cisco konzolový kabel. Pro připojení můžeme využít PuTTY a běžné nastavení 9600-8-N-1.

Úvodní konfigurace v CLI
Přihlásíme se jako admin bez hesla. Je vynuceno nastavení hesla.
FortiGate-200G login: admin Password: Verifying password... You are forced to change your password. Please input a new password. New Password: Confirm Password: Verifying password... Welcome!
Nastavíme IP adresu na MGMT interface.
Pozn.: Při pokusu o nastavení adresy jsem zjistil, že je vytvořeno rozhraní LAN, kde je použita IP adresa 192.168.100.99/24. Pokud tento subnet koliduje s naší sítí pro správu, tak je potřeba nejprve změnit nebo odstranit.
config system interface edit "lan" set ip 192.168.2.100 255.255.255.0 next edit "mgmt" set ip 192.168.100.223 255.255.255.0 next end
Nastavení brány pro MGMT.
config router static edit 1 set gateway 192.168.100.1 set device "mgmt" next end
Pro lepší identifikaci nastavení jména.
config system global set hostname FW1n end
DNS je přednastavené, ale musel jsem provést změnu protokolu, aby mi začalo fungovat.
config system dns unset protocol end
Registrace zařízení
Pomocí webového prohlížeče se přihlásíme na GUI a jsme nuceni provést registraci u FortiCare a odsouhlasení podmínek.

Hned poté se nový FortiGate objeví v seznamu našich produktů na FortiCloud.
Upgrade FortiOS
Myslím, že je lepší mít na novém boxu stejnou verzi firmware jako na stávajícím. Určitě oba nové FortiGate musí mít stejnou verzi pro vytvoření clusteru. Zařízení byla dodána s FortiOS 7.4.8, takže jsem upgradoval na FortiOS 7.4.11. Provedl jsem to pomocí CLI, i když bychom mohli dokončit úvodního průvodce a upgradovat v GUI.
Pozn.: Nevyzkoušel jsem, zda lze tento krok provést hned na začátku nebo musí být zařízení registrované.
FW1n # execute restore image management-station ? Image-ID Version 07006000FIMG0035306006 v7.06 MR6-GA-M P6 b3652 (upgrade) 07006000FIMG0035306005 v7.06 MR6-GA-M P5 b3651 (upgrade) 07006000FIMG0035306004 v7.06 MR6-GA-F P4 b3596 (upgrade) 07004000FIMG0035304011 v7.04 MR4-GA-M P11 b2878 (upgrade) 07004000FIMG0035304010 v7.04 MR4-GA-M P10 b2867 (upgrade) 07004000FIMG0035304009 v7.04 MR4-GA-M P9 b2829 (upgrade) 07002000FIMG0035302013 v7.02 MR2-GA-M P13 b6687 (downgrade) 07002000FIMG0035302012 v7.02 MR2-GA-M P12 b6663 (downgrade) 07002000FIMG0035302011 v7.02 MR2-GA-M P11 b6561 (downgrade) 07002000FIMG0035302008 v7.02 MR2-GA-M P8 b6397 (downgrade) FW1n # execute restore image management-station 07004000FIMG0035304011 Please wait... Getting image 07004000FIMG0035304011 from Management station... ######################################################################## This operation will replace the current firmware version! Do you want to continue? (y/n)y Verifying the signature of the firmware image. Warning: Upgrading to an image with Mature maturity notation. Please wait for system to restart.
Přenos stávající konfigurace na nové zařízení
Fortinet nabízí (jednorázovou) cloudovou migrační služba FortiConverter Service. Jednoduše nahrajeme stávající konfiguraci firewallu a po určité době stáhneme převedený výsledek.
Alternativně můžeme použít softwarový nástroj FortiConverter Tool, který je určený pro poskytovatele služeb. Umožňuje provádět neomezený počet konverzí. Je k dispozici v rámci ročního předplatného.
FortiConverter licence
Pro využití služby FortiConverter potřebujeme licenci. Pro převod konfigurace mezi zařízeními FortiGate ji lze získat zdarma. Balíček Enterprise Protection obsahuje plnou verzi licence FortiConverter (Comparing Bundles).
Migrace konfigurace ve FortiGate GUI
Od FortiOS 7.4 je možné přenést konfiguraci ze staršího zařízení FortiGate na nové přímo z grafického uživatelského rozhraní FortiGate během FortiGate Setup. Obě FortiGate zařízení musí být registrovaná pod stejným FortiCare účtem a mít dostupnou komunikaci na FortiConverter servery. Cílový FortiGate musí mít platnou FortiConverter licenci.
Na zdrojovém zařízení je potřeba povolit Allow FortiConverter to obtain config file once. Na cílovém se projde průvodce, který vytvoří ticket na FortiConverter Portal (ale nemusíme se na portál připojovat). Konverze trvá nějakou dobu (uvádí se typicky 1 pracovní den). Přímo z FortiGate GUI pak aplikujeme (obnovíme) migrovanou konfiguraci.
Migraci můžeme provést i později, protože se tento krok nabízí při každém přihlášení. Stačí nyní přeskočit tlačítkem Later a dokončit průvodce.
Pozn.: V dialogu se mi stále ukazovalo, že nemám licenci a nemohl jsem kliknout na Convert. Obrátil jsem se na podporu, podle které to má fungovat. Maximálně, že nedošlo k synchronizaci s FortiGuard. Přesto mi tato funkce stále nefungovala. Nakonec jsem využil FortiConverter portál (průběh je velmi podobný, takže integrace do FortiGate GUI nepřidává moc výhod).

FortiConverter Service Portal
Migrace konfigurace se provádí tak, že vytvoříme ticket na service.forticonverter.com, kde se přihlásíme FortiCloud účtem. Buď pod Tickets - Create New Ticket nebo pod Devices sloupec Action u zařízení a Create Ticket.
Pozn.: Dokumentace uvádí, že se jedná o jednorázovou konverzní službu. Během 12 měsíců od data registrace servisní smlouvy můžeme vytvořit pouze jeden servisní ticket. Ale možná se to netýká plné licence v Enterprise Bundle, protože se mi nabízí i další migrace.
Průvodce vytvořením požadavku
- Ticket Basics - nejprve vybereme cílové zařízení a zadáme kontaktní údaje
- Device - v dalším kroku zvolíme výrobce zdrojového zařízení, nahrajeme konfiguraci a určíme cílovou verzi FortiOS
- Interface Mapping - složitější krok je mapování rozhraní všech možných typů, většina se připraví automaticky, povinné je namapovat všechna zdrojová fyzická rozhraní, nepoužívaná rozhraní můžeme označit Do not migrate
- Review Interface Migration - ukazuje, jak rozhraní vypadají po migraci konfigurace, můžeme upravit nastavení
- Select Management Interface - vybereme rozhraní pro správu cílového zařízení, nastavíme IP adresu
- Comment - do komentáře můžeme přidat zvláštní požadavky
- Submit Ticket - zobrazí se kompletní nastavení, kliknutím na Create Ticket vytvoříme požadavek

Vstupem pro migraci je samozřejmě naše konfigurace, kterou posíláme do Fortinetu. Ta běžně obsahuje hesla a další citlivé údaje. Můžeme zvážit, zda je ve vstupní konfiguraci zamaskovat a následně opět doplnit.
Pozn.: Fortinet uvádí, že konverze obvykle trvá 1 až 2 dny. Moje konverze byla za hodinu a čtvrt hotová.
Stažení převedeného konfiguračního souboru
Ve chvíli, kdy dojde ke zapracování požadavku, dostaneme emailem informaci. Přihlásíme se na FortiConverter Service Portal, otevřeme ticket a zde můžeme stáhnout převedený konfigurační soubor a souhrnnou zprávu. Nachází se zde také informace, že pro přístup na zařízení bylo účtu admin nastaveno určité dočasné heslo. To vidíme také v konfiguračním souboru.
Úprava konfiguračního souboru
Převedený konfigurační soubor můžeme projít, porovnat s originálem či jinak zkontrolovat. Určitě si projdeme report o migraci, kde jsou uvedeny případné problémy a upozornění. Nový FortiGate máme zatím připojen pouze do management sítě. Je důležité zkontrolovat nastavení rozhraní MGMT, aby nedošlo ke konfliktu adres.
V mém případě clusteru a In-band management zůstala nastavena původní management-ip, proto je potřeba změnit. Nalezneme danou část konfigurace v souboru a změníme adresu.
config system interface edit "mgmt" set management-ip 192.168.100.223 255.255.255.0 set ip 192.168.100.219 255.255.255.0
Pokud chceme, tak můžeme upravit jméno.
config system global set hostname "FW1n"
Cluster Group ID - virtuální MAC adresa
Je tu ještě jedno důležité nastavení, které souvisí s HA cluster. MGMT port je členem clusteru a používá virtuální IP adresu a také virtuální MAC adresu, která je aktivní na primárním zařízení (Master). MAC adresa se generuje způsobem popsaným v Technical Tip: HA Cluster virtual MAC addresses. Takže když obnovíme konfiguraci na nový FortiGate, tak se použije stejná virtuální MAC adresa a dojde ke konfliktu (MAC is flapping between port).
Vyřešit to můžeme jednoduše nastavením jiného Group ID, než má současný cluster. Jako výchozí se používá 0, takže můžeme použít třeba 1.
config system ha set group-id 1
Na aktuální nastavení se můžeme podívat.
FW1 (global) # get system ha group-id : 0 FW1 (global) # get hardware nic mgmt | grep HWaddr Current_HWaddr 00:09:0f:09:00:01 Permanent_HWaddr 04:d5:90:53:61:16 HW_Permanent_HWaddr 04:d5:90:53:61:16 FW1 (global) # get system ha status | grep "HA oper" Primary: FG3H0xxxxxxxxxxx, HA operating index = 0 Secondary: FG3H0xxxxxxxxxxx, HA operating index = 1
Obnova konfigurace na nové zařízení
Přihlásíme se na nový FortiGate a dokončíme Setup. Přeskočíme migraci, asi vypneme automatické upgrady a nastavíme Dashboard (Optimal).
Pak provedeme obnovu konfigurace:
- v pravém horním rohu klineme na přihlášeného uživatele (Admin)
- Configuration - Restore
- nahrajeme konfigurační soubor
- klikneme na OK
- potvrdíme, že dojde k obnově globální konfigurace a restartu zařízení, pomocí OK
- po restartu se přihlásíme dočasným heslem a nastavíme nové heslo

Připojení druhého zařízení do clusteru
- (Global) - System - HA
Pozn.: Tuto oblast jsme si podrobně popsali ve starším článku FortiGate High Availability cluster a Virtual Domains (VDOM). Informace jsou stále platné.
Na nový FortiGate, kde jsme obnovili konfiguraci, se přeneslo nastavení clusteru. Ověříme, že je vše v pořádku, můžemet řeba upravit priority.
Přihlásíme se na druhý nový FortiGate. Ten je zatím ve Standalone módu, který změníme podle našich požadavků na Active-Passive. Nastavíme stejné hodnoty Group ID, Group name, Password, Heartbeat interfaces jako na prvním zařízení. Potvrdíme OK a začne se sestavovat cluster (připojovat nový uzel).

Na prvním FortiGate (Primary) se objeví nové zařízení jako Not Synchronized a nějakou dobu poběží synchronizace.

In-band management
Zároveň přijdeme o přístup na (přímou) administraci druhého boxu, protože se přepíše konfigurace MGTM rozhraní. Pomocí CLI můžeme nastavit In-band management. Přihlásíme se na první FortiGate a skrze něj se připojíme k druhému, kde nastavíme management-ip.
FW1n (global) # execute ha manage ? <id> please input peer box index. <1> Subsidiary unit FG2H0xxxxxxxxxxx FW1n (global) # execute ha manage 1 admin Warning: Permanently added '169.254.0.2' (ECDSA) to the list of known hosts. admin@169.254.0.2's password: FW2n # config global FW2n (global) # config system interface FW2n (interface) # edit mgmt FW2n (mgmt) # set management-ip 192.168.100.224/24 FW2n (mgmt) # end
Dokončení přechodu na nový FortiGate
Nyní by mělo být vše připraveno na finální přepojení. Ověříme funkčnost clusteru a projdeme nastavení.
Připojení k FortiAnalyzer
Pokud používáme FortiAnalyzer, tak musíme nová zařízení připojit/autorizovat. Můžeme to provést až po finálním přepojení.
Nastavení Dashboards
Je jedna věc, která se nepřenese migrací. Myslím, že by na této oblasti mohl Fortinet zapracovat. Jde o Dashboards.
Nastavení je sice uložené v konfiguraci, ale dostaneme se k němu pouze v záloze konfigurace. Nezobrazí se pomocí show příkazů. Konfigurace se také nesynchronizuje v rámci clusteru. Je samostatná pro každého uživatele (hodila by se možnost rozkopírovat jedno nastavení ostatním).
Můžeme vykopírovat ze zálohy a zadat na novém FortiGate pro určitého uživatele.
config system admin edit "admin" config gui-dashboard edit 1 next end set gui-default-dashboard-template "minimal" next
Výměna zařízení - přepojení firewallů
Poslední krok je přesunout provoz na nový FortiGate cluster. Naplánujeme výpadek, kdy provedeme přepojení.
Máme funkční původní (FortiGate FW1, FW2) a nový HA cluster (FortiGate FW1n, FW2n). Každý se skládá z primární jednotky, která zpracovává provoz, a sekundární jednotky, která jen čeká na výpadek. Sekundární jednotku můžeme vypnout bez omezení provozu. Role se mění podle dostupnosti zařízení, tak snad není popis níže moc matoucí.
Postup, který mi připadá jako nejefektivnější pro minimalizaci výpadku. Možná není nutné nové FortiGate boxy vypínat, pak by mohl být výpadek ještě kratší. Ale připadá mi jistější čistý start.
- vypneme obě nové jednotky (FW1n, FW2n)
- vypneme sekundární jednotku původního clusteru (FW2)
- přepojíme síťové kabely mezi sekundárními jednotkami (FW2 > FW2n)
- vypneme primární jednotku původního clusteru (FW1)
- začíná výpadek
- zapneme sekundární jednotku nového clusteru (FW2n), bude několik minut startovat a stane se primární
- přepojíme síťové kabely mezi primárními jednotkami (FW1 > FW1n)
- zapneme primární jednotku nového clusteru (FW1n), stane se sekundární
- výpadek končí ve chvíli, kdy nastartuje první nová jednotka (u mne to trvalo necelých 5 minut, což je zhruba start FortiGate zařízení)
Vypnutí FortiGate
Pomocí GUI
- klineme v pravém horním rohu na přihlášeného uživatele
- System - Shutdown
Pomocí CLI
FW1 # execute shutdown This operation will shutdown the system ! Do you want to continue? (y/n)y System is shutting down... The system is going down NOW !! The system is halted.
Zapnutí FortiGate
Abychom zapnuli fyzický FortiGate, tak musíme obnovit napájení. Typicky odpojíme a znovu zapojíme napájecí kabely.
Díky za pěkné shrnutí, ostatně jako vždy :-). Aktuálně jsem dvakrát migroval 40F do novějšího boxu z řady G a FortiConverto se sice nabízel, ale zhodnotil jsem, že rychlejší bude to udělat přes ruční úpravu zálohy konfiguráku z původního boxu. Co se týká FortiOS, obojí na 7.2.13. Bylo potřeba:
1. přepsat hlavičku v prvním řádku na model nového boxu
2. v původní záloze upravit část interfaců (s opravou SNMP indexu)
3. ve zbytku konfiguráku si pohlídat, že tam jsou správně nahrazené jména ifaců
Ve výsledku to nebyla zase tak velká "drbačka", ale až budu migrovat něco většího.