ID XML APIBenutzer-Setup auf UID Windows-Agent
31603
Created On 03/20/19 16:23 PM - Last Modified 03/26/21 18:22 PM
Symptom
In PanOS 8.0.x und höher fügen die Aufrufe beim XML API Hinzufügen/Löschen von IP Benutzerzuordnungen auf einem windows-basierten ID Benutzer-Agenten nicht die erforderlichen Zuordnungen zum Agenten hinzu, und anschließend schlägt der Datenverkehr fehl. Dies gilt als wahr, auch wenn die XML API 's gesehen wurden, um ohne Probleme in den vorherigen Versionen zu arbeiten.
Cause
In PanOS 8.0.x und höher erfordert der windows-basierte ID Benutzer-Agent nun, dass sich die API Clients mithilfe eines Identitätszertifikats authentifizieren, das von einem vertrauenswürdigen Stammserver ausgestellt CA wurde. Dadurch wird verhindert, dass schädliche Zuordnungen aufgelistet werden oder Zuordnungen von einem nicht authentifizierten Benutzer böswillig entfernt werden.
Resolution
Mit der Wiedereinführung der Verwendung von XML API zum Zwecke der IP User-Mapping-Addition auf einem Windows-basierten ID User-Agenten in 8.0 besteht eine zusätzliche Anforderung, ein Clientzertifikat auf dem Client zum Zwecke der Authentifizierung zu API verwenden.
Im Folgenden sind die allgemeinen Anforderungen an das Client-Ceritifcate:
1. Das Clientzertifikat kann entweder von Domain/Enterprise Root oder direkt vom Server ausgestellt CA Firewall CA werden.
2. Das ausstellende CA Zertifikat muss im Zertifikatspeicher "Vertrauenswürdige Stammzertifizierungsstelle" auf dem Server/Host platziert werden, auf dem der Windows-basierte UID Agent installiert ist.
3. Der Client muss das ausgestellte Zertifikat verwenden, um eine Verbindung mit dem UID Windows-Agent herzustellen.
Nachdem das Identitätszertifikat an den Client ausgestellt wurde, sollten Sie die folgenden Schritte ausführen, um die Verbindung zum Windows-Agenten zu konfigurieren und XML API zu UID überprüfen:
+ Auf dem Linux-Rechner sollte das Clientzertifikat im PEM-Format importiert werden. In diesem Szenario lautet das Clientzertifikat 'cert_xmlapi_clientcert.pem'
+ Verwenden Sie den folgenden Befehl, um das Senden der Nachricht an den Userid-Agent zu testen.
$ cat userid.xml | openssl s_client -cert cert_xmlapi_clientcert.pem -connect 10.193.113.143:5006
+ Im Folgenden finden Sie eine Beispieldekodierung der zertifikatsinformationen, die in diesem Prozess verwendet werden.
~$ openssl x509 -in cert_xmlapi_clientcert.pem -text -noout Certificate: Data: Version: 3 (0x2) Serial Number: 22 (0x16) Signature Algorithm: sha256WithRSAEncryption Issuer: CN=paloaltonetworks.local Validity Not Before: Jul 19 10:16:54 2017 GMT Not After : Jul 19 10:16:54 2018 GMT Subject: CN=xmlapi.paloaltonetworks.local Subject Public Key Info: Public Key Algorithm: rsaEncryption Public-Key: (2048 bit) Modulus: 00:d7:06:bf:46:86:1a:7d:36:4e:78:01:dd:4e:27: ff:7a:b6:0a:70:f6:06:8c:7f:35:c0:e8:07:ef:1c: e8:9d:a5:bb:c9:7b:b1:77:26:2a:7a:6e:dd:8b:0d: 09:7e:72:41:5a:0b:23:2c:96:08:ed:9e:4b:9b:ee: 2c:11:66:66:c5:b8:ba:9a:11:17:79:65:54:5a:ab: 99:5a:1e:5f:2c:71:af:a4:da:75:68:1a:11:ea:a0: 6e:a1:5d:db:11:bd:29:94:a5:fb:dc:cb:bf:33:36: b8:96:40:04:7d:5d:3a:32:24:0b:d1:c3:75:9c:a2: f8:ba:dd:28:87:6f:50:9f:45:3d:02:3d:1d:b0:bf: 32:ba:93:53:b8:07:4f:72:ad:fb:e4:72:5a:4d:92: 83:3d:b3:e4:dc:94:20:7b:00:e9:86:d6:79:e7:6f: 60:68:c0:a5:66:1a:a9:cf:83:24:f7:c6:ba:7a:60: df:db:fe:5a:de:27:6b:db:fd:b9:1a:7e:2e:e7:40: 3d:50:38:00:2a:71:71:2b:5f:f6:8e:b7:b6:87:bd: 00:7f:48:82:68:14:ce:a4:0b:92:51:2c:d2:8b:b8: 04:aa:6c:a3:aa:a9:74:99:80:cc:67:3e:5b:3c:9d: 3e:fc:0f:53:37:3f:0d:14:42:db:16:6d:f1:0a:fb: 92:55 Exponent: 65537 (0x10001) X509v3 extensions: X509v3 Basic Constraints: CA:FALSE X509v3 Key Usage: Digital Signature, Key Encipherment, Data Encipherment, Key Agreement X509v3 Extended Key Usage: TLS Web Server Authentication, TLS Web Client Authentication, IPSec End System X509v3 Authority Key Identifier: 0. X509v3 Subject Key Identifier: 5B:97:AF:6D:D2:99:E5:FE:AE:9E:24:A3:4B:F2:F6:7E:57:94:30:30 Signature Algorithm: sha256WithRSAEncryption bc:53:f4:68:8c:36:48:42:2f:3e:c0:43:ed:1e:a6:e6:96:61: c5:53:6a:37:42:ca:c6:e2:4c:be:76:3d:a5:18:70:f3:1a:9b: a1:42:d0:37:c9:3d:ff:dd:13:8c:55:a4:c6:aa:da:57:a1:19: 6e:f0:ed:82:6c:fd:b4:57:f9:26:21:46:d5:cd:95:8c:81:5e: ec:15:0f:86:4a:f8:f3:dc:d8:3b:50:bf:c9:cf:52:ec:80:62: 10:0b:7c:37:2c:b6:8e:85:45:23:bf:03:46:ee:c8:ab:5a:1a: 09:89:af:fb:4d:59:23:61:00:dc:73:9f:78:5e:fb:98:cf:cb: ca:d1:28:cb:0a:a6:e8:35:fe:b6:b1:64:bd:48:2b:d0:15:df: 9d:28:1f:5a:e7:0b:72:fe:f8:3a:c3:0a:f6:25:ef:eb:f4:80: 04:fc:01:f0:a9:2f:d9:31:e3:dd:42:18:df:70:8f:44:78:89: 0c:61:a4:c8:eb:8e:d7:0c:53:a3:f6:29:49:d6:7a:8d:8a:a5: ef:f7:c4:c2:73:21:25:dd:e9:3c:58:ba:5d:6f:c7:25:a8:a1: f5:d3:4a:b7:9e:81:d2:44:19:38:7f:65:23:48:e7:ba:16:35: 3f:ff:e5:e6:ff:86:9d:db:31:2c:74:25:d8:57:cc:2d:89:2b: db:02:c1:aa
+ Sobald der Client überprüft wurde, dass er das richtige Zertifikat verwendet, installieren Sie das Zertifikat, das das Clientzertifikat ausgestellt hat, CA API im Vertrauenswürdigen Stammzertifizierungsspeicher auf dem Windows-Server, auf dem der ID Benutzer-Agent ausgeführt wird, sodass es als vertrauenswürdiges Zertifikat überprüft wird.
+ Führen Sie dazu den Befehl "mmc" aus dem Windows-Ausführungsfenster aus. Sobald die MMC Konsole geöffnet ist, fügen Sie bitte das Snap-In "Zertifikate" aus dem Dateimenü hinzu. Fügen Sie das Snap-In für das Computerkonto hinzu.
+ Sobald das Zertifikat hinzugefügt wurde, platzieren Sie das CA Ausstellerzertifikat in "Zertifikate (lokaler Computer) -> vertrauenswürdige Stammzertifizierungsstellen -> Zertifikate"
Sobald das Zertifikat im Speicher "Vertrauenswürdige Stammzertifizierungsstelle" platziert wurde, starten Sie den Dienst des Benutzer-Agenten neu, da der Dienst den ID Zertifikatspeicher nur einmal beim ersten Start liest.
+ Aktivieren Sie nach dem Neustart des Dienstes nun den UID Agenten, Anrufe zu empfangen, indem Sie XML API die Option unter Benutzeridentifikation -> Setup -> Edit -> Agent Service verwenden und die Option "Benutzer aktivieren" auswählen ID XML API und den Port wie unten gezeigt angeben:
Sobald die oben genannten Schritte abgeschlossen sind, sehen Sie die unten IP aufgeführte Benutzerzuordnung:
Überprüfung:
Die Protokolle für die erfolgreiche Verbindung zum XMPALI Client, die Zertifikatsvalidierung und die Benutzerzuordnung usw. sind in der UaDebug-Datei des ID User-Agenten auf dem Windows-Server zu sehen, wie unten aufgeführt:3:10:22:314[ Info 703]: New xml api connection 10.193.113.134 : 1959:1497568953. 07/19/17 13:10:22:314[ Info 747]: XML api thread 0 from 10.193.113.134 : 1959 is started. 07/19/17 13:10:22:314[Debug 355]: Event: type="XML API connection" name="10.193.113.134" status="Connected" 07/19/17 13:10:22:314[Debug 1778]: Device thread 0 send server status 10.193.113.134 : 1959 Connected (XML API) 07/19/17 13:10:22:314[Verbo 1264]: send out 268B msg post:server_status time 1500462622 with 0B body 07/19/17 13:10:22:314[Verbo 209]: CStrPairUpdate 10.193.113.134 : 1959 Connected (XML API) is freed. 07/19/17 13:10:22:317[Debug 419]: Verifying cert = /CN=xmlapi.paloaltonetworks.local 07/19/17 13:10:22:317[Debug 465]: A new certificate context has been created for /CN=xmlapi.paloaltonetworks.local. 07/19/17 13:10:22:318[Debug 381]: Got the issuer context for paloaltonetworks.local 07/19/17 13:10:22:318[ Info 371]: The self signed issuer is found in the trust store 07/19/17 13:10:22:318[Debug 481]: Certificate with subject : /CN=xmlapi.paloaltonetworks.local is valid 07/19/17 13:10:22:318[Debug 419]: Verifying cert = /CN=xmlapi.paloaltonetworks.local 07/19/17 13:10:22:318[Debug 465]: A new certificate context has been created for /CN=xmlapi.paloaltonetworks.local. 07/19/17 13:10:22:318[Debug 381]: Got the issuer context for paloaltonetworks.local 07/19/17 13:10:22:318[ Info 371]: The self signed issuer is found in the trust store 07/19/17 13:10:22:318[Debug 481]: Certificate with subject : /CN=xmlapi.paloaltonetworks.local is valid 07/19/17 13:10:22:318[Debug 419]: Verifying cert = /CN=xmlapi.paloaltonetworks.local 07/19/17 13:10:22:318[Debug 465]: A new certificate context has been created for /CN=xmlapi.paloaltonetworks.local. 07/19/17 13:10:22:319[Debug 381]: Got the issuer context for paloaltonetworks.local 07/19/17 13:10:22:319[ Info 371]: The self signed issuer is found in the trust store 07/19/17 13:10:22:319[Debug 481]: Certificate with subject : /CN=xmlapi.paloaltonetworks.local is valid 07/19/17 13:10:22:327[ Info 619]: XML api thread 0 accept finished 07/19/17 13:10:22:327[Debug 659]: XML api thread 0 SSL subject: /CN=xmlapi.paloaltonetworks.local 07/19/17 13:10:22:327[Debug 672]: XML api thread 0 SSL issuer: /CN=paloaltonetworks.local 07/19/17 13:10:22:328[Debug 325]: UserIpMap: IP 10.1.1.1 with login name domain\uid1 and timeout 1200 is added type (1). tId (3736) 07/19/17 13:10:22:328[Debug 1060]: Adding ip to chg tbl 10.1.1.1 for Add 07/19/17 13:10:22:332[ Info 580]: XML api thread 0 timeout or SSL error: 5-10053. 07/19/17 13:10:22:332[Debug 590]: XML api thread 0 ssl shutdown. 07/19/17 13:10:22:332[Verbo 1264]: send out 163B msg post:xml_data time 1500462622 with 174B body 07/19/17 13:10:22:332[Debug 355]: Event: type="XML API connection" name="10.193.113.134" status="Disconnected" 07/19/17 13:10:22:333[Debug 415]: XML api thread 0 exits. 07/19/17 13:10:22:333[ Info 417]: XML api connection 10.193.113.134 : 1959 closed. 07/19/17 13:10:22:333[Debug 431]: All XML api connection stopped! 07/19/17 13:10:22:370[Verbo 1264]: send out 163B msg post:xml_data time 1500462622 with 174B body 07/19/17 13:10:22:384[Debug 472]: UserIpMap: IP (10.1.1.1) Username (domain\uid1) queued for xmission to firewall 07/19/17 13:10:22:435[Debug 1778]: Device thread 0 send server status 10.193.113.134 : 1959 Disconnected (XML API) 07/19/17 13:10:22:435[Verbo 1264]: send out 271B msg post:server_status time 1500462622 with 0B body 07/19/17 13:10:22:435[Verbo 209]: CStrPairUpdate 10.193.113.134 : 1959 Disconnected (XML API) is freed.