Vor kurzem bin ich zum ersten mal auf eine Palo Alto im Zusammenhang mit macmon gestoßen. Da es nur eine Palo Alto Firewall als mögliche ARP Quelle im Netz gab, hat sich die Frage gestellt: Wie kann man ARP bei Palo Alto auslesen?
Nach kurzer Recherche hat sich ergeben, dass Palo Alto keine Informationen über SNMP zu ARP bereitstellt. Also mal fix die Methoden in macmon geprüft und festgestellt, dass hier eigene Methoden existieren für die API und über die CLI (SSH). Die folgende Anleitung bezieht sich auf die API Methode.
Konfiguration der Palo Alto (API Methode)
Da ich kein Palo Alto Spezialist bin, halte ich die Infos bzgl. der nötigen Konfiguration gering, damit nicht meine eventuell fehlerhaften Anweisungen am Ende in einer produktiven Umgebung landen und zu Fehlern oder Sicherheitsproblemen führen. Daher müsst ihr die folgenden Anweisungen um euer Wissen oder Google erweitern.
Rolle anlegen
Unter "Admin Roles" muss eine Rolle angelegt werden. In der Rolle vergebt ihr die Rechte zum Lesen über die "XML API". Die Berechtigungen für WebUI und CLI können komplett entzogen werdern.
Benutzer anlegen
Unter "Administrators" legt ihr einen neuen Benutzer an und weist ihm die neue Rolle zu. Vergebt an der Stelle bitte auch ein sicheres Kennwort!
Magagement Zugang
Damit macmon auch an die API der Palo Alto ran kommt, müsst ihr im Managementzugriff der Palo Alto dann zu guter Letzt noch den Zugriff über HTTPS von der macmon Appliance aus erlauben.
Konfiguration macmon
API Key erstellen
Für die Nutzung der API durch macmon, muss mit dem oben genannten Benutzernamen und Passwort noch ein API Key erstellt werden. Loggt euch dazu auf der Shell von macmon ein und setzt folgenden Befehl ab:
curl -k -H "Content-Type: application/x-www-form-urlencoded" -X POST https://X.X.X.X/api/?type=keygen -d 'user=<benutzername>&password=<passwort>'
- X.X.X.X durch die IP der Palo Alto
- <benutzername> (inkl. <>) durch den in der Palo Alto konfigurierten Benutzernamen
- <passwort> (inkl. <>) durch das entsprechende Passwort.
Wenn ihr alles richtig gemacht habt, sieht die Ausgabe wie folgt aus:
>>> EINGABE <<<
curl -k -H "Content-Type: application/x-www-form-urlencoded" -X POST https://192.168.1.1/api/?type=keygen -d 'user=macmon&password=Test1234'
>>> ANTWORT <<<
<response status = 'success'><result><key>LUFRPT1majVFTTNlSDNsVmJhQUxZSEszb0dOczE0czA9MmlJWGNiN21PWUg2Y294aXNUVS81anNkb01oemkw R2hEbkJ1VHByZkM0emdzZEtROERuNWxncmtMU3VyZ0h3U0xTMVhDS2gxV3p1OG1raGgvOVFHUmc9PQ==</key></result></response>
Zugangsdaten anlegen
Den Text zwischen den <key></key> Tags nutzt ihr zusammen mit dem Benutzernamen um die Zugangsdaten in macmon anzulegen (HTTPS Zugangsdaten). Der Key ist dabei das Passwort!
Methode anpassen
Am Ende die neuen Zugangsdaten der Palo Alto in macmon zuweisen und die Methode zum Auslesen der ARP Informationen in macmon auf "Palo Alto HTTP API (ARP)" konfigurieren. Voilà 😊