Il fallait entrer une machine Ubuntu dans un domaine Windows. À ces fins, Samba et Winbind sont généralement utilisés. Mais une alternative est possible avec sssd, un bref guide ci-dessous.
Par exemple, nous utiliserons:
Domaine = contoso.com
Contrôleur de domaine = dc.contoso.com
Lancez le terminal Ubuntu:
1. Passez à root
sudo -i
2. Installez les packages nécessaires
apt install sssd heimdal-clients msktutil
3. Nous éditons /etc/krb5.conf, les tabulations sont utilisées comme des retraits
[libdefaults] default_realm = CONTOSO.COM [realms] CONTOSO.COM = { kdc = DC admin_server = dc.contoso.com default_domain = contoso.com } [login] krb4_convert = true krb4_get_tickets = false [domain_realm] .contoso.com = CONTOSO.COM contoso.com = CONTOSO.COM
4. Modifiez le fichier / etc / hosts, spécifiez le FQDN pour cet hôte:
127.0.0.1 localhost 127.0.1.1 <hostname>.contoso.com <hostname>
5. Nous essayons d'obtenir un ticket Kerberos au nom de l'administrateur de domaine:
root@ubuntu:~
Nous vérifions:
root@ubuntu:~
Si le ticket est reçu avec succès, maintenant les principaux Kerberos peuvent être générés pour cet hôte, le registre est important:
msktutil -c -b 'CN=YourComputersOU' -s HOST/HOSTNAME.contoso.com -k /etc/sssd/HOSTNAME.keytab --computer-name HOSTNAME --upn HOSTNAME$ --server dc.contoso.com —user-creds-only msktutil -c -b 'CN=YourComputersOU' -s HOST/HOSTNAME -k /etc/sssd/HOSTNAME.keytab --computer-name HOSTNAME --upn HOSTNAME$ --server dc.contoso.com --user-creds-only
Maintenant, notre hôte devrait apparaître dans la liste des ordinateurs du répertoire. Si oui, supprimez le ticket Kerberos reçu:
kdestroy
6. Créez le fichier /etc/sssd/sssd.conf avec le contenu suivant:
[sssd] services = nss, pam config_file_version = 2 domains = contoso.com [nss] entry_negative_timeout = 0 debug_level = 3 [pam] debug_level = 3 [domain/contoso.com] debug_level = 3 ad_domain = contoso.com ad_server = dc.contoso.com enumerate = false id_provider = ad auth_provider = ad chpass_provider = ad access_provider = simple simple_allow_groups = users
La description des paramètres du fichier de configuration sssd peut être trouvée
iciDéfinissez les autorisations pour le fichier sssd.conf:
chmod 600 /etc/sssd/sssd.conf
Redémarrez le service SSSD
service sssd restart
7. Modification des paramètres PAM
Mauvaise solution:éditez le fichier /etc/pam.d/common-session, après la ligne
session required pam_unix.so
ajouter une ligne
session required pam_mkhomedir.so skel=/etc/skel umask=0022
Bonne solution:remplacer les paramètres via les paramètres du système PAM, appeler
pam-auth-update
et
vérifiez les éléments sss auth et
makehomdir . Cela ajoutera automatiquement
la ligne ci-dessus en session commune et elle ne sera pas écrasée lors de la mise à jour du système.
Nous pouvons maintenant nous connecter sur la machine aux utilisateurs de domaine autorisés à se connecter.
PS: Vous pouvez donner le droit d'utiliser des groupes de domaines sudo. À l'aide de visudo, modifiez le fichier / etc / sudoers, ou mieux, comme le
recommandent maxzhurkin et
iluvar , créez un nouveau fichier dans /etc/sudoers.d/ et modifiez-le
visudo -f /etc/sudoers.d/_
ajoutez le groupe requis - par exemple, les administrateurs de domaine (s'il y a des espaces dans le nom du groupe - ils doivent être échappés):
%Domain\ Admins ALL=(ALL) ALL
PSS: Merci
gotch pour l'info sur realmd. C'est très pratique - si des paramètres spécifiques ne sont pas nécessaires, alors entrer une machine dans un domaine prend en fait trois commandes:
1. Installez les packages nécessaires:
sudo apt install realmd samba-common-bin samba-libs sssd-tools krb5-user adcli
2. Vérifiez que notre domaine est visible sur le réseau:
realm discover contoso.com
3. Entrez la machine dans le domaine:
sudo realm --verbose join contoso.com -U YourDomainAdmin --install=/
4. Modification des paramètres PAM
sudo pam-auth-update
Un avantage supplémentaire de cette option est l'autorisation de bout en bout sur les ressources de fichiers du domaine.
Afin de ne pas spécifier de domaine en plus de la connexion, vous pouvez ajouter un suffixe par défaut. Dans le fichier /etc/sssd/sssd.conf, dans le bloc [sssd], ajoutez la ligne:
default_domain_suffix = contoso.com