Dieser Blogbeitrag beschreibt die Funktionsweise und Konfiguration von einem Fortigate HA Cluster mit Fortigate Firewalls unter Forti OS 6.2.5. Das dafür verwendete Protokoll ist das Fortigate Clustering Protocol (FGCP), welches folgende Funktionen vereint:
Jedes Mitglied einer Clustergruppe ist eine sog. Einheit (Unit). Eine dieser Einheiten wird als primäre Firewall ausgewählt, die die Konfiguration an alle weiteren Einheiten verteilt. Ebenso können Statusinformation über aktive Sessions synchronisiert werden, so dass z.B. TCP Sessions bei einem Ausfall ohne TCP Verbindungsaufbau weiterlaufen. Die Synchronisierung der Einheiten läuft über dedizierte Heartbeat Interfaces.
Bevor ein Cluster in Betrieb genommen werden kann müssen folgende Voraussetzungen erfüllt sein:
Zur Veranschaulichung der Konfiguration dient folgender Testaufbauvon dem Fortigate HA Cluster, bestehend aus zwei FortiGate 50E und einem nachgelagerten Aruba 2930F Switch
Im produktiven Umfeld würde man, sofern verfügbar, den Switch mit geeigneten Virtualisierungstechniken (VSF, IRF, VSS oder änlichen) ebenfalls redundant auslegen.
Wenn die beiden Firewalls räumlich getrennt sind, wäre auch der Transport der Heartbeat-Pakete über ein separates VLAN möglich.
Die Konfiguration erfolgt in folgenden Schritten:
1. Hostnamen vergeben
Da die Hostnamen nicht synchronisiert werden, müssen Sie diese eindeutig vergeben. In unserem Fall heißen die Einheiten Primary und Secondary.
2. Auf beiden Systemen die Lizenzen aktivieren
3. Fortigate HA Cluster Konfiguration auf Primary durchführen. Hierzu müssen Sie folgende Parameter konfigurieren:
Auf der Primary Firewall sieht die Konfiguration dann so aus:
Auf der Secondary Firewall sieht die Konfiguration identisch aus mit Ausnahme der Device Priorität. Hier können Sie einen kleineren Wert wählen, damit versetzen Sie dieses System in den Standby Modus.
Sobald Sie die beiden Interfaces über die Heartbeat Interfaces verbinden, formiert sich der Cluster. Primary läuft als Master und Secondary als Slave. Statt der Konfigurationsseite wird nun der Status des Clusters angezeigt:
Sie können optional noch Management Interface Reservation konfigurieren, um die beiden Systeme in vorhandene Management- und Monitoring System einzubinden. Auch fürs Troubleshooting ist es zu empfehlen, eine Managemt Interface Reservation einzurichten. Wir gehen dazu mit „Edit“ in die Konfiguration des Clusters:
Mit dieser Einstellung lassen sich nun verschiedene IP Adressen auf den beiden Systemen konfigurieren:
Die Management Interfaces werden in der Cluster Übersicht mit einem Zahnrad und die Heartbeat Interfaces mit einem Herz angezeigt:
Auf den Chassis sollte nun auch die HA LED auf beiden Systemen grün sein:
Bei einem Ausfall einer Firewall kommt es zu einer kurzen Unterbrechung und die zweite Einheit übernimmt die aktiven Sessions. Um ein Gefühl für die Ausfallzeit zu bekommen lassen wir ein Ping auf eine IP Adresse der Systeme laufen und schalten die aktive Firewall aus:
Im Fortigate HA Cluster Event Log sehen wir folgende Meldungen:
Der Status fehlerhafte HA Status wird auch direkt am Chassis in Form einer roten HA LED angezeigt:
Weitere Dokumentation zu diesem Thema findet sich im FortiOS Handbook – High Availability unter https://docs.fortinet.com