配置 LDAP 身份驗證
以下是透過在Linux上的Terminal設定,將NAS 設定為 LDAP 伺服器來提供帳號認證服務的詳細步驟:
安裝相關套件工具
> yum -y update
> yum -y install openldap-clients sssd sssd-client sssd-ldap sssd-tools authconfig nss-pam-ldapd oddjob-mkhomedir epel-release nfs-utils
安裝工具:OpenLDAP客戶端(openldap-clients)、SSSD(sssd, sssd-cliet, sssd-ldap, sssd-tools)身份驗證、使用NFS(nfs-utils)掛載共用資料夾
安裝package:authconfig、nss-pam-ldapd、oddjob-mkhomedir、epel-release
啟用功能及基本設定
> authconfig --enablesssd --enablesssdauth --enableldap --enableldapauth --enableldaptls --enablemd5 --disablemkhomedir --disableforcelegacy --ldapserver ldap://(填入NAS的IP位置)/ --ldapbasedn dc=ece,dc=cycu,dc=edu,dc=tw --updateall
用 authconfig 啟用sssd, sssdauth, ldap, ldapauth, ldaptls, md5
停用 mkhomedir, forcelegacy
指定LDAP伺服器位置(在此需填入NAS的IP位置)並指定BaseDN
最後更新所有相關配置文件
設定sssd配置文件
[domain/default]
autofs_provider = ldap
cache_credentials = True
ldap_search_base = dc=ece,dc=cycu,dc=edu,dc=tw
id_provider = ldap
auth_provider = ldap
chpass_provider = ldap
ldap_uri = ldap://(填入NAS的IP位置)/
ldap_default_bind_dn = uid=root,cn=users,dc=ece,dc=cycu,dc=edu,dc=tw
ldap_default_authtok = (NAS密碼)
ldap_tls_reqcert = never
ldap_id_use_start_tls = True
ldap_tls_cacert = /etc/openldap/cacerts/cert.pem
ldap_tls_cacertdir = /etc/openldap/cacerts
default_shell = /bin/bash
override_shell = /bin/bash
[sssd]
services = nss, pam, autofs
domains = default
[nss]
homedir_substring = /home
[pam]
[sudo]
[autofs]
[ssh]
[pac]
[ifp]
[secrets]
[session_recording]
在配置文件中有三個部分需要設定:
[domain/NAME]
指定LDAP作為Autofs的提供者,並啟用快取憑證。
指定LDAP路徑(此為BaseDN所設),並設置id_provider, auth_provider, chpass_provider為LDAP,其中LDAP連接至NAS。因此在ldap_uri中需填入NAS的IP位置。
設置LDAP的默認BindDN與默認綁定用戶密碼(也就是NAS的密碼)
設置用戶端不須要求或檢查伺服器憑證,並啟用tls作為保護id_provider連線的通道,接著指定sssd所需的憑證檔案與檔案路徑 。
user shell設定:default_shell 值與override_shell皆為/bin/bash
[sssd]
設置配置服務項目:nss, pam, autofs模組,網域為預設值。
[nss]
替換(override_homedir)中的主目錄路徑。
若需其它配置設定,請參考:https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/6/html/deployment_guide/about-sssd-conf
使用自訂sssd設定檔
sudo cp ~/sssd.txt /etc/sssd/sssd.conf
將已設定好的sssd內容複製至sssd.conf中
複製金鑰至Openldap檔案夾中
> cp cert.pem /etc/openldap/cacerts/
重啟sssd服務並檢查使用者id
> systemctl restart sssd
出現"active(running)"就代表您已設置成功!