Autenticazione LDAP tramite Windows Active Directory
Imparate a configurare SSL o TLS per l'autenticazione LDAP utilizzando Windows Active Directory.
Procedura
- Aggiungere gli utenti di Windows Active Directory al database.
Definire la password in base alla propria politica di password.create user <user> password <password>Esempio:nzsql -c "create user ad_user1 password 'password';" - Impostare il tipo di autenticazione:
- Impostare l'autenticazione su AD con SSL/TLS disattivato
- Eseguire il comando.
nzsql -c " SET AUTHENTICATION LDAP BASE 'dc=nzdevelopment,dc=com' NAMECASE lowercase SERVER 'AD_SERVER' SSL 'OFF' BINDPW Netezzapwd BINDDN 'cn=ad_admin_user1,cn=Users,dc=nzdevelopment,dc=com' ATTRNAME 'sAMAccountName';" - Ora il file
sssd.confha il seguente aspetto.[domain/external_ldap] ###The below common parameters and values should not be changed ldap_default_authtok_type = obfuscated_password ldap_schema = AD ldap_group_name = CN ldap_user_name = sAMAccountName ignore_group_members = True auth_provider = ldap ldap_rfc2307_fallback_to_local_users = True ldap_referrals = False override_homedir = /home/%u ldap_network_timeout = 3 ldap_opt_timeout = 60 cache_credentials = True entry_cache_group_timeout = 0 entry_cache_user_timeout = 0 ldap_search_timeout = 30 id_provider = ldap entry_cache_timeout = 600 case_sensitive = False ldap_id_mapping = True #ldap_group_attribute = #debug_level = 10 ###Supplied from Input ldap_uri = ldap://AD_SERVER:389 ldap_user_search_base = dc=nzdevelopment,dc=com ldap_default_bind_dn = cn=ad_admin_user1,cn=Users,dc=nzdevelopment,dc=com ldap_tls_reqcert = never #ldap_id_use_start_tls = #ldap_tls_cacert = ldap_default_authtok = AAAQAA5gKJVg+dHVdi2LU9uTepJAJRYtMh1mlO8vp4ysVuFjw5OrxTeY4MteantA1+FLTm2+XGmtdokCsiZAfGExIlsAAQID [sssd] services = nss, ifp, sudo, ssh, pam domains = external_ldap [nss] memcache_timeout = 600 homedir_substring = /home [pam] #debug_level = 10 [sudo] [autofs] [ssh] [pac] [ifp] [secrets]Se si hanno molti gruppi o utenti sul server AD, è possibile migliorare le prestazioni di accesso aggiungendo
ldap_group_member = uniqueMemberal filesssd.conf.1. Aggiungereldap_group_member = uniqueMemberalla sezione[domain/external_ldap]in /etc/sssd/sssd.conf.ignore_group_members = True (add only if not present since this variable was already exist) ldap_group_member = uniqueMember2. Riavviare il serviziosssd.systemctl stop sssd ; rm -f /var/lib/sss/db/* ; systemctl start sssd3. Verificare l'autenticazione.
- Eseguire il comando.
- Impostare l'autenticazione su AD con l'SSL ONIl certificato deve essere rilasciato al server AD da una CA affidabile. Ottenere il file del certificato CA e salvarlo in una posizione del sistema Netezza Performance Server. Per i sistemi Netezza Performance Server ad alta disponibilità (HA), salvare il file in una posizione dell'unità condivisa, ad esempio in una nuova directory sotto /nz. Entrambi i nodi di sistema Netezza Performance Server devono poter accedere al file del certificato utilizzando lo stesso nome di percorso.
- Impostare l'autenticazione AD con SSL su ON.
CACERT è il percorso del file del certificato CA.nzsql -c " SET AUTHENTICATION LDAP BASE 'dc=nzdevelopment,dc=com' NAMECASE lowercase SERVER 'AD_SERVER' SSL 'ON' BINDPW Netezzapwd BINDDN 'cn=ad_admin_user1,cn=Users,dc=nzdevelopment,dc=com' ATTRNAME 'sAMAccountName' CACERT '/nz/caCert/ca_cert.pem';" - Ora il file
sssd.confha il seguente aspetto.[domain/external_ldap] ###The below common parameters and values should not be changed ldap_default_authtok_type = obfuscated_password ldap_schema = AD ldap_group_name = CN ldap_user_name = sAMAccountName ignore_group_members = True auth_provider = ldap ldap_rfc2307_fallback_to_local_users = True ldap_referrals = False override_homedir = /home/%u ldap_network_timeout = 3 ldap_opt_timeout = 60 cache_credentials = True entry_cache_group_timeout = 0 entry_cache_user_timeout = 0 ldap_search_timeout = 30 id_provider = ldap entry_cache_timeout = 600 case_sensitive = False ldap_id_mapping = True #ldap_group_attribute = #debug_level = 10 ###Supplied from Input ldap_uri = ldaps://AD_SERVER:636 ldap_user_search_base = dc=nzdevelopment,dc=com ldap_default_bind_dn = cn=ad_admin_user1,cn=Users,dc=nzdevelopment,dc=com ldap_tls_reqcert = demand ldap_id_use_start_tls = False ldap_tls_cacert = /nz/caCert/ca_cert.pem ldap_default_authtok = AAAQAAIxX3meMywHbwCnnFQRhRJAHpAICVBjoXmg6OhLr9ASy0RijAO4WdYwAioHf5Fmy6yQc0g8/CXOrx7VQ1BbrfYAAQID [sssd] services = nss, ifp, sudo, ssh, pam domains = external_ldap [nss] memcache_timeout = 600 homedir_substring = /home [pam] #debug_level = 10 [sudo] [autofs] [ssh] [pac] [ifp] [secrets]
Se si hanno molti gruppi o utenti sul server AD, è possibile migliorare le prestazioni di accesso aggiungendo
ldap_group_member = uniqueMemberal filesssd.conf.1. Aggiungereldap_group_member = uniqueMemberalla sezione[domain/external_ldap]in /etc/sssd/sssd.conf.ignore_group_members = True (add only if not present since this variable was already exist) ldap_group_member = uniqueMember2. Riavviare il serviziosssd.systemctl stop sssd ; rm -f /var/lib/sss/db/* ; systemctl start sssd3. Verificare l'autenticazione.
- Impostare l'autenticazione AD con SSL su ON.
- Impostare l'autenticazione su AD con TLS ON
È possibile stabilire una connessione sicura al server LDAP/AD utilizzando TLS. A tal fine, abilitare il flag TLS con il file del certificato CA.
- Impostare l'autenticazione AD con TLS attivo.
nzsql -c " SET AUTHENTICATION LDAP BASE 'dc=nzdevelopment,dc=com' NAMECASE lowercase SERVER 'AD_SERVER' SSL 'OFF' TLS 'ON' BINDPW Netezzapwd BINDDN 'cn=ad_admin_user1,cn=Users,dc=nzdevelopment,dc=com' ATTRNAME 'sAMAccountName' CACERT '/nz/caCert/ca_cert.pem';"Nota: Non è possibile impostare sia TLS che SSL suON. - Ora il file
sssd.confha il seguente aspetto.[domain/external_ldap] ###The below common parameters and values should not be changed ldap_default_authtok_type = obfuscated_password ldap_schema = AD ldap_group_name = CN ldap_user_name = sAMAccountName ignore_group_members = True auth_provider = ldap ldap_rfc2307_fallback_to_local_users = True ldap_referrals = False override_homedir = /home/%u ldap_network_timeout = 3 ldap_opt_timeout = 60 cache_credentials = True entry_cache_group_timeout = 0 entry_cache_user_timeout = 0 ldap_search_timeout = 30 id_provider = ldap entry_cache_timeout = 600 case_sensitive = False ldap_id_mapping = True #ldap_group_attribute = #debug_level = 10 ###Supplied from Input ldap_uri = ldap://AD_SERVER:389 ldap_user_search_base = dc=nzdevelopment,dc=com ldap_default_bind_dn = cn=ad_admin_user1,cn=Users,dc=nzdevelopment,dc=com ldap_tls_reqcert = demand ldap_id_use_start_tls = True ldap_tls_cacert = /nz/caCert/ca_cert.pem ldap_default_authtok = AAAQAAIxX3meMywHbwCnnFQRhRJAHpAICVBjoXmg6OhLr9ASy0RijAO4WdYwAioHf5Fmy6yQc0g8/CXOrx7VQ1BbrfYAAQID [sssd] services = nss, ifp, sudo, ssh, pam domains = external_ldap [nss] memcache_timeout = 600 homedir_substring = /home [pam] #debug_level = 10 [sudo] [autofs] [ssh] [pac] [ifp] [secrets]Nota: Il server Active Directory indicato nel comando SET AUTHENTICATION deve corrispondere all'hostname del file di certificato del server LDAP.
Se si hanno molti gruppi o utenti sul server AD, è possibile migliorare le prestazioni di accesso aggiungendo
ldap_group_member = uniqueMemberal filesssd.conf.1. Aggiungereldap_group_member = uniqueMemberalla sezione[domain/external_ldap]in /etc/sssd/sssd.conf.ignore_group_members = True (add only if not present since this variable was already exist) ldap_group_member = uniqueMember2. Riavviare il serviziosssd.systemctl stop sssd ; rm -f /var/lib/sss/db/* ; systemctl start sssd3. Verificare l'autenticazione.
- Impostare l'autenticazione AD con TLS attivo.
- Impostare l'autenticazione su AD con SSL/TLS disattivato