Konnektivitäts-Fehlerbehebung für Agent, Elasticsearch und die Management-Konsole

Allgemeine Fehlerbehebung bei Konnektivitätsproblemen

Die Fehlerbehebung im Netzwerk zwischen dem Waratek Secure Agent und der Managementkonsole sowie Elasticsearch kann eine komplexe Aufgabe sein, da es viele Faktoren gibt die sich auf die Verbindung auswirken können. Um Probleme zu beheben, sollten Sie zunächst die Netzwerkeinstellungen auf dem Waratek Secure Agent und dem Managementkonsolenserver sowie Elasticsearch überprüfen, um sicherzustellen dass sie korrekt sind. Dazu gehört die Überprüfung ob die IP-Adresse, die FQDNs, und Ihre Portbereiche korrekt sind. Wenn Sie sich bei einer dieser Einstellungen nicht sicher sind müssen Sie möglicherweise Ihren Netzwerkadministrator um Hilfe bitten.

Firewall-Einstellungen können eingehende Verbindungen häufig blockieren. Sie müssen daher sicherstellen, dass die entsprechenden Ports auf beiden Geräten geöffnet sind. Möglicherweise müssen Sie Ihre Firewall auch so konfigurieren, dass sie Datenverkehr über bestimmte Ports oder Protokolle zulässt.

Im Folgenden besprechen wir die zusätzlichen Debug-Flags, die Sie auf der Agentenseite in Ihre waratek.properties-Datei einfügen können, um eine zusätzliche Protokollierung zu erhalten.

Sie können den folgenden Parameter jederzeit bedenkenlos aktivieren, da dadurch die Startparameter für jeden Anwendungsstart ausgedruckt werden.

com.waratek.ShowStart=true

Dies ist nützlich, um alle Konfigurationsparameter für eine Anwendung in der Anwendungsprotokolldatei anzuzeigen.

Zur Fehlerbehebung bei der Konnektivität zwischen Waratek Secure Agent und MC sowie Elasticsearch kann Folgendes zur Fehlerbehebung aktiviert werden. Sie sollten diese Konfigurationsparameter deaktivieren, sobald die Verbindung hergestellt ist.

com.waratek.debug.mc=true

com.waratek.debug.transport.file=<neue Protokolldatei>

Diese drucken Debug-Meldungen in die angegebenen Protokolldateien, die Rules.log und die mc.log.

 

Stellen Sie außerdem Folgendes ein

com.waratek.ControllerUnavailableAction=fail

ermöglicht zusätzliche Informationen während des Showstarts der Anwendung in den Anwendungsprotokollen.

Fehlerbehebung bei Verbindungsproblemen zu unserem SAAS-Portal


Das Setzen der oben genannten Debug-Flags auf dem Agent und das Überprüfen der resultierenden Protokolle lässt das Problem nicht immer eindeutig erkennen.

Der erste Schritt sollte darin bestehen, zu überprüfen, ob die Konnektivität vom Agenten zum SAAS-Portal in Ordnung ist.

Sie können den folgenden Befehl ausführen:

curl -v 'https://agent-api-2.waratek.com/api/2/agents' --data '{"runtimeLanguage": "JAVA"}'

um die folgende erwartete Ausgabe zu sehen

* Trying 18.66.171.128:443...
* Connected to agent-api-2.waratek.com (18.66.171.128) port 443
* ALPN: curl offers h2,http/1.1
* (304) (OUT), TLS handshake, Client hello (1):
*  CAfile: /etc/ssl/cert.pem
*  CApath: none
* (304) (IN), TLS handshake, Server hello (2):
* (304) (IN), TLS handshake, Unknown (8):
* (304) (IN), TLS handshake, Certificate (11):
* (304) (IN), TLS handshake, CERT verify (15):
* (304) (IN), TLS handshake, Finished (20):
* (304) (OUT), TLS handshake, Finished (20):
* SSL connection using TLSv1.3 / AEAD-AES128-GCM-SHA256
* ALPN: server accepted h2
* Server certificate:
*  subject: CN=*.waratek.com
*  start date: Jan 23 00:00:00 2024 GMT
*  expire date: Feb 20 23:59:59 2025 GMT
*  subjectAltName: host "agent-api-2.waratek.com" matched cert's "*.waratek.com"
*  issuer: C=US; O=Amazon; CN=Amazon RSA 2048 M02
*  SSL certificate verify ok.
* using HTTP/2
* [HTTP/2] [1] OPENED stream for https://agent-api-2.waratek.com/api/2/agents
* [HTTP/2] [1] [:method: POST]
* [HTTP/2] [1] [:scheme: https]
* [HTTP/2] [1] [:authority: agent-api-2.waratek.com]
* [HTTP/2] [1] [:path: /api/2/agents]
* [HTTP/2] [1] [user-agent: curl/8.4.0]
* [HTTP/2] [1] [accept: */*]
* [HTTP/2] [1] [content-length: 27]
* [HTTP/2] [1] [content-type: application/x-www-form-urlencoded]
> POST /api/2/agents HTTP/2
> Host: agent-api-2.waratek.com
> User-Agent: curl/8.4.0
> Accept: */*
> Content-Length: 27
> Content-Type: application/x-www-form-urlencoded
>
< HTTP/2 403
< content-length: 0
< date: Tue, 20 Feb 2024 16:00:41 GMT
< x-content-type-options: nosniff
< x-xss-protection: 0
< cache-control: no-cache, no-store, max-age=0, must-revalidate
< pragma: no-cache
< expires: 0
< x-frame-options: DENY
< x-cache: Error from cloudfront
< via: 1.1 e18052d443b6eff3bca335d622d35252.cloudfront.net (CloudFront)
< x-amz-cf-pop: DUB56-P1
< x-amz-cf-id: 19JemrOAzs9Sa9Kc_QDvKgG_k9IIpUkUOZz28AG6yO98_IMMSaau6g==
<
* Connection #0 to host agent-api-2.waratek.com left intact

 

Wenn die Curl-Verbindung funktioniert, der Agent jedoch nicht, liegt das Problem möglicherweise an der Java-Version.
Angehängt ist eine einfache Java-Klasse, die eine Verbindung zum Portal herstellt, sehr ähnlich zu dem, was Curl tut, und sehr ähnlich zu dem, was der Java-Agent intern tut. Allerdings werden keine Ausnahmen berücksichtigt, sodass es beim Debuggen nützlicher sein kann.

Zum Kompilieren mit der Java-Version, die der Agent verwendet:

/path/to/java/bin/javac PortalRestClient.java
und dann um es auszuführen:
/path/to/java/bin/java PortalRestClient
 
Und die erwartete Ausgabe sollte eine 403-Antwort enthalten:

start doConnection
Forcing TLSv1.2 was successful
response: 403
end doConnection