웹사이트 검색

Debian 11에 OpenLDAP를 설치하는 방법


이 튜토리얼은 다음 OS 버전에 대해 존재합니다.

  • 데비안 11(불스아이)
  • 데비안 10(버스터)

이 페이지에서

  1. 전제 조건
  2. Debian 11에 OpenLDAP 설치
  3. OpenLDAP 서버 구성
  4. UFW 방화벽 설정\n
  5. 사용자 그룹 설정
  6. 새 사용자 설정
  7. 결론

OpenLDAP는 LDAP(Lightweight Directory Access Protocol)의 무료 오픈 소스 소프트웨어 제품군 구현입니다. 이메일 및 기타 애플리케이션과 같은 중앙 집중식 인증 및 디렉토리 액세스 서비스에 사용할 수 있는 플랫폼 독립적인 프로토콜입니다.

OpenLDAP는 라이브러리와 유틸리티를 제공하는 독립형 LDAP 데몬입니다. 또한 TLS 인증서 인증 및 SASL 인증을 지원합니다.

이 기사에서는 Debian 11 Bullseye에서 OpenLDAP를 설치하고 구성하는 방법을 보여줍니다.

전제 조건

  • Debian 11 서버.
  • sudo/root 권한이 있는 루트가 아닌 사용자.\n

Debian 11에 OpenLDAP 설치

처음에는 OpenLDAP 패키지를 Debian 11 서버에 설치합니다. 기본 Debian 리포지토리는 안정적인 버전 OpenLDAP v2.4를 제공합니다.

OpenLDAP 패키지 설치를 시작하기 전에 아래의 apt 명령을 실행하여 Debians 리포지토리를 새로 고칩니다.

sudo apt update

이제 OpenLDAP 패키지 slapd 및 ldap-utils를 설치합니다. 패키지 slapd는 OpenLDAP의 기본 패키지이며 ldap-utils는 OpenLDAP 서버 관리를 위한 명령줄 유틸리티를 제공합니다.

sudo apt install slapd ldap-utils

Y를 입력하고 Enter 키를 눌러 설치를 확인합니다.

이제 OpenLDAP 관리 사용자의 비밀번호를 설정하라는 메시지가 표시됩니다.

암호를 입력하고 확인을 선택한 다음 ENTER를 누릅니다.

암호를 반복하고 확인을 선택한 다음 다시 ENTER를 누릅니다. 그리고 OpenLDAP 설치가 완료되었습니다.

OpenLDAP 서버 구성

OpenLDAP 패키지를 설치한 후 이제 Debian 서버에서 OpenLDAP를 설정하게 됩니다.

더 진행하기 전에 다음 명령을 사용하여 서버의 FQDN(정규화된 도메인 이름)을 설정해 보겠습니다.

sudo hostnamectl set-hostname ldap.mydomain.local

이제 nano 편집기를 사용하여 /etc/hosts 파일을 편집합니다.

sudo nano /etc/hosts

다음 구성을 복사하여 붙여넣고 서버 IP 주소로 IP 주소를 변경하고 호스트 이름 및 로컬 도메인 이름으로 FQDN을 변경해야 합니다.

192.168.10.50 ldap.mydomain.local ldap

파일을 저장하고 닫습니다.

이제 현재 SSH 세션에서 로그아웃하고 서버에 다시 로그인하십시오.

다음으로 아래 명령을 실행하여 OpenLDAP 패키지 slapd를 재구성합니다.

sudo dpkg-reconfigure slapd

이전 OpenLDAP 구성을 삭제/생략할지 묻는 메시지가 표시되면 아니요를 선택합니다. 이렇게 하면 이전 구성을 계속 사용할 수 있습니다.

이제 OpenLDAP 서버의 DNS 로컬 도메인 이름을 입력하고 확인을 선택합니다.

조직 이름을 입력하고 확인을 선택합니다. 선택적으로 도메인 이름과 동일한 이름으로 기본값으로 둘 수 있습니다.

이제 OpenLDAP 관리자 비밀번호를 입력하고 확인을 선택하여 계속하십시오.

OpenLDAP 관리자 암호를 확인하고 확인을 다시 선택합니다.

이전 slapd 데이터베이스를 삭제할지 묻는 메시지가 표시되면 NO를 선택하십시오.

이제 예를 선택하여 이전 slapd 데이터베이스를 이동합니다.

이제 OpenLDAP 패키지 구성이 완료되었습니다.

OpenLDAP 구성을 확인하려면 아래 slapcat 명령을 실행하십시오.

sudo slapcat

이제 아래 스크린샷과 유사한 출력이 표시되어야 합니다. OpenLDAP의 도메인 이름과 조직 이름이 mydomain.local을 올바르게 사용하고 있습니다.

마지막으로 slapd 서비스를 다시 시작하여 새 변경 사항을 적용합니다. 그런 다음 slapd 서비스를 확인합니다.

sudo systemctl restart slapd
sudo systemctl status slapd

이제 slapd 서비스 상태가 활성(실행 중)이어야 합니다.

UFW 방화벽 설정

UFW 방화벽이 활성화된 Debian 서버를 실행 중인 경우 LDAP 및 LDAPS 서비스를 UFW 방화벽에 추가해야 합니다.

로컬 환경에서 방화벽을 사용하는 것이 좋습니다. 그러면 서버 보안이 강화됩니다.

이제 아래 ufw 명령을 실행하여 LDAP 및 LDAPS 서비스를 ufw 방화벽에 추가하십시오.

sudo ufw allow LDAP
sudo ufw allow LDAPS

그런 다음 다음 명령을 사용하여 UFW 방화벽 규칙을 다시 로드합니다.

sudo ufw reload

마지막으로 다음 명령을 사용하여 UFW 방화벽에서 활성화된 서비스 목록을 확인합니다.

sudo ufw status

아래 스크린샷과 같은 출력이 표시되어야 합니다. LDAP 및 LDAPS 서비스가 UFW 방화벽에 추가됩니다.

이제 OpenLDAP 서버의 그룹 및 사용자를 설정할 준비가 되었습니다.

사용자 그룹 설정

OpenLDAP 서버는 종종 컴퓨터 또는 서버 그룹의 인증에 사용됩니다. 이 단계에서는 LDIF(LDAP Data Interchange Format) 파일을 사용하여 OpenLDAP 서버에 그룹을 설정합니다.

LDIF는 LDAP 항목의 서식 파일이며 OpenLDAP 서버에서 사용자 및 그룹을 관리하는 데 사용할 수 있습니다.

nano 편집기를 사용하여 새 파일 /etc/ldap/users.ldif을 만듭니다.

sudo nano /etc/ldap/users.ldif

다음 구성을 복사하여 붙여넣습니다. 이 구성은 도메인 이름 mydomain.local에 People이라는 새 그룹을 만듭니다.

dn: ou=People,dc=mydomain,dc=local
objectClass: organizationalUnit
ou: People

파일을 저장하고 닫습니다.

다음으로 아래의 ldapadd 명령을 실행하여 users.ldif 파일에 정의된 그룹을 추가합니다.

sudo ldapadd -D "cn=admin,dc=mydomain,dc=local" -W -H ldapi:/// -f /etc/ldap/users.ldif

OpenLDAP 서버의 관리자 비밀번호를 입력하라는 메시지가 표시됩니다. 그리고 프로세스가 성공하면 adding new entry "ou=People,dc=mydomain,dc=local"과 같은 메시지가 표시되어야 합니다.

People 그룹을 확인하려면 아래 ldapsearch 명령을 실행하십시오. 이 명령은 OpenLDAP 서버에서 사용 가능한 그룹을 표시합니다.

sudo ldapsearch -x -b "dc=mydomain,dc=local" ou

이제 OpenLDAP 서버에서 People is available 그룹이 표시되어야 합니다.

새 사용자 설정

OpenLDAP에서 그룹을 설정한 후 이제 OpenLDAP 서버에 새 사용자를 추가할 수 있습니다. 또한 LDIF 파일과 ldapadd 명령줄 도구를 사용하여 이 작업을 수행할 수 있습니다.

이제 nano 편집기를 사용하여 새 파일 alice.ldif를 만듭니다.

sudo nano alice.ldif

다음 구성을 복사하여 붙여넣고 AlicePassword를 강력한 암호로 변경하십시오.

이 예제에서는 홈 디렉토리가 /home/alice이고 기본 쉘이 /bin/bash인 alice라는 새 사용자를 생성합니다. 또한 사용자 alice는 People 그룹의 일부입니다.


# Add user alice to LDAP Server
dn: cn=alice,ou=People,dc=mydomain,dc=local
objectClass: top
objectClass: account
objectClass: posixAccount
objectClass: shadowAccount
cn: alice
uid: alice
uidNumber: 10001
gidNumber: 10001
homeDirectory: /home/alice
userPassword: AlicePassword
loginShell: /bin/bash

파일을 저장하고 닫습니다.

그런 다음 아래의 ldapadd 명령을 실행하여 alice.ldif 파일을 기반으로 새 사용자를 추가합니다.

sudo ldapadd -D "cn=admin,dc=mydomain,dc=local" -W -H ldapi:/// -f alice.ldif

OpenLDAP 관리자 암호를 입력하면 adding new entry "cn=alice,ou=People,dc=mydomain,dc=local"과 같은 출력이 표시되어야 합니다. 이는 새 사용자 alice가 OpenLDAP 서버에 추가되었습니다.

아래의 ldapsearch 명령을 실행하여 OpenLDAP 서버의 사용자 목록을 가져옵니다.

sudo ldapsearch -x -b "ou=People,dc=mydomain,dc=local"

아래 스크린샷과 같은 출력이 표시되어야 합니다. 새 사용자 Alice는 이제 OpenLDAP 서버에서 사용할 수 있습니다.

결론

축하합니다! 이제 Debian 11 서버에 OpenLDAP 서버를 성공적으로 설치했습니다. 또한 LDIF(LDAP Data Interchange Format) 파일과 ldapadd 명령줄 도구를 사용하여 그룹과 사용자를 추가하는 방법을 배웠습니다.

다음 단계에서는 Ubuntu 및 CentOS와 같은 Linux 시스템을 OpenLDAP 서버에 추가하는 방법에 대해 자세히 알아볼 수 있습니다.