NetWorker: PBE 매개변수 구문 분석 오류: AES 암호에 대한 오브젝트 식별자가 필요합니다.
Summary: NetWorker 인증 서비스 자체 서명 인증서가 CA 서명 인증서로 대체되었습니다. NetWorker Server 서비스가 시작되지 않고 "PBE 매개변수 구문 분석 오류: AES 암호에 대한 오브젝트 식별자가 필요합니다."라는 메시지가 보고됩니다.
Symptoms
- NetWorker 인증 서비스 자체 서명 인증서가 CA 서명 인증서로 대체되었습니다.
- 인증서를 교체한 후 NetWorker Server 서비스가 시작되지 않습니다. 서버 데몬 로그는 서비스 시작 중에 다음 오류를 보고합니다.
- Linux:
/nsr/logs/daemon.raw - Windows(기본값):
C:\Program Files\EMC NetWorker\nsr\logs\daemon.raw - NetWorker: 사용 방법
nsr_render_log.raw 로그 파일을 렌더링하려면
- Linux:
notice authservice: Caused by: java.io.IOException: PBE parameter parsing error: expecting the object identifier for AES cipher
Cause
자체 서명된 인증서를 CA 서명된 인증서로 교체하는 데 사용되는 프로세스에는 Java keytool및 OpenSSLCSR(Certificate Signing Request)을 생성하고 PKCS12(p12) 파일.
이 문제는 에 사용된 암호화 알고리듬 간의 비호환성으로 인해 발생합니다. PKCS12 files 및 Java keytool특히 다른 버전의 OpenSSL 및 Java가 관련된 경우 구문 분석할 수 있습니다.
최신 OpenSSL 버전은 AES 암호화로 기본 설정될 수 있습니다(예: AES-256-CBC) .p12 파일, 개인 키 및 인증서 보안. 이는 3DES와 같은 이전 알고리즘보다 더 안전합니다.
이전 버전의 Java(8u291 이하)는 PKCS12 파일. 그들은 암호화가 다음과 같은 이전 알고리즘을 사용할 것으로 기대합니다.
PBEWithSHAAnd3KeyTripleDESPBEWithSHAAndRC2_40
그래서 J가ava keytool 가져오려고 시도합니다. .p12 AES로 암호화된 파일은 AES에 대한 OID(Object Identifier)를 인식하지 못하기 때문에 PBE(Password-Based Encryption) 매개변수를 구문 분석하지 못합니다.
이 문제는 서버에 설치된 Java 인스턴스가 여러 개 있는 경우에도 나타날 수 있습니다. 예를 들어 NetWorker는 NRE(NetWorker Runtime Environment)를 사용하도록 구성되고 NetWorker 버전에서 지원하는 최신 NRE 버전으로 업데이트됩니다. 그러나 서버에는 이전 버전의 JRE(Java Runtime Environment)도 설치되어 있습니다. 때 keytool 명령이 사용됨 이전 버전이 사용되었기 때문에 .p12 NetWorker에서 사용하는 파일 및 인증서 저장소
Resolution
- NRE(NetWorker Runtime Environment)를 사용하도록 NetWorker를 구성하는 것이 좋습니다. NetWorker가 NRE를 사용하도록 구성되어 있고 NRE가 NetWorker 릴리스에서 지원하는 사용 가능한 최신 버전으로 정기적으로 업데이트되는지 확인합니다.
-
- NetWorker 19.12 이하: NRE 8.0.x
- NetWorker 19.13 이상: NRE 17.0.x
- NRE(NetWorker Runtime Environment): 소개 및 설치
참고: NVE(NetWorker Virtual Edition) OsRollup 및 NetWorker 업그레이드는 NRE 패키지를 업그레이드하는 데 사용됩니다. NVE는 기본적으로 NRE를 사용하도록 구성되어 있습니다.
- NetWorker 자체 서명 인증서를 교체하는 절차에 따라 NRE keytool의 전체 경로를 지정하거나 변수를 사용하여 명령 셸에서 경로를 설정합니다.
Linux: java_bin=/opt/nre/java/latest/bin
Windows: set java_bin="C:\Program Files\NRE\java\jre#.#.#_###\bin"
참고: Windows에서의 경로는 백업 관리자가 선택한 설치 위치에 따라 다릅니다. 경로에는 설치된 NRE 버전에 따라 다른 JRE 버전도 포함됩니다.
모든 후속 keyool 그런 다음 변수를 호출하여 명령을 실행합니다.
Linux: $java_bin/keytool OPTIONS
Windows: %java_bin%\keytool OPTIONS
전체 프로세스는 다음 OS별 문서에 설명되어 있습니다.