1. LDAP [Part 1] - Giới thiệu về LDAP
Giới thiệu và tìm hiểu về LDAP.
Nơi chứa các tài liệu tham khảo của dịch vụ Cloud365.
Đối với hệ thống OpenLDAP thì việc quản lý, update tài khoản người dùng phải dùng bằng lệnh cho nên khá khó khăn do đó hôm này mình sẽ giới thiệu đến mọi người một công cụ giúp chúng ta có thể dễ dàng quản lý OpenLDAP đó là phpLDAPadmin.Một công cụ được code bằng ngôn ngữ PHP và chạy trên nền web cho nên ứng dụng này đáng được lựa chọn nếu như chúng ta đang cần một công cụ hỗ trợ việc quản trị OpenLDAP.
1. Cài đặt httpd
yum -y install httpd
Mở file /etc/httpd/conf/httpd.conf
và sửa đổi các thông tin sau:
# Tại dòng 151 sửa như sau :
AllowOverride All
# Tại dòng 164, sửa thông tin như sau:
DirectoryIndex index.html index.cgi index.php
# Thêm vào cuối file những cấu hình sau:
ServerTokens Prod
KeepAlive On
Khởi động httpd:
systemctl start httpd
systemctl enable httpd
2. Cài đặt PHP
yum -y install php php-mbstring php-pear
Mở file /etc/php.ini
và sửa lại các thông tin như sau:
# Tại dòng 878 sửa lại timezone:
date.timezone = "Asia/Ho_Chi_Minh"
Tải và cài dặt epel 7:
yum install wget -y
wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -ivh epel-release-latest-7.noarch.rpm
Cài đặt phpLDAPadmin
yum --enablerepo=epel -y install phpldapadmin
Mở file /etc/phpldapadmin/config.php
và sửa lại thông tin như sau:
# Tại dòng 398:
$servers->setValue('login','attr','dn');
// $servers->setValue('login','attr','uid');
Cho phép truy cập vào phpLDAPadmin:
cat > /etc/httpd/conf.d/phpldapadmin.conf << EOF
Alias /phpldapadmin /usr/share/phpldapadmin/htdocs
Alias /ldapadmin /usr/share/phpldapadmin/htdocs
<Directory /usr/share/phpldapadmin/htdocs>
<IfModule mod_authz_core.c>
# Apache 2.4
Require all granted
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order Deny,Allow
Deny from all
Allow from 127.0.0.1
Allow from ::1
</IfModule>
</Directory>
EOF
Khởi động lại httpd:
systemctl restart httpd
Truy cập theo đường dẫn :
IP_PHP_LDAP_ADMIN/phpldapadmin
Kết quả như sau:
Đăng nhập với dn
và password
như sau:
Giao diện sau khi đăng nhập :
Mô hình như sau:
Các bước cài đặt tương tự như trên, chúng ta cần phải thêm đoạn cấu hình để bind đến OpenLDAP server thì mới có thể đăng nhập được. Để thực hiện chúng ta dùng trình soạn thảo vi
mở file /usr/share/phpldapadmin/config/config.php
vi /usr/share/phpldapadmin/config/config.php
Sau đó tại dòng 584
thêm đoạn $servers->setValue('server','host','10.10.10.185');
với 10.10.10.185
là ip của máy chủ OpenLDAP.
Sau đó truy cập vào web như bình thường.
Giả định rằng chúng ta có khoảng 3 máy chủ chạy OpenLDAP để chạy xác thực cho các hệ thống khác nhau và 3 máy chủ này không hề có liên quan gì đến nhau, trên lý thuyết chúng ta phải cài 3 máy chủ chạy OpenLDAP để quản lý 3 máy OpenLDAP kia, tuy nhiên chúng ta vẫn có thể cấu hình phpLDAPadmin bind đến nhiều máy chủ chỉ định khác nhau. Ở đâu mình có mô hình như sau :
Chúng ta vẫn cài phpLDAPadmin như ở trường hợp 1, sau đó chúng ta mở file /usr/share/phpldapadmin/config/config.php
và thêm những cấu hình như sau:
# OpenLDAP1
$servers->setValue('server','host','10.10.10.185');
# OpenLDAP2
$servers->newServer('ldap_pla');
$servers->setValue('server','name','LDAP Server 2');
$servers->setValue('server','host','10.10.10.184');
$servers->setValue('server','port',389);
$servers->setValue('server','base',array(''));
$servers->setValue('login','auth_type','cookie');
$servers->setValue('login','bind_id','');
$servers->setValue('login','bind_pass','');
$servers->setValue('server','tls',false);
# OpenLDAP3
$servers->newServer('ldap_pla');
$servers->setValue('server','name','LDAP Server 3');
$servers->setValue('server','host','10.10.10.183');
$servers->setValue('server','port',389);
$servers->setValue('server','base',array(''));
$servers->setValue('login','auth_type','cookie');
$servers->setValue('login','bind_id','');
$servers->setValue('login','bind_pass','');
$servers->setValue('server','tls',false);
Chi tiết chỉnh sửa như sau :
Nếu có thêm những server khác thì thêm đoạn cấu hình giống OpenLDAP2
xuống dưới sau đó lưu lại.
Kiểm tra trên giao diện web, bây giờ chúng ta có thể chọn máy chủ quản trị trước khi đăng nhập rồi:
Bài blog đến đây là hết, chúc mọi người thành công !!!
Ở bài này mình đã hướng dẫn cách để cài đặt phpLDAPadmin cho mọi người có thể dụng để quản trị các thông tin trong slapd, ở bài viết tiếp theo mình sẽ giới thiệu cho mọi người cách SSH với LDAP.
Thực hiện bởi cloud365.vn
Chuỗi bài viết về LDAP và tích hợp LDAP với các phần mềm nguồn mở khác.
Giới thiệu và tìm hiểu về LDAP.
Cài đặt OpenLDAP trên CentOS 7
Hướng dẫn cài đặt phpldapadmin trên CentOS 7
Xác thực SSH với LDAP
Tích hợp LDAP với Pfsense
OpenVPN Pfsense đối với user được tích hợp từ LDAP
Tích hợp LDAP với phpIPAM
Tích hợp LDAP với Check_MK
Tích hợp LDAP với Graylog
Hướng dẫn triển khai LDAP Master - Master trên CentOS 7
Hướng dẫn triển khai LDAP Master - Slave trên CentOS 7
Hướng dẫn cấu hình Keepalive cho mô hình LDAP Master Master
Hướng dẫn triển khai LDAP Multi-Master Haproxy Pacemaker trên CentOS 7
Hướng dẫn backup và restore trên CentOS 7