Skip to main content
  • Place orders quickly and easily
  • View orders and track your shipping status
  • Create and access a list of your products

NetWorker: authc_config 스크립트를 사용하여 LDAPS 인증을 구성하는 방법

Summary: NetWorker의 authc_config 스크립트를 사용하여 LDAPS를 통한 AD/LDAP 인증을 구성하는 일반적인 개요입니다. 기존 LDAP 구성을 LDAPS로 업그레이드/변환할 때도 사용할 수 있습니다.

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.

Instructions

이 KB는 주로 LDAPS를 구성하는 데 필요한 사항에 중점을 둡니다. AD/LDAP를 NetWorker와 통합하는 데 필요한 사항에 대한 자세한 설명은 다음과 같습니다. NetWorker: AD/LDAP 인증을 설정하는 방법

참고: 외부 권한은 NetWorker Management Console 및 NWUI(NetWorker Web User Interface)에서 구성할 수 있습니다. 그러나 LDAPS를 통한 Active Directory 구성은 일반적으로 authc_config 스크립트 또는 NWUI(19.7 이상)를 사용하는 것이 좋습니다. NMC 구성 옵션은 "LDAP over SSL"만 제공합니다. 이 옵션을 사용하면 "Active Directory: false"가 설정됩니다. 이 옵션은 인증 서버가 Microsoft Active Directory 대신 LDAP인 것으로 예상합니다. 이로 인해 로그인이 실패합니다. 이 KB에 설명된 프로세스는 authc_configure 스크립트를 사용하여 LDAPS를 구성하는 방법을 자세히 설명합니다. NWUI(19.7 이상)는 "AD over SSL" 옵션을 제공합니다. NetWorker: NWUI(NetWorker Web User Interface)에서 "AD over SSL"(LDAPS)을 구성하는 방법

AD/LDAP 구성이 먼저 LDAP를 통해 작동하도록 한 다음 잠재적인 구성 문제를 배제하기 위해 LDAPS로 변환하는 것이 좋습니다.

LDAPS를 사용하려면 LDAPS 서버에서 CA 인증서(또는 인증서 체인)를 JAVA 신뢰 키 저장소로 가져와야 합니다. 이 작업은 다음 절차를 통해 수행할 수 있습니다.
1) 관리자/루트 명령 프롬프트를 엽니다.

2,a) 신뢰 저장소에 현재 신뢰할 수 있는 인증서 목록을 표시합니다.
keytool -list -keystore JAVA_PATH/jre/lib/security/cacerts -storepass PASSWORD 
  • 일반적으로 JAVA 바이너리 위치는 OS PATH 환경 변수의 일부이므로 어디에서나 "keytool"을 실행할 수 있습니다. OS에서 keytool 바이너리를 찾을 수 없는 경우 NetWorker 서버의 JAVA \bin 디렉토리에서 keytool 명령을 실행합니다.
  • JAVA_PATH JAVA 설치 경로로 교체합니다. 경로 이름은 설치된 JAVA 버전에 따라 다릅니다.
    • NRE(NetWorker Runtime Environment)가 설치된 시스템에서는 일반적으로 다음과 같습니다.
      • Linux: /opt/nre/java/latest/
      • Windows: C:\Program Files\NRE\java\jre-###
  • 암호를 JAVA storepass로 교체합니다. 기본값은 changeit입니다.
[root@rhel7 /]# keytool -list -keystore /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64/jre/lib/security/cacerts -storepass changeit
Keystore type: JKS
Keystore provider: SUN

Your keystore contains 156 entries

emcauthctomcat, 9-Jul-2018, trustedCertEntry,
Certificate fingerprint (SHA1): 01:9B:AF:A4:0D:DA:33:6D:AE:7A:76:8D:84:D5:EB:E2:63:13:0A:0A
...
...

2,b) LDAPS 서버와 일치하는 별칭 목록을 검토합니다(존재하지 않을 수 있음). 위의 명령과 함께 OS grep/findstr 명령을 사용하여 검색 범위를 좁힐 수 있습니다. LDAPS 서버에서 오래된/기존 CA 인증서가 있는 경우 다음 명령을 사용하여 삭제합니다.
keytool -delete -alias ALIAS_NAME -keystore JAVA_PATH/jre/lib/security/cacerts -storepass PASSWORD
  • 출력에서 수집된 LDAPS 서버의 별칭 이름으로 ALIAS_NAME 2,a.

3,a) OpenSSL 툴을 사용하여 LDAPS 서버에서 CA 인증서의 사본을 가져옵니다.
openssl s_client -showcerts -connect LDAPS_SERVER:636
  • 기본적으로 Windows 호스트에는 opensl 프로그램이 포함되지 않습니다. NetWorker 서버에 OpenSSL을 설치할 수 없는 경우 인증서를 LDAPS 서버에서 직접 내보낼 수 있습니다. 그러나 OpenSSL 유틸리티를 사용하는 것이 좋습니다.
  • OpenSSL 바이너리 디렉토리에 대한 경로가 OS PATH 환경 변수의 일부인 경우가 아니면 해당 바이너리 위치에서 OpenSSL 명령을 실행해야 합니다.
  • OpenSSL이 없고 설치할 수 없는 경우 AD 관리자가 인증서를 Base-64 인코딩 x.509 형식으로 내보냄으로써 인증서를 제공합니다.
  • LDAPS_SERVER LDAPS 서버의 호스트 이름 또는 IP 주소로 교체합니다.

3,b) 위의 명령은 CA 인증서 또는 인증서 체인을 PEM 형식으로 출력합니다(예:
-----BEGIN CERTIFICATE-----
MIIGQDCCBSigAwIBAgITbgAAAAiwkngyAQWDwwACAAAACDANBgkqhkiG9w0BAQsF
ADBPMRUwEwYKCZImiZPyLGQBGRYFbG9jYWwxFjAUBgoJkiaJk/IsZAEZFgZlbWNs
...
7NZfi9DiEBhpFmbF8xP96qB/kTJC+29t/0VE8Fvlg87fRhs5BceIoX8nUnetNCdm
m4mGyefXz4TBTwD06opJf4NQIDo=
-----END CERTIFICATE-----

참고: 인증서 체인이 있는 경우 마지막 인증서는 CA 인증서입니다. CA 인증서로 끝나는 순서대로 체인에서 각 인증서를 가져와야 합니다. 

3,c) 인증서를 ---BEGIN 인증서--- 부터 ---END CERTIFICATE--- 로 복사하여 새 파일에 붙여 넣습니다. 인증서 체인이 있는 경우 각 인증서를 사용하여 이 작업을 수행해야 합니다.

4) 3,c에서 생성된 인증서를 JAVA 신뢰 키 저장소로 가져옵니다.
keytool -import -alias ALIAS_NAME -keystore JAVA_PATH/jre/lib/security/cacerts -storepass PASSWORD -file PATH_TO\CERT_FILE
  • 가져온 인증서의 별칭으로 ALIAS_NAME 교체합니다. 일반적으로 LDAPS 서버 이름입니다. 인증서 체인에 대해 여러 인증서를 가져와야 하는 경우 각 인증서에 다른 ALIAS 이름이 있어야 하며 별도로 가져와야 합니다. 또한 인증서 체인을 3단계(하향)에 제시된 방식에서 순서대로 가져와야 합니다.
  • JAVA_PATH JAVA 설치 경로로 교체합니다. 경로 이름은 설치된 JAVA 버전에 따라 다릅니다.
  • 암호를 JAVA storepass로 교체합니다. 기본값은 changeit입니다.
  • PATH_TO\CERT_FILE 3단계에서 생성한 인증서 파일의 위치로 교체합니다.
  • 인증서를 가져오고 yes를 입력하고 Enter 키를 누르라는 메시지가 표시됩니다.
[root@rhel7 /]# keytool -import -alias winsrvr2k16-ca -keystore /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64/jre/lib/security/cacerts -storepass changeit -file /certificates/ca.cer
Owner: CN=WINSRVR2K16.emclab.local
Issuer: CN=emclab-WINSRVR2K16-CA, DC=emclab, DC=local
Serial number: 6e00000008b0927832010583c3000200000008
Valid from: Wed Sep 12 10:02:47 EDT 2018 until: Thu Sep 12 10:02:47 EDT 2019
Certificate fingerprints:
         MD5:  08:FB:DE:58:7B:FC:62:C7:31:5D:37:28:2C:54:6D:68
         SHA1: 06:72:D0:E9:19:31:8E:F6:2A:3A:47:60:52:91:0F:4F:2B:EB:10:9D
         SHA256: AD:0B:2B:2F:FC:B8:9E:ED:48:16:38:04:A7:CA:6B:55:D9:92:88:CD:54:BB:84:C6:4D:5A:28:E2:35:04:B5:C7
...
...
...

Trust this certificate? [no]:  yes
Certificate was added to keystore

5) 인증서가 키 저장소에 표시되는지 확인합니다.
keytool -list -keystore JAVA_PATH/jre/lib/security/cacerts -storepass PASSWORD
참고: 결과를 좁히기 위해 운영 체제 grep 또는 findstr 명령을 위로 파이프(|)합니다. 
[root@rhel7 /]# keytool -list -keystore /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64/jre/lib/security/cacerts -storepass changeit | grep -i -A1 "winsrvr2k16*"
winsrvr2k16-ca, 12-Sep-2018, trustedCertEntry,
Certificate fingerprint (SHA1): 06:72:D0:E9:19:31:8E:F6:2A:3A:47:60:52:91:0F:4F:2B:EB:10:9D
 
6) NetWorker 서버 서비스를 재시작합니다. 
Linux: 
nsr_shutdown
      서비스 네트워킹 시작
Windows: net stop nsrd
net start nsrd

 
참고: NetWorker 서버 서비스가 재시작되지 않으면 authc가 cacerts 파일을 읽지 않으며 LDAP 서버와의 SSL 통신을 설정하는 데 필요한 가져온 인증서를 감지하지 않습니다.
 
7,a) LDAPS를 사용하도록 authc-create-ad-config(Active Directory) 또는 authc-create-ldap-config(LDAP) 스크립트를 업데이트합니다.
Location:
Linux /opt/nsr/authc-server/scripts/
Windows [INSTALL DRIVE]:\Program Files\EMC NetWorker\nsr\authc-server\scripts\
authc_config -u administrator -e update-config \
-D "config-tenant-id=1" \
-D "config-active-directory=y" \
-D "config-name=ad" \
-D "config-domain=emclab" \
-D "config-server-address=ldaps://winsrvr2k16.emclab.local:636/DC=emclab,DC=local" \
-D "config-user-dn=cn=Administrator,cn=Users,dc=emclab,dc=local" \
-D "config-user-dn-password=Pa$$w0rd01" \
-D "config-user-search-path=" \
-D "config-user-id-attr=sAMAccountName" \
-D "config-user-object-class=user" \
-D "config-group-search-path=" \
-D "config-group-name-attr=cn" \
-D "config-group-object-class=group" \
-D "config-group-member-attr=member" \
-D "config-user-search-filter=" \
-D "config-group-search-filter=" \
-D "config-search-subtree=y" \
-D "config-user-group-attr=memberOf" \
-D "config-object-class=objectClass
참고: 새 구성을 추가하는 경우 "-e add-config"를 사용해야 합니다. 기존 구성을 업데이트하는 경우 "-e update-config"를 사용해야 합니다. config-server-address 행에서 프로토콜 "ldaps"(소문자여야 합니다)와 포트 "636"을 지정합니다.
 
7,b) 명령줄에서 스크립트를 실행합니다. 구성이 업데이트/추가되었다고 보고해야 합니다.

8) 구성이 업데이트되었는지 확인합니다.
authc_config -u Administrator -e find-all-configs
authc_config -u Administrator -e find-config -D config-id=CONFIG_ID
  • 각 명령에 NetWorker Administrator 암호를 입력하라는 메시지가 표시됩니다. "-p password" 플래그로 명령을 실행할 수 있지만 지우기 텍스트 암호가 사용 중이기 때문에 일부 OS에서 이 명령이 실패할 수 있습니다.
  • CONFIG_ID 첫 번째 명령으로 수집된 구성 ID로 교체합니다.
[root@rhel7 /]# authc_config -u Administrator -e find-config -D config-id=1
Enter password:
Config Id                    : 1
Config Tenant Id             : 1
Config Name                  : ad
Config Domain                : emclab
Config Server Address        : ldaps://winsrvr2k16.emclab.local:636/DC=emclab,DC=local
Config User DN               : cn=Administrator,cn=Users,dc=emclab,dc=local
Config User Group Attribute  : memberOf
Config User ID Attribute     : sAMAccountName
Config User Object Class     : user
Config User Search Filter    :
Config User Search Path      :
Config Group Member Attribute: member
Config Group Name Attribute  : cn
Config Group Object Class    : group
Config Group Search Filter   :
Config Group Search Path     :
Config Object Class          : objectClass
Is Active Directory          : true
Config Search Subtree        : true

이제 서버가 LDAPS를 통해 AD/LDAP로 인증됩니다.

이 절차를 수행할 때 오류 또는 문제가 발생하는 경우 CA 관리자에게 올바른 인증서를 사용/가져오는지 확인하십시오.

Additional Information

Windows Active Directory 또는 Linux LDAP를 사용하는 경우(예: OpenLDAP) LDAP 프로토콜이 인증에 사용됩니다. LDAP(Lightweight Directory Application Protocol) 및 LDAPS(Secure LDAP)는 애플리케이션과 인프라스트럭처 내의 네트워크 디렉토리 또는 도메인 컨트롤러 간에 사용되는 연결 프로토콜입니다.

LDAP는 지우기 텍스트로 통신을 전송하고 LDAPS 통신은 암호화되고 안전합니다.

Affected Products

NetWorker

Products

NetWorker
Article Properties
Article Number: 000020799
Article Type: How To
Last Modified: 03 Oct 2023
Version:  4
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.