코딩마을방범대
우분투에 OpenLDAP & phpLdapAdmin 구축하기 본문
728x90
OpenLDAP 구축하기
※ 모든 명령어는 root 권한으로 실행
1. OpenLDAP 설치
# apt update && apt -y install slapd ldap-utils
# dpkg-reconfigure slapd
Question | Answer |
If you enable this option, no initial configuration or database will be created for you. Omit OpenLDAP server configuration? [yes/no] |
N |
DNS domain name: | [설정할 도메인 네임] ex) ldap.dbkim.co.kr |
Organization name: | [조직명] |
Administrator password: | [설정할 암호] (두 번 입력) |
Do you want the database to be removed when slapd is purged? [yes/no] (slapd를 제거했을 때 DB 정보를 지울 것인지) |
Y |
There are still files in /var/lib/ldap which will probably break the configuration process. If you enable this option, the maintainer scripts will move the old database files out of the way before creating a new database. Move old database? [yes/no] |
Y |
2. LDAP 설정 확인
# slapcat
방화벽이 실행 중이라면 아래 명령어를 통해 연결 허용 시켜주기
# ufw allow ldap
3. admin 추가
# vi basedn.ldif
dn: ou=people,dc=example,dc=com
objectClass: organizationalUnit
objectClass: top
ou: people
dn: ou=groups,dc=example,dc=com
objectClass: organizationalUnit
objectClass: top
ou: groups
아래 명령어를 이용해 해당 파일 등록
# ldapadd -x -D cn=admin,dc=example,dc=com -W -f basedn.ldif
phpLDAP 구축하기
1. phpLDAPAdmin 등 설치
# apt update && apt -y install apache2 php php-cgi libapache2-mod-php php-mbstring php-common php-pear
2. php7.2-cgi를 apache에 추가하고 apache2 재시작
# a2enconf php7.2-cgi
# systemctl reload apache2
3. phpldapadmin 수동 다운로드
※ apt-get 으로 phpldapadmin을 설치할 경우 오래전 버전이라 많은 기능이 deprecated 되었으므로, git에서 수정된 버전을 다운받아야 한다고 한다.
# mkdir -p /var/www/html
# cd /var/www/html
# git clone https://github.com/breisig/phpLDAPadmin.git
# mv phpLDAPadmin phpldapadmin
4. conf 파일 수정
# cp /var/www/html/phpldapadmin/config/config.php.example /var/www/html/phpldapadmin/config/config.php
# vi /var/www/html/phpldapadmin/config/config.php
$servers->setValue('server','host','127.0.0.1'); # 293번 줄 - 주석 제거 및 ip 주소 수정
$servers->setValue('server','base',array('dc=example,dc=co,dc=kr')); # 300번 줄 - array()에 도메인 추가
$servers->setValue('server','tls',false); # 335번 줄 - 주석 제거
$servers->setValue('login','anon_bind',false); # 453번 줄 - 주석 제거, false로 수정
만약 방화벽이 실행 중이라면 아래 명령어를 통해 포트 허용
# ufw allow proto tcp from any to any port 80,443
5. phpLDAPadmin 사이트 접속 테스트
http://<서버 ip>/phpldapadmin 로 접속!
Login DN: cn=admin, dc~
참고사이트
Ubuntu 20.04에서 OpenLDAP 및 phpLDAPadmin을 설치하고 구성하는 방법
OpenLDAP + phpLDAPAdmin 설치 (on Ubuntu)
728x90
'💡 백엔드 > 우분투' 카테고리의 다른 글
Nginx를 이용한 캐시 설정 (1) | 2023.11.02 |
---|---|
우분투의 CURL (0) | 2023.09.27 |
우분투에 FreeRadius 구축하기 (1) | 2023.09.11 |
MobaXterm, vi 편집기 단축키 정리 (0) | 2023.09.11 |
우분투에서 Apache를 이용해 WAS 연동하기 (0) | 2023.06.13 |