Obnovení po kybernetickém útoku: Načítání certifikátu selhalo s protokolem TLS

Summary: Po upgradu na verzi Cyber Recovery 19.17 je k dispozici nová možnost ověření certifikátu při povolení protokolu TLS (Transport Layer Security). Tento článek popisuje situace, kdy se načtení certifikátu s protokolem TLS nezdařilo. ...

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

Po upgradu na verzi Cyber Recovery 19.17 je k dispozici nová možnost ověření certifikátu při povolování protokolu TLS (Transport Layer Security). Při ověřování certifikátu se v uživatelském rozhraní nástroje Cyber Recovery zobrazí následující chyba:

"Při povolování protokolu TLS je vyžadován certifikát poštovního serveru."

Chyba certifikátu TLS nástroje Cyber Recovery

Cause

Z protokolů Cyber Recovery se vytisknou následující položky.

Na crcli.log:

[2024-10-03 11:49:03.273] [DEBUG] [crcli] [restapi_client.go:384 HandleRESTAPIResponse()] : Entering
[2024-10-03 11:49:03.273] [DEBUG] [crcli] [restapi_client.go:392 HandleRESTAPIResponse()] : REST status code :500
[2024-10-03 11:49:03.273] [ERROR] [crcli] [restapi_client.go:401 HandleRESTAPIResponse()] : Failed to retrieve mail server certificate : Failed to connect to mail server: dial tcp: lookup smtp-mail.com: i/o timeout
[2024-10-03 11:49:03.273] [DEBUG] [crcli] [restapi_client.go:402 HandleRESTAPIResponse()] : Exiting
[2024-10-03 11:49:03.273] [ERROR] [crcli] [libcli.go:150 CliErrorExit()] : Failed to retrieve mail server certificate : Failed to connect to mail server: dial tcp: lookup smtp-mail.com: i/o timeout

Na edge.log:

[2024-10-03 11:48:53.268] [DEBUG] [edge] [restapi_client.go:200 callRestApi()] : Perform request.Post path=https://notifications:9096/irapi/v8/notifications/retrieveEmailCert
[2024-10-03 11:49:03.272] [DEBUG] [edge] [restapi_client.go:209 callRestApi()] : status = 500 Internal Server Error
[2024-10-03 11:49:03.272] [DEBUG] [edge] [restapi_client.go:410 GetCRResponse()] : Entering
[2024-10-03 11:49:03.272] [DEBUG] [edge] [restapi_client.go:417 GetCRResponse()] : Exiting
[2024-10-03 11:49:03.272] [DEBUG] [edge] [restapi_client.go:210 callRestApi()] : Exiting
[2024-10-03 11:49:03.272] [DEBUG] [edge] [restapi_client.go:116 CallCRRESTAPI()] : Exiting
[2024-10-03 11:49:03.272] [DEBUG] [edge] [restapi_client.go:57 CallRESTAPIHeader()] : Exiting
[2024-10-03 11:49:03.272] [DEBUG] [edge] [restapi_client.go:384 HandleRESTAPIResponse()] : Entering
[2024-10-03 11:49:03.272] [DEBUG] [edge] [restapi_client.go:392 HandleRESTAPIResponse()] : REST status code :500
[2024-10-03 11:49:03.272] [ERROR] [edge] [restapi_client.go:401 HandleRESTAPIResponse()] : Failed to connect to mail server: dial tcp: lookup smtp-mail.com: i/o timeout
[2024-10-03 11:49:03.272] [DEBUG] [edge] [restapi_client.go:402 HandleRESTAPIResponse()] : Exiting
[2024-10-03 11:49:03.272] [DEBUG] [edge] [jsonerr.go:27 JSONError()] : Entering
[2024-10-03 11:49:03.272] [ERROR] [edge] [jsonerr.go:40 JSONError()] : 500 : Failed to connect to mail server: dial tcp: lookup smtp-mail.com: i/o timeout
[2024-10-03 11:49:03.272] [DEBUG] [edge] [jsonerr.go:44 JSONError()] : Exiting
[2024-10-03 11:49:03.272] [DEBUG] [edge] [notifications.go:560 RetrieveEmailCert()] : Exiting
[2024-10-03 11:49:03.272] [INFO] [edge] [restauth.go:111 func1()] : POST /cr/v8/notifications/retrieveEmailCert End RetrieveEmailCert Elapsed=10.005125439s

Na notifications.log:

[2024-10-03 11:48:53.270] [INFO] [notifications] [restauth.go:68 func1()] : POST /irapi/v8/notifications/retrieveEmailCert Start RetrieveEmailCert
[2024-10-03 11:48:53.270] [DEBUG] [notifications] [restauth.go:210 validateToken()] : Entering
[2024-10-03 11:48:53.270] [DEBUG] [notifications] [restauth.go:194 DecryptToken()] : Entering
[2024-10-03 11:48:53.270] [DEBUG] [notifications] [encoding.go:48 DecodeString()] : Entering
[2024-10-03 11:48:53.270] [DEBUG] [notifications] [encoding.go:56 DecodeString()] : Exiting
[2024-10-03 11:48:53.270] [DEBUG] [notifications] [crcrypto.go:558 DecryptCFB()] : Entering
[2024-10-03 11:48:53.270] [DEBUG] [notifications] [crcrypto.go:579 DecryptCFB()] : Exiting
[2024-10-03 11:48:53.270] [DEBUG] [notifications] [encoding.go:48 DecodeString()] : Entering
[2024-10-03 11:48:53.270] [DEBUG] [notifications] [encoding.go:56 DecodeString()] : Exiting
[2024-10-03 11:48:53.270] [DEBUG] [notifications] [crcrypto.go:112 GenHash()] : Entering
[2024-10-03 11:48:53.270] [DEBUG] [notifications] [crcrypto.go:118 GenHash()] : Exiting
[2024-10-03 11:48:53.270] [DEBUG] [notifications] [restauth.go:206 DecryptToken()] : Exiting
[2024-10-03 11:48:53.270] [DEBUG] [notifications] [restauth.go:268 ValidateTokenTime()] : Entering
[2024-10-03 11:48:53.270] [DEBUG] [notifications] [restauth.go:281 ValidateTokenTime()] : Exiting
[2024-10-03 11:48:53.270] [DEBUG] [notifications] [restauth.go:255 validateToken()] : Exiting
[2024-10-03 11:48:53.270] [DEBUG] [notifications] [notifications.go:283 RetrieveEmailCert()] : Entering
[2024-10-03 11:48:53.270] [DEBUG] [notifications] [notifications.go:175 ValidateMailServer()] : Entering
[2024-10-03 11:48:53.270] [DEBUG] [notifications] [notifications.go:201 ValidateMailServerURL()] : Entering
[2024-10-03 11:48:53.270] [DEBUG] [notifications] [notifications.go:210 ValidateMailServerURL()] : Exiting
[2024-10-03 11:48:53.270] [DEBUG] [notifications] [notifications.go:215 ValidateMailServerPort()] : Entering
[2024-10-03 11:48:53.270] [DEBUG] [notifications] [notifications.go:222 ValidateMailServerPort()] : Exiting
[2024-10-03 11:48:53.270] [DEBUG] [notifications] [notifications.go:196 ValidateMailServer()] : Exiting
[2024-10-03 11:48:53.270] [DEBUG] [notifications] [email.go:227 RetrieveEmailCert()] : Entering
[2024-10-03 11:48:53.270] [DEBUG] [notifications] [email.go:272 GetTLSConn()] : Entering
[2024-10-03 11:49:03.271] [DEBUG] [notifications] [email.go:283 GetTLSConn()] : Exiting
[2024-10-03 11:49:03.272] [ERROR] [notifications] [email.go:235 RetrieveEmailCert()] : Failed to connect to mail server: dial tcp: lookup smtp-mail.com: i/o timeout
[2024-10-03 11:49:03.272] [DEBUG] [notifications] [email.go:236 RetrieveEmailCert()] : Exiting
[2024-10-03 11:49:03.272] [ERROR] [notifications] [notifications.go:321 RetrieveEmailCert()] : Failed to connect to mail server: dial tcp: lookup smtp-mail.com: i/o timeout
[2024-10-03 11:49:03.272] [DEBUG] [notifications] [jsonerr.go:27 JSONError()] : Entering
[2024-10-03 11:49:03.272] [ERROR] [notifications] [jsonerr.go:40 JSONError()] : 500 : Failed to connect to mail server: dial tcp: lookup smtp-mail.com: i/o timeout
[2024-10-03 11:49:03.272] [DEBUG] [notifications] [jsonerr.go:44 JSONError()] : Exiting
[2024-10-03 11:49:03.272] [DEBUG] [notifications] [notifications.go:323 RetrieveEmailCert()] : Exiting

Od verze 19.17 začala aplikace Cyber Recovery ověřovat certifikát poštovního serveru při použití protokolu TLS. 
V prostředích jiných než DNS (Domain Name System) selhává zadání poštovního serveru jako názvu DNS, protože Cyber Recovery nemá nastaven DNS. 
Pokud je IP adresa použita jako poštovní server a certifikát nemá IP adresu v certifikátu, ověření se nezdaří, protože certifikát je ověřován proti IP adrese.

Existuje několik alternativních řešení, jak to zprovoznit: 
1) Přidejte do certifikátu IP adresu, aby ověření fungovalo.
2) Doplňte položku pro poštovní server a IP adresu /etc/hosts v kontejneru notifikací ke komunikaci s poštovním serverem pomocí DNS a ověření certifikátu.

Resolution

Tento problém lze vyřešit dvěma způsoby:

  1. Poštovní server používá plně kvalifikovaný název domény (FQDN) a nástroji Cyber Recovery se nepodaří získat certifikát.
    • Ověřte, zda v prostředí trezoru používáte server DNS a zda funguje správně.
    • Pokud v trezoru není žádný server DNS, postupujte takto:
      • Zadejte podrobnosti o serveru SMTP (Simple Mail Transfer Protocol) do souborů hosts ukotvitelného panelu oznámení.
        1. Připojte se ke Cyber Recovery pomocí SSH.
        2. Spusťte tento příkaz: 
           docker exec -it cr_notifications_1 bash
        3. Otevřete soubor v textovém editoru:
          /etc/hosts
        4. Přidejte položky pro server SMTP jako IP adresu, plně kvalifikovaný název domény a krátký název.
        5. Uložte soubor.
        6. Spuštěním tohoto příkazu ukončete kontejner Dockeru:
          exit
      • Chcete-li provést zápis do /etc/hosts soubor trvalý po restartování, postupujte takto:
        • Přidání řádku dovnitř cr-install-path>/etc/docker-compose-prod-<current-version>.yml pro IP adresu, do které chcete přidat /etc/hosts upozornění:
                          build: .
                          image: ${registryName}/cr_notifications:${notificationsVersion}
                          container_name: cr_notifications_1
                          security_opt:
                                  - no-new-privileges:true
                          hostname: notifications
                          expose:
                                  - "9096"
                          depends_on:
                                  - postgresql
                          cap_drop:
                                  - ALL
                          environment:
                                  - LD_LIBRARY_PATH=/cr/lockbox/lib
                                  - CRHOSTNAME=${dockerHostFQDN}
                                  - ENABLE_TLS=${enableTLS}
                                  - ENABLE_POSTFIX=${enablePostfix}
                                  - GODEBUG=tlskyber=0
                          extra_hosts:
                                  - dockerbridge:${dockerBridge}
                                  - ${dockerHostFQDN}:${dockerHost}
                                  - <mailserver>:IP <<<<<<<<<<<<<<<<<<<<<<<<
        • Poté spusťte příkaz 'crsetup.sh – forcerecreate' POKUD NEJSOU SPUŠTĚNY ŽÁDNÉ ÚLOHY.
  2. Použití IP adresy pro SMTP a Cyber Recovery se nezdaří získat certifikát.
    • V takovém případě je nutné vygenerovat nový certifikát, který bude obsahovat použitou IP adresu.

Nebo

    • V případě, že byl certifikát vytvořen pomocí plně kvalifikovaného názvu domény, použijte místo IP adresy pro připojení k protokolu SMTP plně kvalifikovaný název domény v uživatelském rozhraní Cyber Recovery.

Affected Products

PowerProtect Cyber Recovery, Cyber Recovery Series
Article Properties
Article Number: 000242079
Article Type: Solution
Last Modified: 18 June 2025
Version:  2
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.