OpenLDAP là một phần mềm triển khai của Lightweight Directory Access Protocol (LDAP). OpenLDAP là phần mềm miễn phí và mã nguồn mở với giấy phép theo kiểu BSD có tên là OpenLDAP Public License. Phần mềm LDAP ổ đĩa dòng lệnh của nó có sẵn trên hầu hết các bản phân phối Linux như CentOS, Ubuntu, Debian, SUSE và nhiều bản phân phối khác.
OpenLDAP là một bộ phần mềm hoàn chỉnh cho máy chủ LDAP, bao gồm SLAPD (trình nền LDAP độc lập), SLURPD (trình nền sao chép bản cập nhật LDAP độc lập) và một số tiện ích và công cụ để quản lý máy chủ LDAP. OpenLDAP là máy chủ LDAP có khả năng tùy chỉnh cao và hỗ trợ tất cả các nền tảng điện toán chính.
Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt Máy chủ OpenLDAP trên AlmaLinux 9 để bạn có thể bắt đầu dễ dàng.
Chạy lệnh sau để thiết lập fqdn cho máy AlmaLinux của bạn. Trong trường hợp này, máy chủ sẽ có fqdn ldap.hwdomain.local.
Bây giờ hãy mở tệp /etc/hosts bằng lệnh trình chỉnh sửa nano sau.
Chèn cấu hình sau và đảm bảo thay đổi địa chỉ IP, fqdn và hostname.
Lưu tệp và thoát khỏi trình chỉnh sửa khi hoàn tất.
Cuối cùng, hãy chạy lệnh sau để xác minh fqdn của hệ thống và đảm bảo rằng nó được trỏ đến đúng địa chỉ IP cục bộ.
Trong trường hợp này, fqdn ldap.hwdomain.local được trỏ đến địa chỉ IP 192.168.10.50.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22272%22%3E%3C/svg%3E
Phần sau sẽ chỉ cho bạn cách thêm kho lưu trữ EPEL, cài đặt máy chủ OpenLDAP và quản lý dịch vụ OpenLDAP.
Đầu tiên, hãy thêm kho lưu trữ EPEL vào máy chủ AlmaLinux của bạn thông qua lệnh dnf bên dưới.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22222%22%3E%3C/svg%3E
Sau đó, chạy lệnh dnf bên dưới để cài đặt các gói máy chủ và máy khách OpenLDAP.
Khi được nhắc, hãy nhập y để xác nhận và nhấn ENTER.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22245%22%3E%3C/svg%3E
Ngoài ra, khi được yêu cầu thêm khóa GPG của kho lưu trữ EPEL, hãy nhập y một lần nữa và nhấn ENTER.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22599%22%20height=%22182%22%3E%3C/svg%3E
Bây giờ hãy chạy lệnh systemctl bên dưới để khởi động và kích hoạt dịch vụ OpenLDAP slapd.
Xác minh dịch vụ slapd bằng lệnh sau để đảm bảo rằng dịch vụ đang chạy.
Nếu đang chạy, bạn sẽ nhận được đầu ra như active (đang chạy).
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22299%22%3E%3C/svg%3E
Cuối cùng, bạn sẽ cần mở cả dịch vụ LDAP và LDAPS trên firewalld để cho phép kết nối máy khách.
Chạy lệnh firewall-cmd bên dưới để thêm cả dịch vụ LDAP và LDAPS vào firewalld. Sau đó, tải lại firewalld để áp dụng các thay đổi.
Bây giờ bạn có thể xác minh danh sách các quy tắc firewalld bằng lệnh bên dưới.
Nếu thành công, bạn sẽ thấy cả dịch vụ LDAP và LDAPS có sẵn trong danh sách dịch vụ firewalld.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22670%22%20height=%22304%22%3E%3C/svg%3E
Chạy lệnh sau để tạo mật khẩu băm cho máy chủ OpenLDAP của bạn. Nhập mật khẩu của bạn và lặp lại, sau đó sao chép mật khẩu băm đã tạo.
Tạo tệp chrootpw.ldif mới bằng lệnh trình chỉnh sửa nano bên dưới.
Thêm cấu hình sau và đảm bảo thay thế giá trị trên tham số olcRootPW bằng mật khẩu băm của bạn. Thao tác này sẽ thay đổi mật khẩu cho máy chủ OpenLDAP của bạn.
Lưu và thoát tệp khi hoàn tất.
Bây giờ hãy chạy lệnh ldapadd bên dưới để áp dụng cấu hình cho máy chủ OpenLDAP.
Nếu thành công, bạn sẽ nhận được kết quả như sau:
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22666%22%20height=%22276%22%3E%3C/svg%3E
Cuối cùng, hãy chạy lệnh sau để thêm một số lược đồ cơ bản vào máy chủ OpenLDAP của bạn.
Lệnh này sẽ thêm các mục mới như nis, cosine và inetorgperson vào OpenLDAP của bạn máy chủ.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22323%22%3E%3C/svg%3E
Hoàn thành các bước sau để thiết lập tên miền và tên miền cơ sở thông qua tệp LDIF.
Thêm cấu hình sau và đảm bảo thay đổi tên miền dc=hwdomain,dc=local bằng tên miền máy chủ OpenLDAP của bạn. Ngoài ra, trong tham số olcRootPW, hãy thay đổi nó bằng mật khẩu đã băm của bạn.
Điều này sẽ thay đổi tên miền mặc định của máy chủ OpenLDAP của bạn bằng tên miền mới.
Lưu tệp và thoát khỏi trình chỉnh sửa khi hoàn tất.
Tiếp theo, chạy lệnh ldapmodify bên dưới để áp dụng cấu hình mới cho OpenLDAP máy chủ.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22672%22%20height=%22339%22%3E%3C/svg%3E
Sau khi áp dụng các thay đổi, hãy chạy lệnh ldapsearch bên dưới để xác minh cấu hình của bạn. Nếu thành công, bạn sẽ thấy namingContexts chứa tên miền của máy chủ OpenLDAP của bạn. Trong trường hợp này, tên miền là ldap.hwdomain.local.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22137%22%3E%3C/svg%3E
Chèn cấu hình sau vào tệp. Với điều này, bạn sẽ tạo ra ba đối tượng khác nhau oragnizationalUnit Manager, People và Group.
Lưu tệp và thoát khỏi trình chỉnh sửa sau khi hoàn tất.
Bây giờ hãy chạy lệnh ldapadd bên dưới để thêm tên miền cơ sở mới vào OpenLDAP của bạn máy chủ.
Nhập mật khẩu OpenLDAP khi được nhắc. Nếu thành công, bạn sẽ nhận được kết quả như sau:
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22240%22%3E%3C/svg%3E
Cuối cùng, bạn có thể xác minh danh sách ou trên máy chủ OpenLDAP của mình bằng lệnh sau.
Nếu cấu hình thành công, bạn sẽ thấy ba ou Manager, People và Group.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22593%22%20height=%22621%22%3E%3C/svg%3E
Tại thời điểm này, bạn đã hoàn tất việc cài đặt máy chủ OpenLDAP trên máy AlmaLinux của mình. Ở bước tiếp theo, bạn sẽ học cách tạo người dùng OpenLDAP thông qua tệp LDIF.
Để tạo người dùng mới, trước tiên bạn phải tạo băm mật khẩu thông qua lệnh slappasswd bên dưới.
Nhập mật khẩu của bạn và sao chép băm đã tạo.
Bây giờ hãy tạo một tệp mới newuser.ldif bằng lệnh nano editor bên dưới.
Chèn cấu hình sau để tạo người dùng và nhóm OpenLDAP mới. Ngoài ra, hãy nhớ thay đổi thông tin chi tiết của tên miền, người dùng mới, nhóm gid và uid, cũng như mã băm mật khẩu.
Lưu tệp và thoát khỏi trình chỉnh sửa sau khi hoàn tất.
Tiếp theo, chạy lệnh ldapadd bên dưới để thêm người dùng và nhóm OpenLDAP mới. Nhập mật khẩu OpenLDAP của bạn khi được nhắc và nhấn ENTER để xác nhận.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22263%22%3E%3C/svg%3E
Sau khi người dùng và nhóm mới được thêm vào, hãy chạy lệnh ldapsearch bên dưới để có danh sách những người dùng và nhóm khả dụng trên OpenLDAP của bạn máy chủ.
Nếu cấu hình của bạn thành công, bạn sẽ thấy người dùng và nhóm alma có sẵn trên máy chủ OpenLDAP.
Dưới đây là người dùng alma có sẵn trên Máy chủ OpenLDAP.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22651%22%20height=%22750%22%3E%3C/svg%3E
Dưới đây là nhóm alma có sẵn trên Máy chủ OpenLDAP.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22636%22%20height=%22594%22%3E%3C/svg%3E
OpenLDAP là một bộ phần mềm hoàn chỉnh cho máy chủ LDAP, bao gồm SLAPD (trình nền LDAP độc lập), SLURPD (trình nền sao chép bản cập nhật LDAP độc lập) và một số tiện ích và công cụ để quản lý máy chủ LDAP. OpenLDAP là máy chủ LDAP có khả năng tùy chỉnh cao và hỗ trợ tất cả các nền tảng điện toán chính.
Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt Máy chủ OpenLDAP trên AlmaLinux 9 để bạn có thể bắt đầu dễ dàng.
Điều kiện tiên quyết
Để hoàn tất hướng dẫn này, hãy đảm bảo bạn có những thứ sau:- Máy AlmaLinux 9 - Bản demo này sử dụng máy chủ có tên máy chủ ldap và địa chỉ IP 192.168.10.50.
- Người dùng không phải root có quyền quản trị viên.
Thiết lập FQDN
Trước khi cài đặt máy chủ OpenLDAP, bạn phải đảm bảo rằng fqdn được định cấu hình và trỏ đến đúng địa chỉ IP. Thực hiện các bước sau để thiết lập fqdn trên máy AlmaLinux của bạn.Chạy lệnh sau để thiết lập fqdn cho máy AlmaLinux của bạn. Trong trường hợp này, máy chủ sẽ có fqdn ldap.hwdomain.local.
Mã:
sudo hostnamectl set-hostname ldap.hwdomain.local
Mã:
sudo nano /etc/hosts
Mã:
192.168.10.50 ldap.hwdomain.local ldap
Cuối cùng, hãy chạy lệnh sau để xác minh fqdn của hệ thống và đảm bảo rằng nó được trỏ đến đúng địa chỉ IP cục bộ.
Mã:
sudo hostname -f
ping -c3 ldap.hwdomain.local
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22272%22%3E%3C/svg%3E
Cài đặt Máy chủ OpenLDAP
Gói máy chủ OpenLDAP có sẵn trên kho lưu trữ EPEL. Vì vậy, trước khi cài đặt máy chủ OpenLDAP, bạn phải cài đặt kho lưu trữ EPEL trên máy chủ AlmaLinux của mình.Phần sau sẽ chỉ cho bạn cách thêm kho lưu trữ EPEL, cài đặt máy chủ OpenLDAP và quản lý dịch vụ OpenLDAP.
Đầu tiên, hãy thêm kho lưu trữ EPEL vào máy chủ AlmaLinux của bạn thông qua lệnh dnf bên dưới.
Mã:
sudo dnf install epel-release -y
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22222%22%3E%3C/svg%3E
Sau đó, chạy lệnh dnf bên dưới để cài đặt các gói máy chủ và máy khách OpenLDAP.
Mã:
sudo dnf install openldap-servers openldap-clients
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22245%22%3E%3C/svg%3E
Ngoài ra, khi được yêu cầu thêm khóa GPG của kho lưu trữ EPEL, hãy nhập y một lần nữa và nhấn ENTER.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22599%22%20height=%22182%22%3E%3C/svg%3E
Bây giờ hãy chạy lệnh systemctl bên dưới để khởi động và kích hoạt dịch vụ OpenLDAP slapd.
Mã:
sudo systemctl start slapd
sudo systemctl enable slapd
Mã:
sudo systemctl status slapd
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22299%22%3E%3C/svg%3E
Cuối cùng, bạn sẽ cần mở cả dịch vụ LDAP và LDAPS trên firewalld để cho phép kết nối máy khách.
Chạy lệnh firewall-cmd bên dưới để thêm cả dịch vụ LDAP và LDAPS vào firewalld. Sau đó, tải lại firewalld để áp dụng các thay đổi.
Mã:
sudo firewall-cmd --add-service={ldap,ldaps} --permanent
sudo firewall-cmd --reload
Mã:
sudo firewall-cmd --list-all
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22670%22%20height=%22304%22%3E%3C/svg%3E
Cấu hình máy chủ OpenLDAP cơ bản
Sau khi cài đặt máy chủ OpenLDAP, bây giờ bạn sẽ cấu hình cài đặt OpenLDAP. Và bước đầu tiên bạn phải làm là thiết lập người dùng quản trị viên và nhập một số lược đồ cơ bản cho cài đặt máy chủ OpenLDAP của bạn.Chạy lệnh sau để tạo mật khẩu băm cho máy chủ OpenLDAP của bạn. Nhập mật khẩu của bạn và lặp lại, sau đó sao chép mật khẩu băm đã tạo.
Mã:
slappasswd
Mã:
nano chrootpw.ldif
Mã:
# chrootpw.ldif
dn: olcDatabase={0}config,cn=config
changetype: modify
add: olcRootPW
olcRootPW: {SSHA}yK9Dk+Kz9S9CLu3Y+ZtJVAYF+MPIRl1X
Bây giờ hãy chạy lệnh ldapadd bên dưới để áp dụng cấu hình cho máy chủ OpenLDAP.
Mã:
sudo ldapadd -Y EXTERNAL -H ldapi:/// -f chrootpw.ldif
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22666%22%20height=%22276%22%3E%3C/svg%3E
Cuối cùng, hãy chạy lệnh sau để thêm một số lược đồ cơ bản vào máy chủ OpenLDAP của bạn.
Mã:
sudo ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/cosine.ldif
sudo ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/nis.ldif
sudo ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/inetorgperson.ldif
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22323%22%3E%3C/svg%3E
Thiết lập tên miền và tên miền cơ sở
Bây giờ mật khẩu quản trị viên cho máy chủ OpenLDAP đã được cấu hình, bước tiếp theo là thiết lập tên miền cho máy chủ OpenLDAP của bạn và tạo một số tên miền cơ bản cho người dùng.Hoàn thành các bước sau để thiết lập tên miền và tên miền cơ sở thông qua tệp LDIF.
Cấu hình tên miền
Tạo tệp LDIF mới chdomain.ldif bằng trình chỉnh sửa nano sau lệnh.
Mã:
nano chdomain.ldif
Điều này sẽ thay đổi tên miền mặc định của máy chủ OpenLDAP của bạn bằng tên miền mới.
Mã:
# chdomain.ldif
# replace to your own domain name for [dc=***,dc=***] section
# specify the password generated above for [olcRootPW] section
dn: olcDatabase={1}monitor,cn=config
changetype: modify
replace: olcAccess
olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth"
read by dn.base="cn=Manager,dc=hwdomain,dc=local" read by * none
dn: olcDatabase={2}mdb,cn=config
changetype: modify
replace: olcSuffix
olcSuffix: dc=hwdomain,dc=local
dn: olcDatabase={2}mdb,cn=config
changetype: modify
replace: olcRootDN
olcRootDN: cn=Manager,dc=hwdomain,dc=local
dn: olcDatabase={2}mdb,cn=config
changetype: modify
add: olcRootPW
olcRootPW: {SSHA}yK9Dk+Kz9S9CLu3Y+ZtJVAYF+MPIRl1X
dn: olcDatabase={2}mdb,cn=config
changetype: modify
add: olcAccess
olcAccess: {0}to attrs=userPassword,shadowLastChange by
dn="cn=Manager,dc=hwdomain,dc=local" write by anonymous auth by self write by * none
olcAccess: {1}to dn.base="" by * read
olcAccess: {2}to * by dn="cn=Manager,dc=hwdomain,dc=local" write by * read
Tiếp theo, chạy lệnh ldapmodify bên dưới để áp dụng cấu hình mới cho OpenLDAP máy chủ.
Mã:
sudo ldapmodify -Y EXTERNAL -H ldapi:/// -f chdomain.ldif
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22672%22%20height=%22339%22%3E%3C/svg%3E
Sau khi áp dụng các thay đổi, hãy chạy lệnh ldapsearch bên dưới để xác minh cấu hình của bạn. Nếu thành công, bạn sẽ thấy namingContexts chứa tên miền của máy chủ OpenLDAP của bạn. Trong trường hợp này, tên miền là ldap.hwdomain.local.
Mã:
sudo ldapsearch -H ldap:// -x -s base -b "" -LLL "namingContexts"
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22137%22%3E%3C/svg%3E
Cấu hình miền cơ sở
Tạo tệp LDIF mới basedomain.ldif bằng trình chỉnh sửa nano.
Mã:
nano basedomain.ldif
Mã:
# basedomain.ldif
# replace to your own domain name for [dc=***,dc=***] section
dn: dc=hwdomain,dc=local
objectClass: top
objectClass: dcObject
objectclass: organization
o: Hwdomain Local
dc: hwdomain
dn: cn=Manager,dc=hwdomain,dc=local
objectClass: organizationalRole
cn: Manager
description: Directory Manager
dn: ou=People,dc=hwdomain,dc=local
objectClass: organizationalUnit
ou: People
dn: ou=Group,dc=hwdomain,dc=local
objectClass: organizationalUnit
ou: Group
Bây giờ hãy chạy lệnh ldapadd bên dưới để thêm tên miền cơ sở mới vào OpenLDAP của bạn máy chủ.
Mã:
sudo ldapadd -x -D cn=Manager,dc=hwdomain,dc=local -W -f basedomain.ldif
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22240%22%3E%3C/svg%3E
Cuối cùng, bạn có thể xác minh danh sách ou trên máy chủ OpenLDAP của mình bằng lệnh sau.
Mã:
sudo ldapsearch -x -b "dc=hwdomain,dc=local" ou
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22593%22%20height=%22621%22%3E%3C/svg%3E
Tại thời điểm này, bạn đã hoàn tất việc cài đặt máy chủ OpenLDAP trên máy AlmaLinux của mình. Ở bước tiếp theo, bạn sẽ học cách tạo người dùng OpenLDAP thông qua tệp LDIF.
Thêm người dùng mới trên máy chủ OpenLDAP
Để tạo người dùng mới theo cách thủ công trên máy chủ OpenLDAP, bạn có thể sử dụng lệnh slappasswd để tạo mật khẩu băm và tạo tệp LDIF mới cho người dùng mới của mình. Trong bước này, bạn sẽ học cách thực hiện.Để tạo người dùng mới, trước tiên bạn phải tạo băm mật khẩu thông qua lệnh slappasswd bên dưới.
Mã:
slappasswd
Bây giờ hãy tạo một tệp mới newuser.ldif bằng lệnh nano editor bên dưới.
Mã:
nano newuser.ldif
Mã:
# newuser.ldif
# Change detail username and path home directory and default domain name
dn: uid=alma,ou=People,dc=hwdomain,dc=local
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
cn: alma
sn: temp
userPassword: {SSHA}l/lZ6zZSGgGP1s7pezz6faYX86Tx3Fv/
loginShell: /bin/bash
uidNumber: 2000
gidNumber: 2000
homeDirectory: /home/alma
shadowLastChange: 0
shadowMax: 0
shadowWarning: 0
dn: cn=alma,ou=Group,dc=hwdomain,dc=local
objectClass: posixGroup
cn: alma
gidNumber: 2000
memberUid: alma
Tiếp theo, chạy lệnh ldapadd bên dưới để thêm người dùng và nhóm OpenLDAP mới. Nhập mật khẩu OpenLDAP của bạn khi được nhắc và nhấn ENTER để xác nhận.
Mã:
sudo ldapadd -x -D cn=Manager,dc=hwdomain,dc=local -W -f newuser.ldif
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22263%22%3E%3C/svg%3E
Sau khi người dùng và nhóm mới được thêm vào, hãy chạy lệnh ldapsearch bên dưới để có danh sách những người dùng và nhóm khả dụng trên OpenLDAP của bạn máy chủ.
Mã:
sudo ldapsearch -x -b "ou=People,dc=hwdomain,dc=local"
sudo ldapsearch -x -b "ou=Group,dc=hwdomain,dc=local"
Dưới đây là người dùng alma có sẵn trên Máy chủ OpenLDAP.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22651%22%20height=%22750%22%3E%3C/svg%3E
Dưới đây là nhóm alma có sẵn trên Máy chủ OpenLDAP.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22636%22%20height=%22594%22%3E%3C/svg%3E