Autenticación LDAP mediante Windows Active Directory

Aprenda a configurar SSL o TLS para la autenticación LDAP mediante Windows Active Directory.

Para Netezza Performance Server 11.1.0.1 y versiones inferiores

  1. Añada los usuarios de Windows Active Directory a la base de datos.
    create user <user> password <password>
    Defina la contraseña de acuerdo con la política de contraseñas.
    Ejemplo:
    nzsql -c "create user ad_user1 password 'password';"
  2. Establezca el tipo de autenticación.
    SET AUTHENTICATION LDAP
    • Establezca la autenticación en AD con el SSL desactivado
      1. Ejecute el mandato.
        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'; "

        Donde cn hace referencia al nombre común y dc al componente de dominio.

      2. Como usuario ' root ', actualiza el archivo ' /etc/sssd/sssd.conf ' en el host.
        Es posible que tenga que cambiar manualmente las líneas en negrita si no están ya configuradas.
        =============================/etc/sssd/sssd.conf=============================
        
        [domain/external_ldap]
        
        ldap_tls_reqcert = never
        ldap_id_use_start_tls = False
        ldap_schema = AD
        ignore_group_members = True
        auth_provider = ldap
        id_provider = ldap
        ldap_rfc2307_fallback_to_local_users = True
        ldap_referrals = False
        ldap_id_mapping = True
        override_homedir = /home/%u
        ldap_network_timeout = 3
        ldap_opt_timeout = 60
        cache_credentials = True
        ldap_user_search_base = dc=nzdevelopment,dc=com
        entry_cache_group_timeout = 0
        entry_cache_user_timeout = 0
        ldap_search_timeout = 30
        entry_cache_timeout = 600
        ldap_default_bind_dn = cn=ad_user1,cn=Users,dc=nzdevelopment,dc=com
        ldap_uri = ldap://<AD_SERVER>:389
        #debug_level = 10
        case_sensitive = False
        ldap_group_name = CN
        ldap_user_name = sAMAccountName
        
        ldap_default_authtok_type = obfuscated_password
        ldap_default_authtok = AAAQANEC2d5xigH0d4w9phf5F9zD4PvXWvxwz61LYsoQq5BM/M7WslokdqbS6CnOyTzGp4XmzCC7owRfYq8sALPYypoAAQID
        [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]
        
      3. Como usuario root, reinicie el servicio sssd.

        Si tiene muchos grupos y/o usuarios en el servidor AD, puede mejorar el rendimiento del inicio de sesión añadiendo ' ldap_group_member = uniqueMember al archivo ' sssd.conf '.

        1. Añade ' ldap_group_member = uniqueMember a la sección ' [domain/external_ldap] ' en ' /etc/sssd/sssd.conf.
        ignore_group_members = True (add only if not present since this variable was already exist)
        ldap_group_member = uniqueMember
        2. Reinicie el servicio " sssd ":
        systemctl stop sssd ; rm -f /var/lib/sss/db/* ; systemctl start sssd

        3. Verifique la autenticación.

    • Establezca la autenticación en AD con el SSL activado
      Una CA de confianza debe emitir un certificado al servidor AD. Obtenga el archivo del certificado CA y guárdelo en una ubicación del sistema Netezza Performance Server. Para los sistemas de alta disponibilidad (HA) del sistema Netezza Performance Server, guarde el archivo en una ubicación de la unidad compartida, como un nuevo directorio bajo ' /nz. Ambos nodos del sistema Netezza Performance Server deben poder acceder al archivo de certificado utilizando el mismo nombre de ruta.
      1. Active la autenticación AD con SSL.
        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'; "
      2. Como usuario " root ", actualice manualmente el archivo " /etc/sssd/sssd.conf " en el host Netezza Performance Server.

        Puede conectarse al servidor AD a través de SSL o TSL. Es posible que tenga que cambiar manualmente las líneas en negrita si no están ya configuradas.

        1. Para conectarse al servidor AD a través de SSL, actualice los siguientes elementos.
          ===========================/etc/sssd/sssd.conf=============================
          [domain/external_ldap]
          
          ldap_tls_reqcert = demand
          ldap_id_use_start_tls = False
          ldap_tls_cacert = /nz/caCert/ca_cert.pem
          ldap_schema = AD
          ignore_group_members = True
          auth_provider = ldap
          id_provider = ldap
          ldap_rfc2307_fallback_to_local_users = True
          ldap_referrals = False
          ldap_id_mapping = True
          override_homedir = /home/%u
          ldap_network_timeout = 3
          ldap_opt_timeout = 60
          cache_credentials = True
          ldap_user_search_base = dc=nzdevelopment,dc=com
          entry_cache_group_timeout = 0
          entry_cache_user_timeout = 0
          ldap_search_timeout = 30
          entry_cache_timeout = 600
          ldap_default_bind_dn = cn=ad_user1,cn=Users,dc=nzdevelopment,dc=com
          ldap_uri = ldaps://<AD_SERVER>:636
          #debug_level = 10
          case_sensitive = False
          ldap_group_name = CN
          ldap_user_name = sAMAccountName
          
          ldap_default_authtok_type = obfuscated_password
          ldap_default_authtok = AAAQAEPSvINy7WB7Y5ULLHAgp9PNt9Ivdd5KZlp7DDzN7a+5wpRrq8dBoA4RonugOBXhxMA44TglOom7u4cqMBpFeoAAAQID
          [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]
          
        2. Para conectarse al servidor AD a través de TLS, utilice la siguiente plantilla.
          ===========================/etc/sssd/sssd.conf=============================
          [domain/external_ldap]
          
          ldap_tls_reqcert = demand
          ldap_id_use_start_tls = True
          ldap_tls_cacert = /nz/caCert/ca_cert.pem
          ldap_schema = AD
          ignore_group_members = True
          auth_provider = ldap
          id_provider = ldap
          ldap_rfc2307_fallback_to_local_users = True
          ldap_referrals = False
          ldap_id_mapping = True
          override_homedir = /home/%u
          ldap_network_timeout = 3
          ldap_opt_timeout = 60
          cache_credentials = True
          ldap_user_search_base = dc=nzdevelopment,dc=com
          entry_cache_group_timeout = 0
          entry_cache_user_timeout = 0
          ldap_search_timeout = 30
          entry_cache_timeout = 600
          ldap_default_bind_dn = cn=ad_user1,cn=Users,dc=nzdevelopment,dc=com
          ldap_uri = ldap://<AD_SERVER>:389
          #debug_level = 10
          case_sensitive = False
          ldap_group_name = CN
          ldap_user_name = sAMAccountName
          
          ldap_default_authtok_type = obfuscated_password
          ldap_default_authtok = AAAQAEPSvINy7WB7Y5ULLHAgp9PNt9Ivdd5KZlp7DDzN7a+5wpRrq8dBoA4RonugOBXhxMA44TglOom7u4cqMBpFeoAAAQID
          [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 Para el atributo ldap_tls_cacert de ' sssd.conf' , mencione el nombre del archivo del certificado CA con la ubicación correcta del directorio.

        2. El servidor Active Directory Directory que se menciona en el comando " SET AUTHENTICATION " debe coincidir con el nombre de host del archivo de certificado del servidor LDAP.

      3. Como usuario root, reinicie el servicio sssd.
        systemctl restart sssd

      Si tiene muchos grupos y/o usuarios en el servidor AD, puede mejorar el rendimiento del inicio de sesión añadiendo ' ldap_group_member = uniqueMember al archivo ' sssd.conf '.

      1. Añade ' ldap_group_member = uniqueMember a la sección ' [domain/external_ldap] ' en ' /etc/sssd/sssd.conf.
      ignore_group_members = True (add only if not present since this variable was already exist)
      ldap_group_member = uniqueMember
      2. Reinicie el servicio " sssd ".
      systemctl stop sssd ; rm -f /var/lib/sss/db/* ; systemctl start sssd

      3. Verifique la autenticación.

Para Netezza Performance Server 11.1.0.2 y superior

  1. Añada los usuarios de Windows Active Directory a la base de datos.
    create user <user> password <password>
    Defina la contraseña de acuerdo con la política de contraseñas.
    Ejemplo:
    nzsql -c "create user ad_user1 password 'password';"
  2. Establezca el tipo de autenticación:
    • Establezca la autenticación en AD con SSL/TLS desactivado
      1. Ejecute el mandato.
        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';"
      2. Ahora el archivo ' sssd.conf ' tiene el siguiente aspecto.
        [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]

        Si tiene muchos grupos y/o usuarios en el servidor AD, puede mejorar el rendimiento del inicio de sesión añadiendo ' ldap_group_member = uniqueMember al archivo ' sssd.conf '.

        1. Añade ' ldap_group_member = uniqueMember a la sección ' [domain/external_ldap] ' en ' /etc/sssd/sssd.conf.
        ignore_group_members = True (add only if not present since this variable was already exist)
        ldap_group_member = uniqueMember
        2. Reinicie el servicio " sssd ".
        systemctl stop sssd ; rm -f /var/lib/sss/db/* ; systemctl start sssd

        3. Verifique la autenticación.

    • Establezca la autenticación en AD con el SSL activado
      Una CA de confianza debe emitir un certificado al servidor AD. Obtenga el archivo del certificado CA y guárdelo en una ubicación del sistema Netezza Performance Server. Para los sistemas de alta disponibilidad (HA) del sistema Netezza Performance Server, guarde el archivo en una ubicación de la unidad compartida, como un nuevo directorio bajo ' /nz. Ambos nodos del sistema Netezza Performance Server deben poder acceder al archivo de certificado utilizando el mismo nombre de ruta.
      1. Active la autenticación AD con SSL.
        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';"
        CACERT es la vía de acceso del archivo de certificado de CA.
      2. Ahora el archivo ' sssd.conf ' tiene el siguiente aspecto.
        [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]

      Si tiene muchos grupos y/o usuarios en el servidor AD, puede mejorar el rendimiento del inicio de sesión añadiendo ' ldap_group_member = uniqueMember al archivo ' sssd.conf '.

      1. Añade ' ldap_group_member = uniqueMember a la sección ' [domain/external_ldap] ' en ' /etc/sssd/sssd.conf.
      ignore_group_members = True (add only if not present since this variable was already exist)
      ldap_group_member = uniqueMember
      2. Reinicie el servicio " sssd ".
      systemctl stop sssd ; rm -f /var/lib/sss/db/* ; systemctl start sssd

      3. Verifique la autenticación.

    • Establecer la autenticación en AD con el TLS ON

      Puede establecer una conexión segura con el servidor LDAP/AD utilizando TLS. Para ello, habilite el distintivo TLS con el archivo de certificado de CA.

      1. Active la autenticación AD con TLS.
        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: No se puede establecer tanto TLS como SSL en ' ON.
      2. Ahora el archivo ' sssd.conf ' tiene el siguiente aspecto.
        [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: El servidor Active Directory Directory mencionado en el comando " SET AUTHENTICATION " debe coincidir con el nombre de host del archivo de certificado del servidor LDAP.

      Si tiene muchos grupos y/o usuarios en el servidor AD, puede mejorar el rendimiento del inicio de sesión añadiendo ' ldap_group_member = uniqueMember al archivo ' sssd.conf '.

      1. Añade ' ldap_group_member = uniqueMember a la sección ' [domain/external_ldap] ' en ' /etc/sssd/sssd.conf.
      ignore_group_members = True (add only if not present since this variable was already exist)
      ldap_group_member = uniqueMember
      2. Reinicie el servicio " sssd ".
      systemctl stop sssd ; rm -f /var/lib/sss/db/* ; systemctl start sssd

      3. Verifique la autenticación.