8.8. Activation de l'authentification GSSAPI et application des indicateurs d'authentification Kerberos pour sudo sur un client IdM
La procédure suivante décrit l'activation de l'authentification GSSAPI (Generic Security Service Application Program Interface) sur un client IdM pour les commandes sudo
et sudo -i
via le module PAM pam_sss_gss.so
. En outre, seuls les utilisateurs qui se sont connectés avec une carte à puce s'authentifieront à ces commandes avec leur ticket Kerberos.
Vous pouvez utiliser cette procédure comme modèle pour configurer l'authentification GSSAPI avec SSSD pour d'autres services compatibles avec PAM, et restreindre davantage l'accès aux seuls utilisateurs dont le ticket Kerberos est associé à un indicateur d'authentification spécifique.
Conditions préalables
-
Vous avez créé une règle
sudo
pour un utilisateur IdM qui s'applique à un hôte IdM. Pour cet exemple, vous avez créé la règleidm_user_reboot
sudo
pour accorder au compteidm_user
la permission d'exécuter la commande/usr/sbin/reboot
sur l'hôteidmclient
. -
Vous avez configuré l'authentification par carte à puce pour l'hôte
idmclient
. -
Vous devez disposer des privilèges
root
pour modifier le fichier/etc/sssd/sssd.conf
et les fichiers PAM dans le répertoire/etc/pam.d/
.
Procédure
-
Ouvrez le fichier de configuration
/etc/sssd/sssd.conf
. Ajoutez les entrées suivantes à la section
[domain/<domain_name>]
les entrées suivantes.[domain/<domain_name>] pam_gssapi_services = sudo, sudo-i pam_gssapi_indicators_map = sudo:pkinit, sudo-i:pkinit
-
Enregistrez et fermez le fichier
/etc/sssd/sssd.conf
. Redémarrez le service SSSD pour charger les modifications de configuration.
[root@idmclient ~]# systemctl restart sssd
-
Ouvrez le fichier de configuration PAM de
/etc/pam.d/sudo
. Ajoutez l'entrée suivante comme première ligne de la section
auth
dans le fichier/etc/pam.d/sudo
.#%PAM-1.0 auth sufficient pam_sss_gss.so auth include system-auth account include system-auth password include system-auth session include system-auth
-
Enregistrez et fermez le fichier
/etc/pam.d/sudo
. -
Ouvrez le fichier de configuration PAM de
/etc/pam.d/sudo-i
. Ajoutez l'entrée suivante comme première ligne de la section
auth
dans le fichier/etc/pam.d/sudo-i
.#%PAM-1.0 auth sufficient pam_sss_gss.so auth include sudo account include sudo password include sudo session optional pam_keyinit.so force revoke session include sudo
-
Enregistrez et fermez le fichier
/etc/pam.d/sudo-i
.
Verification steps
Connectez-vous à l'hôte en tant que compte
idm_user
et authentifiez-vous à l'aide d'une carte à puce.[root@idmclient ~]# ssh -l idm_user@idm.example.com localhost PIN for smart_card
Vérifiez que vous disposez d'un ticket d'attribution de billets en tant qu'utilisateur de la carte à puce.
[idm_user@idmclient ~]$ klist Ticket cache: KEYRING:persistent:1358900015:krb_cache_TObtNMd Default principal: idm_user@IDM.EXAMPLE.COM Valid starting Expires Service principal 02/15/2021 16:29:48 02/16/2021 02:29:48 krbtgt/IDM.EXAMPLE.COM@IDM.EXAMPLE.COM renew until 02/22/2021 16:29:44
Affiche les règles
sudo
que le compteidm_user
est autorisé à appliquer.[idm_user@idmclient ~]$ sudo -l Matching Defaults entries for idmuser on idmclient: !visiblepw, always_set_home, match_group_by_gid, always_query_group_plugin, env_reset, env_keep="COLORS DISPLAY HOSTNAME HISTSIZE KDEDIR LS_COLORS", env_keep+="MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE", env_keep+="LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES", env_keep+="LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE", env_keep+="LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY KRB5CCNAME", secure_path=/sbin\:/bin\:/usr/sbin\:/usr/bin User idm_user may run the following commands on idmclient: (root) /usr/sbin/reboot
Redémarrez la machine à l'aide de
sudo
, sans spécifier de mot de passe.[idm_user@idmclient ~]$ sudo /usr/sbin/reboot
Ressources supplémentaires
- Options SSSD contrôlant l'authentification GSSAPI pour les services PAM
- L'entrée GSSAPI dans la liste terminologique IdM
- Configuration de la gestion des identités pour l'authentification par carte à puce
- Indicateurs d'authentification Kerberos
- Accorder un accès sudo à un utilisateur IdM sur un client IdM à l'aide de l'interface Web IdM
- Accorder un accès sudo à un utilisateur IdM sur un client IdM en utilisant le CLI.
-
pam_sss_gss (8)
page de manuel -
sssd.conf (5)
page de manuel