Table of Contents
ToggleOracle Internet Directory - LDAP 67(ModifyDN 오류) · OU 이동 실패 · ACI 권한 오류까지 -
“복붙” 처방 플레이북 + 해석 가이드
LDAP 67(ModifyDN) / OU 이동 실패 / ACI 오류 — 왜 터지고, 어떻게 바로잡나
Oracle Internet Directory(OID) 및 Oracle Directory Integration Platform(ODIP) 운영 환경에서 자주 마주치는 이슈를 모아 원인 → 처방 → 해석까지 한 번에 정리했습니다.
이 글만 따라가면 권한(ACI) 정밀 설정, DIT 표준화, LACN↔USN 정합을 수치로 통제하며 재발을 막을 수 있습니다.
이 글은 이런 분들이 읽으면 좋아요
- DIP AD→OID 동기화에서 67/권한/OU 이동 이슈가 반복되는 운영자
- 운영 중 빨리 복구하고, 다시 안 터지게 기준이 필요한 팀
- 프로파일·매핑·DIT·ACI를 한 번에 정비하려는 분
이 글에서 바로 얻을 수 있어요
- 복붙 가능한 LDIF·명령·체크리스트
- ACI 최소/충분 권한 정확한 조합
- LACN↔USN 갭을 수치로 잡는 방법
이렇게 읽으면 더 빠릅니다
- #스키마 → #SSL → #ACI → #DIT 순으로 사전 체크
- 실행은 Disable → 변경 → 검증 → Enable
- 스모크 3건 + 수치 게이트로 승인/중단 결정
Disable → 변경 → 검증 → Enable재기동 순서:
Admin → Node Manager → OPMN(OID) → wls_ods1/2(DIP) (정지 시 역순)
1) 증상 & 원인 패턴 (왜 터질까?)
용도
장애 상황에서 빠르게 “종류”를 분류합니다. 67(ModifyDN), ACI 부족, SSL 신뢰, LACN/USN 불일치 중 무엇인지 1차 판단.
목적
원인 가설을 3~4개로 좁혀 불필요한 재시도를 막고, 처방 섹션으로 바로 점프.
해석 방법
로그의 에러코드/키워드(67, proxy, SSL, USN)를 증상→처방 표에 매핑합니다.
- LDAP 67 → 일반
modify로 RDN을 바꿈.modrdn필요. - OU 이동 실패 → 새 부모
add/ 기존 부모delete권한 부족. - ACI 부족 →
add/delete/write/read/search/compare/browse/proxy세트 중 누락. - SSL/TLS 미스 → 포트·모드·신뢰서버 불일치. DIP=SSL_ENCRYPT, OID=SSL 포트(4141).
- LACN/USN 갭 → DIP가 놓친 변경이 있어 rewind 판단 필요.
- EM Agent TZ → 주로 가시성 문제. 동작엔 제한적이나 운영에선 정합 권장.
2) 사전 점검 (스키마 · SSL · 프로파일 사전체크)
용도
변경 전 실패 리스크를 초기 제거. 스키마/SSL/프로파일을 선제 확인.
목적
운영 창구 열리기 전에 구조/연결/설정 3요소 통과로 “실패 원인 불명” 방지.
해석 방법
각 테스트의 성공/에러 메시지를 기록, 에러는 해당 처방 섹션으로 즉시 루프백.
스키마 존재
orclADUser/Group/Object가 없으면 AD ↔ OID 매핑 중 속성이 실패합니다.
ldapsearch -h <OID_HOST> -p 389 -D "cn=orcladmin" -w '<PW>' \ -b "cn=subschema" -s base "(objectClass=*)" \ "orclADUser" "orclADGroup" "orclADObject"
해석: 누락 시 스키마 등록 필요(제품 버전/패치 준수).
SSL/TLS 신뢰체인
- DIP→OID:
4141&SSL_ENCRYPT - OID 인증서를 DIP keystore/cacerts에 신뢰로 등록
프로파일 사전체크
# Map Rule 문법 manageSyncProfiles validateMapRules -p <ProfileName> # 연결 테스트 manageSyncProfiles testProfile -p <ProfileName>
해석: validate는 문법/매핑 구조, testProfile은 연결성·권한 힌트를 줍니다.
3) ACI(권한) 즉시 처방 — Rename/이동 안전권한
용도
RDN 변경/부모 이동에서 권한 부족을 한 번에 해소.
목적
LDAP 67/50/65류 오류의 재발 방지. DIP Agents 그룹 최소 권한 보장.
해석 방법
orclACI 검색 시 group DN·권한 키워드가 기대값(아래 표)과 일치하는지 확인.
| 상황 | 필요 권한 | 적용 위치 |
|---|---|---|
| RDN 변경(동일 부모) | 엔트리 RDN write + 부모 browse[proxy] | 대상 엔트리 & 해당 부모 |
| 부모 컨테이너 이동 | 새 부모 add, 기존 부모 delete, 엔트리 RDN write, 부모들 browse[proxy] | 기존/새 부모 컨테이너 + 엔트리 |
LDIF — Entry/Attr 권한 부여
dn: <대상_컨테이너_DN> changetype: modify add: orclACI orclACI: access to entry by group="cn=odisgroup,cn=DIPAdmins,cn=Directory\20Integration\20Platform,cn=Products,cn=OracleContext" (browse,proxy) - add: orclACI orclACI: access to attr=(*) by group="cn=odisgroup,cn=DIPAdmins,cn=Directory\20Integration\20Platform,cn=Products,cn=OracleContext" (read,search,compare,write)
해석: INVALID ACI면 공백 이스케이프(\20)를 점검.
적용 확인
ldapsearch -h <OID_HOST> -p 389 -D "cn=orcladmin" -w '<PW>' \ -b "<대상_컨테이너_DN>" -s base "(objectClass=*)" orclACI
해석: 출력에 group DN과 (browse,proxy), (read,search,compare,write)가 보여야 정상.
4) DIT 구조 정비 + 역LDIF(롤백)
용도
누락된 ou=yourdomain.com 같은 레벨을 보강하고, 레거시 서브트리를 표준 경로로 정렬.
목적
DIP DomainRules와 물리 경로 일치 → 신규/변경 정확히 반영.
해석 방법
이동 전/후 DN 매핑표(건수·샘플DN)로 검증. 실패 시 역LDIF 즉시 복구.
누락 OU 생성
dn: ou=yourdomain.com,cn=Users,dc=serv,dc=nossys,dc=net objectClass: top objectClass: organizationalUnit ou: yourdomain.com
서브트리 이동 (modrdn)
dn: ou=CLGX,cn=Users,dc=serv,dc=nossys,dc=net changetype: modrdn newrdn: ou=CLGX deleteoldrdn: 0 newsuperior: ou=yourdomain.com,cn=Users,dc=serv,dc=nossys,dc=net
역LDIF (즉시 롤백용)
dn: ou=CLGX,ou=yourdomain.com,cn=Users,dc=serv,dc=nossys,dc=net changetype: modrdn newrdn: ou=CLGX deleteoldrdn: 0 newsuperior: cn=Users,dc=serv,dc=nossys,dc=net
5) DIP DomainRules & 매핑 반영 (사전체크 포함)
용도
AD 도메인 베이스를 OID의 정확한 컨테이너로 매핑.
목적
신규 계정이 표준 경로(예: ou=yourdomain.com → ou=CLGX)에 생성되도록 보장.
해석 방법
validateMapRules는 문법, testProfile은 연결/권한/경로 확인.
도메인 매핑(예시)
# dc=infosolco,dc=net → ou=yourdomain.com,cn=Users,... DomainRules: dc=infosolco,dc=net : ou=yourdomain.com,cn=Users,dc=serv,dc=nossys,dc=net
업로드 전 사전체크
manageSyncProfiles validateMapRules -p <ProfileName> manageSyncProfiles testProfile -p <ProfileName>
해석: 실패하면 공백·탭부터 의심, ACI/SSL 섹션으로 루프백.
6) LACN ↔ AD USN 정합 (Go/No-Go 게이트)
용도
동기화가 얼마나 뒤처졌는지 수치 판단, rewind 필요성 결정.
목적
중복/누락 없이 안전 회수를 위해 증분 범위 명확화.
해석 방법
LACN이 AD highestCommittedUSN보다 낮으면 갭. 청크 단위로만 낮춰 재수집.
양쪽 수치 확인
# AD high watermark repadmin /showrepl <DC-NAME> # OID Profile 메트릭 ldapsearch -D "cn=orcladmin" -w '<PW>' \ -b "orclodipagentname=<Profile>,cn=ODIP Agents,cn=Directory Integration Platform,cn=Products,cn=OracleContext" \ -s base "(objectClass=*)" \ orclOdipConDirLastAppliedChgNum orclOdipProfileMetric
해석: failure_count 증가 시 구조/권한 문제. rewind 전에 섹션 2·3·4 재확인.
갭 있으면: 단계적 rewind
# 큰 폭 조정 금지 → 안전 청크(예: 5,000,000)씩 낮추고 증분 실행/검증 반복 # 변경 전 Profile 백업 필수
7) 실행 순서 & 스모크 (성공/중단 기준 수치화)
용도
운영 반영을 체크리스트로 실행, 결과를 수치로 확인.
목적
감이 아니라 정량 근거로 승인/중단 결정.
해석 방법
failure_count=0, LDAP 50/65/67 없음, LACN 상승, 3건 스모크 T+30분 내 완료면 Go.
실행 순서(클러스터 동일)
- Disable 대상 프로파일(양 노드 동일)
- DIT 보강/이동 + ACI 반영
- DomainRules/맵 반영 →
validate/testProfile - LACN↔USN 갭 확인(필요시 rewind)
- 필요 시 통제 재기동:
Admin → Node Manager → OPMN(OID) → wls_ods1/2(DIP) - Enable + 수동 1회 증분 실행
스모크(즉시 3건)
- 신규 사용자 → 표준 OU에 생성
- UPN/mail 변경 → 속성 반영
- Rename(ModifyDN) 또는 부모 이동 → 성공
성공/중단 기준 (해석)
failure_count = 0유지 → 매핑/권한/연결 OK- LDAP
50/65/67없음 → 권한/ModifyDN 처리 OK - LACN이 AD high watermark 방향으로 지속 상승 → 누락 회수 중
- 3건 스모크 T+30분 내 완료 → 운영 수용 가능
중단(Abort) & 롤백 트리거
# 롤백 단위 요약 1) 프로파일/맵: 이전 버전 복구 2) ACI: 이전 값 복구 3) DIT: 역LDIF(modrdn reverse) 적용 4) 서비스: 필요 시 WLS/OID 재기동 5) DB/시스템(최후): RMAN/Datapump 또는 스냅샷 복원
8) 모니터링 & EM Agent (TZ 정합)
용도
EM 콘솔 상태 그린 확보, 알람/스케줄 가시성 정상화.
목적
초동대응 시간을 줄이기 위한 관측성 확보.
해석 방법
TZ 어긋나면 시각 불일치. TZ 재설정 후 secure/restart로 고정.
# 시간대 정합 emctl resetTZ agent # 상태/보안 재확립(환경별 상이) emctl stop agent emctl secure agent emctl start agent
해석: DIP 동작엔 직접 영향이 없을 수도 있으나, 운영 의사결정(알람/타임라인)에 중요 — 정합화 권장.
9) 바로 쓰는 검사표 (체크리스트)
| 항목 | 내용 | 상태 |
|---|---|---|
| 스키마 | orclADUser/Group/Object 존재 | ☐ |
| SSL/TLS | DIP→OID 4141, SSL_ENCRYPT, 신뢰체인 OK | ☐ |
| 프로파일 | validateMapRules / testProfile 성공 | ☐ |
| ACI | RDN write, 부모 browse(+proxy), 이동 시 add/delete | ☐ |
| DIT | 누락 OU 생성, 이동 전/후 매핑표·역LDIF 준비 | ☐ |
| LACN/USN | 갭 확인, 필요 시 단계적 rewind 계획 | ☐ |
| EM Agent | TZ 정합 및 상태 그린 | ☐ |
| 스모크 | 신규/속성/이동 T+30분 내 성공 | ☐ |
* 표를 복사해 팀 공용 체크리스트로 쓰세요.



