Resultados de la búsqueda :

×

Configuración del inicio de sesión único SSO NTLM/Kerberos para UBUNTU/RHEL/CentOS

La extensión SSO de Kerberos facilita la obtención de un ticket de concesión de tickets (TGT) de Kerberos desde el Active Directory de su organización u otro dominio de proveedor de identidad, lo que permite a los usuarios autenticarse en recursos como sitios web, aplicaciones y servidores de archivos.


Para UBUNTU:

  • Utilice el siguiente comando en su terminal para instalar las bibliotecas del cliente Kerberos.
  • sudo apt-get install krb5-user

Para RHEL/CentOS:

  • Utilice el siguiente comando en su terminal para instalar las bibliotecas del cliente Kerberos.
  • yum install krb5-workstation krb5-libs krb5-auth-dialog

Los siguientes pasos se utilizan para configurar los dominios de Active Directory en el archivo de configuración de Kerberos:

  • Abra y edite el archivo /etc/krb5.conf.
  • Agregue el siguiente fragmento de configuración al archivo krb5.conf.
  • EXAMPLE.ORG= { kdc = <AD DOMAIN CONTROLLER IP/DNS> :88 }

    NOTA: Vuelva a colocar la ANUNCIO CONTROLADOR DE DOMINIO IP/DNS con su dirección IP/DNS. Asegúrese EJEMPLO.ORG debe estar en mayúsculas.

    Vuelva a colocar la EJEMPLO.ORG con el nombre de dominio de Active Directory.

    Y asegúrese de que se pueda acceder al puerto 88 en el controlador de dominio AD desde este servidor.


  • Guarde el archivo.

Para UBUNTU:

  • Utilice el siguiente comando para instalar el módulo auth_kerb para Apache.
  • sudo apt-get install libapache2-mod-auth-kerb
  • Una vez instalado el módulo auth_kerb, debe habilitarse mediante el siguiente comando.
  • a2enmod auth_kerb
  • Después de habilitarlo, reinicie Apache para que surta efecto.

Para RHEL/CentOS:

  • Utilice el siguiente comando para instalar el módulo auth_kerb para Apache.
  • yum install mod_auth_kerb
  • Reinicie Apache para que surta efecto.
  • En el controlador de dominio AD, ejecute el siguiente comando para crear el archivo Keytab.
  • ktpass -princ HTTP/<Server Host Name>@EXAMPLE.ORG -pass PASSWORD -mapuser <svc@EXAMPLE.ORG> -Ptype KRB5_NT_PRINCIPAL -out "<PATH>\spn.keytab"

    NOTA: Asegúrese de que EXAMPLE.ORG esté en mayúsculas.


Nombre del host del servidor: Es el nombre de host del sitio alojado en el servidor.
Nombre del host del servidor: Es el nombre de host del sitio alojado en el servidor.
EJEMPLO.ORG: Es el nombre de dominio de Active Directory.
CONTRASEÑA: Es la contraseña de la cuenta de servicio utilizada anteriormente.
svc@EJEMPLO.ORG: Es una cuenta de servicio en Active Directory.
ruta de acceso: Ruta a una ubicación local que almacenará el archivo keytab.

    NOTA: El comando anterior crea un archivo keytab. Debe ubicarse en el servidor. El usuario que ejecuta Apache debe tener acceso total a este archivo. El usuario debe tener permiso para acceder al archivo keytab.


  • La cuenta de servicio tiene algunos requisitos previos:
    • La contraseña de la cuenta debe tener una contraseña configurada en no caducado.
    • Se debe confiar en la cuenta para la delegación.
  • Copia el tabla de claves archivo desde el controlador de dominio AD al servidor web alojado en Apache.

Para UBUNTU:

  • Edite el archivo /etc/apache2/sites-enabled/000-default.conf.
  • Agregue la siguiente sección en el directorio del sitio.
  • <Directory "/placeholder"> AuthType Kerberos KrbAuthRealms EXAMPLE.ORG KrbServiceName HTTP Krb5Keytab <PATH TO KEYTAB> KrbMethodNegotiate on KrbMethodK5Passwd on require valid-user </Directory>

Para RHEL/CentOS:

  • Edite el archivo de configuración auth_kerb.conf en la carpeta /etc/httpd/conf.d/.
  • Agregue la siguiente sección en el directorio del sitio.
  • LoadModule auth_kerb_module /usr/lib/apache2/modules/mod_auth_kerb.so <Directory "/placeholder"> AuthType Kerberos KrbAuthRealms EXAMPLE.ORG KrbServiceName HTTP Krb5Keytab <PATH TO KEYTAB> KrbMethodNegotiate on KrbMethodK5Passwd on require valid-user </Directory>

    NOTA: Asegúrese de que EXAMPLE.ORG esté en mayúsculas.


Los siguientes son los componentes de la configuración anterior:

EJEMPLO.ORG: Este es el dominio de Active Directory configurado en krb5.conf.
RUTA A LA TECLA: Ruta accesible a la tabla de claves en este servidor.
  • Después de esta configuración, es necesario reiniciar Apache para que los cambios surtan efecto.

Estos son los mensajes de error más comunes:

    gss_acquire_cred() failed: Unspecified GSS failure. Minor code may provide more information (, Permission denied).
  • Permisos de sistema de archivos incorrectos para /etc/krb5.keytab, es decir, no legibles para el usuario de Linux del servidor web.
  • Para cambiar los permisos del sistema de archivos, utilice $ chmod 400 nombre de archivo.
  • gss_acquire_cred() failed: Unspecified GSS failure. Minor code may provide more information (, Key table entry not found).
  • Falta la entidad de servicio (posiblemente HTTP/webserver.yourdomain.com@YOURDOMAIN.COM) en /etc/krb5.keytab.
  • Warning: received token seems to be NTLM, which isn't supported by the Kerberos module. Check your IE configuration. gss_accept_sec_context() failed: An unsupported mechanism was requested (, Unknown error)
  • El sitio web no está en la zona "Intranet local" en IE o IE está configurado incorrectamente, consulte La autenticación utiliza NTLM en lugar de Kerberos.
  • gss_accept_sec_context() failed: Unspecified GSS failure. Minor code may provide more information (, ).
  • Kvno o contraseña de máquina incorrectos en /etc/krb5.keytab → vuelva a crear la tabla de claves utilizando la información correcta.
  • Problema con el caché de tickets de Kerberos local en su estación de trabajo, use Kerbtray.exe para purgar el caché de tickets y abrir el sitio web en IE nuevamente.

ADFS_sso ×
¡Hola!

¿Necesitas ayuda? ¡Estamos aquí!

múltiples proveedores