Ubuntu 서버에서 Active Directory 사용자 인증

Ubuntu 서버에서 Active Directory 사용자 인증

Ubuntu Server에서(로그인 시) Active Directory 사용자를 인증하는 가장 간단한 방법이 필요합니다.

libnss-ldap을 사용하려고 하는데 일반 LDAP 서버(예: SLAPD)에서만 작동하지만 이제는 Active Directory에서만 작동합니다. libnss-ldap에 약간의 메모리 누수가 있어서 개발을 중단했다는 소식을 듣고 대신 libnss-ldapd나 sssd를 사용해야 하는데 지금까지는 너무 복잡합니다.

답변1

Samba와 pam_mkhomedir.so만 있으면 되는 매우 간단한 설정이 있습니다(apt-get install 사용).

그런 다음 아래 내용으로 인증을 구성하기 위한 새 파일을 만듭니다. 파일 상단에서 변수를 편집합니다. 첫 번째 항목(작업 그룹)은 도메인의 NETBIOS 이름입니다.

#!/bin/bash
ADSWorkgroup="yourdomain"
ADSDomain="yourdomain.com"
ADSServer="domaincontroller.yourdomain.com"
AdminUser="[email protected]"

authconfig --update --kickstart --enablewinbind --enablewinbindauth --smbsecurity=ads \
--smbworkgroup=$ADSWorkgroup --smbrealm=$ADSDomain \
--smbservers=$ADSServer --winbindjoin=$AdminUser \
--winbindtemplatehomedir=/home/%U --winbindtemplateshell=/bin/bash \
--enablewinbindusedefaultdomain --enablelocauthorize

파일을 만든 후 chmod +x <filename>. 파일을 실행하고 요청 시 AD 자격 증명을 입력하세요.

그런 다음 /etc/pam.d/sshd를 편집하여 "pam_selinux.so close" 뒤에 다음 줄을 추가합니다.

session required pam_mkhomedir.so skel=/etc/skel/ umask=0022

마지막으로 휠 항목 뒤에 다음을 추가하여 visudo를 사용하여 적절한 AD 그룹이 sudo를 수행하도록 허용합니다.

"%domain admins"     ALL=(ALL)     ALL

가셔도 좋을 것 같아요! 새 세션에서 SSH를 시도하고, 문제가 발생할 경우를 대비해 첫 번째 세션에서 로그아웃하지 마세요.

관련 정보