NetWorker: Fout bij parseren van PBE-parameters: Verwacht de object-id voor AES-versleuteling
Summary: Het zelfondertekende certificaat van de NetWorker-verificatieservice is vervangen door CA-ondertekende certificaten. De NetWorker-serverservice start niet en meldt 'PBE parameter parsing error: expecting the object identifier for the AES cipher' ...
Symptoms
- Het zelfondertekende certificaat van de NetWorker-verificatieservice is vervangen door CA-ondertekende certificaten.
- De NetWorker-serverservices kunnen niet worden gestart na het vervangen van de certificaten. Het logboek van de serverdaemon meldt de volgende fout tijdens het opstarten van de service:
- Linux:
/nsr/logs/daemon.raw - Windows (standaard):
C:\Program Files\EMC NetWorker\nsr\logs\daemon.raw - NetWorker: Het gebruik:
nsr_render_logom .raw logbestanden weer te geven
- Linux:
notice authservice: Caused by: java.io.IOException: PBE parameter parsing error: expecting the object identifier for AES cipher
Cause
Het proces dat wordt gebruikt om zelfondertekende certificaten te vervangen door CA-ondertekende certificaten, vereist het gebruik van Java keytoolen OpenSSLom CSR (Certificate Signing Request) te genereren en PKCS12 (p12) bestanden.
Dit probleem doet zich voor vanwege incompatibiliteit tussen versleutelingsalgoritmen die worden gebruikt in PKCS12 bestanden en de Java keytool's vermogen om ze te ontleden, vooral wanneer er verschillende versies van OpenSSL en Java bij betrokken zijn.
Nieuwere OpenSSL-versies kunnen standaard AES-versleuteling gebruiken (bijvoorbeeld: AES-256-CBC) bij het maken van .p12 bestanden, het beveiligen van privésleutels en certificaten. Dit is veiliger dan oudere algoritmen zoals 3DES.
Oudere versies van Java (8u291 en eerder) bieden geen ondersteuning voor AES-versleuteling in PKCS12 archief. Ze verwachten dat de versleuteling oudere algoritmen zal gebruiken, zoals:
PBEWithSHAAnd3KeyTripleDESPBEWithSHAAndRC2_40
Dus toen de Java keytool probeert een .p12 bestand dat is versleuteld met AES, kan het de parameters van de Password-Based Encryption (PBE) niet parseren, omdat het de Object Identifier (OID) voor AES niet herkent.
Dit probleem kan ook worden waargenomen als er meerdere instanties van Java op de server zijn geïnstalleerd. NetWorker is bijvoorbeeld geconfigureerd voor gebruik van NetWorker Runtime Environment (NRE) en wordt bijgewerkt naar de nieuwste NRE-versie die wordt ondersteund door de NetWorker-versie; op de server is echter ook een oudere versie van Java Runtime Environment (JRE) geïnstalleerd. Wanneer de keytool commando wordt gebruikt de oudere versie werd gebruikt, veroorzaakte dit een compatibiliteitsprobleem tussen de .p12 bestanden en de certificaatarchieven die door NetWorker worden gebruikt.
Resolution
- Het wordt sterk aanbevolen dat NetWorker is geconfigureerd voor het gebruik van NetWorker Runtime Environment (NRE). Zorg ervoor dat NetWorker is geconfigureerd voor het gebruik van NRE en dat NRE regelmatig wordt bijgewerkt naar de nieuwste beschikbare versie die wordt ondersteund door de NetWorker-release:
-
- NetWorker 19.12 en eerder: NRE 8.0.x
- NetWorker 19.13 en hoger: NRE 17.0.x
- NetWorker Runtime Environment (NRE): Introductie en installatie
OPMERKING: De NetWorker Virtual Edition (NVE) OsRollup- en NetWorker-upgrades worden gebruikt om het NRE-pakket te upgraden. NVE is standaard geconfigureerd voor gebruik van NRE.
- Wanneer u de procedure volgt voor het vervangen van zelfondertekende NetWorker-certificaten, geeft u ofwel het volledige pad naar de NRE-keytool op, ofwel gebruikt u een variabele om het pad in te stellen in de opdrachtshell.
Linux: java_bin=/opt/nre/java/latest/bin
Windows: set java_bin="C:\Program Files\NRE\java\jre#.#.#_###\bin"
OPMERKING: Het pad in Windows verschilt afhankelijk van de installatielocatie die door de back-upbeheerder is gekozen. Het pad bevat ook verschillende JRE-versies, afhankelijk van de geïnstalleerde NRE-versie.
Alle volgende keyool Opdrachten worden vervolgens uitgevoerd door de variabele aan te roepen:
Linux: $java_bin/keytool OPTIONS
Windows: %java_bin%\keytool OPTIONS
Het volledige proces wordt beschreven in de volgende OS-specifieke artikelen: