AUTHSELECT-MIGRATIO(7)

NAME
authselect-migration - Guía de migración de authconfig a authselect.

DESCRIPCIÓN

En esta página se explican las diferencias más importantes entre authconfig (la herramienta anterior de configuración de fuentes de identidad y autenticación) y authconfig, que reemplaza a la primera. También se explican las acciones a realizar para migrar de una a otra.

DIFERENCIAS PRINCIPALES

Authselect usa un enfoque completamente diferente al de authconfig.

Authconfig hace todo lo posible para mantener los cambios que el usuario pueda haber realizado manualmente sobre los archivos que genera. Además de los archivos de configuración de PAM y nsswitch.conf (para los módulos de autenticación y las fuentes de identidad) también genera archivos simples para otros servicios, como LDAP y Kerberos.

Authselect no hace nada de eso. Sólo genera los archivos de configuración de PAM y nsswitch.conf, y prohíbe cambios manuales. Proporciona un conjunto de archivos llamados perfiles. Cada perfil describe cómo debe quedar la configuración final y permite cierta variación mediante la activación de características opcionales. En caso necesario, el administrado puede crear un nuevo perfil y usarlo con authselect. Consulte authselect-profiles(5) para más información sobre los perfiles.

Puede parecer una desventaja, pero es justo lo contrario. Authconfig es una herramienta antigua y las aplicaciones que proporcionan los servicios han cambiado mucho con los años. Normalmente ya no hay necesidad de tener varios módulos de autenticación en PAM y nsswitch.conf, pues SSSD cubre por sí solo la mayoría de casos, así que no hace falta añadirlos o quitarlos individualmente. Y hay herramientas mejores para generar la configuración de servicios que permiten la unión a dominios remotos, como realm. Además los perfiles incluidos dan una configuración completa y determinista que se puede probar y es menos propensa a errores. También es más fácil distribuir esa configuración entre varios sistemas.

Probablemente el cambio más controvertido sea que authselect sólo incluye perfiles para sssd y winbind. Con ellos se cubren todas las necesidades modernas, desde los usuarios locales y dominios LDAP antiguos hasta configuraciones complejas con servidores IPA o Active Directory. Los perfiles ya no son incluyen soporte para nss-pam-ldapd y se recomienda a los usuarios cambiar a sssd.

UNIÓN A DOMINIOS REMOTOS

Puede usar ipa-client-install`o `realm para unirse a un dominio IPA, y realm para unirse a un dominio Active Directory. Estas herramientas se asegurarán de que esté seleccionado el perfil authselect correcto y de que todos los servicios y demonios estén bien configurados.

CONVERSIÓN DE GUIONES

Si usa ipa-client-install o realm para unirse a un dominio, puede eliminar las llamadas a authconfig de sus guiones. Si no cuenta con esta opción tendrá que cambiar cada llamada a authconfig por la equivalente a authselect para elegir un perfil con las características que necesite. Después tendrá que escribir además los archivos de configuración de los respectivos servicios.

Table 1. Transformación de opciones de authconfig en perfiles de authselect
Opciones de authconfig | Perfil authselect
--enableldap --enableldapauth | sssd
--enablesssd --enablesssdauth | sssd
--enablekrb5 | sssd
--enablewinbind --enablewinbindauth | winbind
--enablenis | nis

Table 2. Transformación de opciones de authconfig en características de perfiles de authselect
Authconfig options | Authselect profile feature
--enablesmartcard | with-smartcard
--enablefingerprint | with-fingerprint
--enablemkhomedir | with-mkhomedir
--enablefaillock | with-faillock
--enablepamaccess | with-pamaccess
--enablewinbindkrb5 | with-krb5
--enableshadow | none
--passalgo | none

    Note

    Authconfig options --enableshadow and --passalgo=sha512 were often used to make sure that passwords are stored in /etc/shadow using sha512 algorithm. The authselect profiles now use the sha512 hashing method and it cannot be changed through an option (only by creating a custom profile). You can just omit these options.

Ejemplos.

    authconfig --enableldap --enableldapauth --enablefaillock --updateall
    authselect select sssd with-faillock
    authconfig --enablesssd --enablesssdauth --enablesmartcard --smartcardmodule=sssd --updateall
    authselect select sssd with-smartcard
    authconfig --enablepamaccess --updateall
    authselect select sssd with-pamaccess
    authconfig --enablewinbind --enablewinbindauth --winbindjoin=Administrador --updateall
    realm join -U Administrador --client-software=winbind DOMINIOWINBIND

ARCHIVOS DE CONFIGURACIÓN

Esta sección contiene fragmentos para una mínima configuración de varios servicios.

  LDAP

Incluso si no se usa LDAP directamente mediante pam_ldap y nss_ldap, sigue siendo útil configurar ldap.conf para openldap-libs e indirectamente otras herramientas como ldapsearch.

/etc/openldap/ldap.conf.

    # El dn base predeterminado
    BASE   dc=example,dc=com
    # El servidor LDAP predeterminado
    URI    ldap://ldap.example.com ldap://ldap-master.example.com:666

  KERBEROS

Si usa Kerberos, debe configurar el entorno predeterminado para que funcionen krb5-libs y por tanto herramientas como kinit.

/etc/krb5.conf.

    [libdefaults]
     default_realm = MIENTORNO
    [realms]
     MIENTORNO = {
      kdc = kdc.myrealm.org
     }
    [domain_realm]
     myrealm.org = MIENTORNO
     .myrealm.org = MIENTORNO

  SSSD

Authselect recomienda usar SSSD siempre que sea posible. Hay muchas opciones de configuración, consulte sssd.conf(5). Esta es una configuración mínima que crea un dominio LDAP llamado dominio. El servidor LDAP se encuentra automáticamente mediante DNS.

/etc/sssd/sssd.conf.

    [sssd]
    config_file_version = 2
    domains = dominio
    [domain/dominio]
    id_provider = ldap
    ldap_uri = _srv_
    dns_discovery_domain = mientorno

Y este es un fragmento para el mismo dominio pero con autenticación mediante Kerberos. El servidor KDC se encuentra mediante DNS.

/etc/sssd/sssd.conf.

    [sssd]
    config_file_version = 2
    domains = dominio
    [domain/dominio]
    id_provider = ldap
    auth_provider = krb5
    ldap_uri = _srv_
    krb5_server = _srv_
    krb5_realm = MIENTORNO
    dns_discovery_domain = mientorno

Si quiere configurar SSSD para usar un dominio IPA o Active Directory, use la herramienta realm. Hará la configuración inicial de creación de claves Kerberos y configuración básica de SSSD. Después puede ajustarla editando /etc/sssd/sssd.conf.

  WINBIND

Si quiere configurar su equipo para usar Winbind, utilice realm. Hará la configuración inicial de creación de claves Kerberos y ejecutará adcli para unirse al dominio. También modifica smb.conf. Después puede ajustar la configuración editando /etc/samba/smb.conf.

  NIS

Hay que modificar varios archivos para que funcione la autenticación NIS. Primero debe establecer el dominio NIS y opcionalmente el servidor NIS en /etc/yp.conf.

/etc/yp.conf.

    domain midominio broadcast
    # o, si indica el servidor:
    # domain midominio server miservidor

El servidor NIS también debe indicarse en la configuración de red.

/etc/sysconfig/network.

    NISDOMAIN=midominio

Ahora puede establecer el nombre de dominio desde la línea de órdenes, sin necesidad de reiniciar el sistema. Además puede ser necesario activar NIS en selinux.

    $ domainname midominio
    $ setsebool -P allow_ypbind 1

  CALIDAD DE CONTRASEÑAS

Authselect activa el módulo pam_pwquality para imponer restricciones de calidad en las contraseñas. El módulo sólo se habilita para los usuarios locales. Los usuarios remotos deberán atenerse a la política de claves impuesta por el servidor remoto correspondiente.

El módulo pam_pwquality se configura en /etc/security/pwquality.conf. Consulte pam_pwquality(8) para ver las opciones disponibles y sus valores predeterminados.

INICIO DE SERVICIOS

Según la configuración, tendrá que iniciar manualmente los servicios necesarios mediante systemd.

    • SSSD

        systemctl enable sssd.service ; systemctl start sssd.service

    • Winbind

        systemctl enable winbind.service ; systemctl start winbind.service

    • NIS

        systemctl enable rpcbind.service ; systemctl start rpcbind.service
        systemctl enable ypbind.service ; systemctl start ypbind.service

    • Si activa la característica mkhomedir

        systemctl enable oddjobd.service ; systemctl start oddjobd.service

HERRAMIENTAS AUTHCONFIG

Authconfig incluía una herramienta llamada cacertdir_rehash. Si la usa, cambie al comando nativo de openssl: openssl rehash <directorio>, que da el mismo servicio.

VÉASE TAMBIÉN

authselect(8), authselect-profiles(5), realm(8), ipa-client-install(1), sssd.conf(5), smb.conf(5), ldap.conf(5), krb5.conf(5)