LDAP이 무엇인지, 어떤 구조를 가졌으며, 어떻게 사용하는 것인지 알아봅시다!
1. LDAP(Lightweight Directory Access Protocol)
LDAP이란? 네트워크에서 사용자, 그룹, 장치 등의 디렉토리 데이터를 관리하고 접근하기 위한 표준 프로토콜이에요.
주로 중앙 집중화된 인증 시스템에서 사용되며, 기업 환경에서 사용자 정보 or 권한을 관리하는 데 중요한 역할을 합니다.
LDAP은 TCP/IP 기반의 프로토콜로, 다양한 플랫폼에서 널리 사용되고 있어요.
TCP/IP : 인터넷과 네트워크 통신에서 데이터를 전송하기 위한 프로토콜의 집합(TCP : 신뢰성 있는 데이터 전송, IP : 데이터를 목적지로 전달)
2. 특징
LDAP의 주요 특징은 다음과 같아요.
2-1. 디렉터리 구조
LDAP은 트리 구조로 데이터를 저장해요.
이 구조는 루트에서부터 시작해 하위 노드로 이어지며, 각 노드는 엔트리(entry)라고 하고, 이 엔트리는 DN(Distinguished Name)으로 고유하게 식별됩니다.
2-2. 속성/값 쌍
각 엔트리는 속성(attribute)와 그에 대한 값(value)의 쌍으로 구성되어 있어요.
예를 들어, 사용자 엔트리는 이름, 이메일, 전화번호와 같은 속성을 가질 수 있습니다.
또한, LDAP은 데이터의 구조를 정의하는 스키마를 사용해요.
스키마는 어떤 속성이 사용할 수 있는 지, 각 속성의 데이터 유형, 필수 여부 등을 정의합니다.
2-3. 인증 및 권한 부여
LDAP은 사용자의 신원을 확인하기 위해 다양한 인증 방법을 지원해요.
일반적으로 사용자 이름과 비밀번호를 사용한 인증 방식이 많이 사용됩니다.
또한 LDAP은 사용자에게 특정 리소스에 대한 접근 권한을 부여하는 기능도 제공해요.
이를 통해 조직 내에서 데이터 접근을 제어할 수 있어요.
2-4. 표준 프로토콜
LDAP은 IETF에 의해 표준화된 프로토콜로, 다양한 플랫폼과 시스템에서 호환성을 보장해요.
이를 통해 여러 시스템 간의 통합이 용이합니다.
※ IETF(Internet Engineering Task Force) : 인터넷의 원활한 운영과 발전을 위해 표준 프로토콜과 기술을 개발하는 국제 기구
또한, LDAP은 TCP/IP 프로토콜을 기반으로 하여 네트워크를 통해 데이터를 전송해요.
이로 인해 원격지에서도 데이터 접근이 가능합니다.
3. LDAP 서버
LDAP 서버는 디렉터리 정보를 저장하고 클라이언트 요청에 응답하는 역할을 해요.
다음과 같은 LDAP 서버 소프트웨어들은 LDAP 서버의 관리, 사용자 및 그룹 관리, 데이터 검색 등을 지원합니다..
대표적으로 어떤 것들이 있는 지 간략하게 알아봅시다.
3-1. OpenLDAP
OpenLDAP은 오픈 소스 LDAP 서버 소프트웨어로, 매우 널리 사용되고 있어요.
다양한 운영체제에서 지원되며, 높은 확장성과 유연성을 제공해요.
사용자 인증, 디렉터리 검색, 리소스 관리 등을 위한 표준 기능을 제공합니다.
대규모 환경에서의 사용이 가능하며, 복제 및 고가용성 지원 기능을 갖추고 있어요.
3-2. Microsoft Active Directory(AD)
마이크로소프트의 디렉터리 서비스로, LDAP과 호환되지만 추가적으로 Kerberos 기반 인증과 같은 기능을 포함해요.
Windows 환경에서 주로 사용되며, 사용자 계정 관리, 그룹 정책, 네트워크 리소스 관리 등으로 사용됩니다.
LDAP 외에도 다른 프로토콜을 지원하며, 기업 네트워크 내의 사용자 및 권한 관리를 중심으로 사용됩니다.
3-3. 389 Directory Server
Red Hat에서 개발한 오픈 소스 LDAP 서버입니다.
대규모 언테프라이즈 환경에 최적화되어 있으며, 보안과 확장성을 중시한 기능을 갖추고 있어요.
Active Directory와의 통합이 가능하며, 다양한 운영체제에서 구동됩니다.
3-4. Apache Directory Server
ApacheSoftwareFoundation에서 개발한 오픈 소스 LDAP 서버입니다.
Java로 작성되었으며, 그래픽 기반의 디렉토리 관리 도구(Apache Directory Studio)를 제공해요.
가볍고 유연하며, 특히 개발자 or 테스트 환경에서 많이 사용됩니다.
3-5. OpenDJ
OpenDS에서 파생된 오픈 소스 LDAP 서버입니다.
대규모 기업 환경에서 사용하기 적합하며,, 높은 성능과 확장성을 제공해요.
클라우드 및 DevOps 환경에서도 사용할 수 있도록 설계되어 있어요.
※ DevOps 환경 : 개발과 운영 팀이 협력하여, 자동화 도구와 프로세스를 통해 SW의 지속적인 개발, 테스트, 배포를 효율적으로 수행하는 작업환경
3-6. Oracle Unified Directory
Oracle에서 제공하는 LDAP 서버로, 기업 환경에서의 고성능 및 대규모 사용자 관리에 적합해요.
고가용성, 확장성, 복제 등의 기능을 갖추고 있으며, 다양한 DB 및 애플리케이션과 연동됩니다.
4. 정리하며
지금까지 LDAP에 대해 알아보았습니다.
LDAP을 사용하면, 중앙 집중식으로 사용자 및 리소스 관리를 효율적으로 수행할 수 있을 것 같아요.
참고
'Computer Science' 카테고리의 다른 글
소프트웨어 버전 규칙 (2) | 2024.11.01 |
---|---|
SSO(Single Sign-On) (1) | 2024.10.10 |
NMS(Network Management System) (0) | 2024.07.14 |
MVC 패턴 (0) | 2024.07.07 |
인터넷 동작 원리 (0) | 2024.07.03 |