J'essaie de joindre un serveur Ubuntu 16.04 à un domaine Windows 2003 R2 en suivant le guide Ubuntu SSSD et Active Directory . Mon administrateur dit que du côté du contrôleur, il fait partie du domaine. Mais SSSD ne semble pas pouvoir démarrer et net ads join
échoue.
Le a krb5.conf
été modifié par l'installateur et a maintenant ceci:
kyle@Server21:~$ cat /etc/krb5.conf
[libdefaults]
default_realm = COMAPNYNAME.LOCAL
Lors d'une installation précédente, je pensais qu'il y avait quelque chose d'autre [realms]
qui avait été demandé pendant l'installation, mais je ne me souviens pas de quoi et cela n'a pas été demandé cette fois-ci.
Mon smb.conf
:
[global]
## Browsing/Identification ###
# Change this to the workgroup/NT-domain name your Samba server will part of
workgroup = COMPANYNAME
client signing = yes
client use spnego = yes
kerberos method = secrets and keytab
realm = COMPANYNAME.LOCAL
security = ads
Mon sssd.conf
:
kyle@Server21:~$ sudo cat /etc/sssd/sssd.conf
[sssd]
services = nss, pam
config_file_version = 2
domains = COMPANYNAME.LOCAL
[domain/COMPANYNAME.LOCAL]
id_provider = ad
access_provider = ad
override_homedir = /home/%d/%u
Bien que le service SSSD ne semble pas pouvoir démarrer:
kyle@Server21:~$ systemctl status sssd.service
● sssd.service - System Security Services Daemon
Loaded: loaded (/lib/systemd/system/sssd.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Wed 2016-06-22 09:57:57 EDT; 37min ago
Process: 16027 ExecStart=/usr/sbin/sssd -D -f (code=exited, status=1/FAILURE)
Jun 22 09:57:55 Server21 sssd[16038]: Starting up
Jun 22 09:57:55 Server21 sssd[16041]: Starting up
Jun 22 09:57:55 Server21 sssd[16042]: Starting up
Jun 22 09:57:56 Server21 sssd[be[16043]: Starting up
Jun 22 09:57:57 Server21 sssd[be[16043]: Failed to read keytab [default]: No such file or directory
Jun 22 09:57:57 Server21 sssd[16031]: Exiting the SSSD. Could not restart critical service [COMPANYNAME.LOCAL].
Jun 22 09:57:57 Server21 systemd[1]: sssd.service: Control process exited, code=exited status=1
Jun 22 09:57:57 Server21 systemd[1]: Failed to start System Security Services Daemon.
Jun 22 09:57:57 Server21 systemd[1]: sssd.service: Unit entered failed state.
Jun 22 09:57:57 Server21 systemd[1]: sssd.service: Failed with result 'exit-code'.
Et puisque le guide dit que la propriété et les autorisations sont importantes:
kyle@Server21:~$ sudo ls -la /etc/sssd
total 12
drwx--x--x 2 sssd sssd 4096 Jun 21 14:34 .
drwxr-xr-x 103 root root 4096 Jun 22 10:21 ..
-rw------- 1 root root 172 Jun 21 14:22 sssd.conf
Mon nsswitch.conf
:
kyle@Server21:~$ cat /etc/nsswitch.conf
# /etc/nsswitch.conf
#
# Example configuration of GNU Name Service Switch functionality.
# If you have the `glibc-doc-reference' and `info' packages installed, try:
# `info libc "Name Service Switch"' for information about this file.
passwd: compat sss
group: compat sss
shadow: compat sss
gshadow: files
hosts: files dns
networks: files
protocols: db files
services: db files sss
ethers: db files
rpc: db files
netgroup: nis sss
sudoers: files sss
Mon hosts
:
kyle@Server21:~$ cat /etc/hosts
127.0.0.1 localhost
127.0.1.1 Server21.COMPANYNAME.LOCAL Server21
192.168.11.11 Server21.COMPANYNAME.LOCAL Server21
# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
Voici où commence le problème. Utilisation sudo
de l'exécution des kinit
résultats dans les éléments suivants:
kyle@Server21:~$ sudo kinit adminstrator
kinit: Client '[email protected]' not found in Kerberos database while getting initial credentials
Il s'authentifiera si je laisse tomber sudo
cependant:
kyle@Server21:~$ kinit -V administrator
Using default cache: /tmp/krb5cc_1000
Using principal: [email protected]
Password for [email protected]:
Authenticated to Kerberos v5
Et je peux vérifier le ticket:
kyle@Server21:~$ klist
Ticket cache: FILE:/tmp/krb5cc_1000
Default principal: [email protected]
Valid starting Expires Service principal
06/23/2016 13:41:55 06/23/2016 23:41:55 krbtgt/[email protected]
renew until 06/24/2016 13:41:48
Mais quand j'essaye de rejoindre le domaine:
kyle@Server21:~$ sudo net ads join -k
Failed to join domain: failed to lookup DC info for domain 'COMPANYNAME.LOCAL' over rpc: An internal error occurred.
J'avais déjà reçu le NT_STATUS_UNSUCCESSFUL
message mentionné dans le guide mais j'ai pu le résoudre en modifiant mon hosts
fichier.
Le guide explique comment vérifier que le compte d'ordinateur a été créé dans Active Directory. Et mon administrateur dit qu'il peut très bien voir la machine, donc je pense que ça va. La deuxième option de vérification ne me dit pas ce que je suis censé récupérer de cette commande mais je ne reçois rien donc je suppose que cela ne fonctionne pas.
Alors, où vais-je me tromper ici?
Éditer:
Je ne suis pas sûr de ce que j'ai fait, mais SSSD fonctionne maintenant.
la source
Réponses:
Le problème semble avoir été que mon administrateur avait créé une entrée sur le contrôleur de domaine pour ce serveur. Cela a apparemment provoqué un conflit qui a fait que Kerberos rencontre l'erreur suivante lors de la tentative de connexion:
Je ne suis pas sûr que cette erreur était entièrement exacte, car mon administrateur a déclaré que le serveur était joint au domaine de son côté et a
realmd
indiqué que j'étais également joint:Les étapes que j'ai suivies pour obtenir une jointure Kerberos réussie étaient les suivantes:
sudo dpkg-reconfigure krb5-config
[realms]
section dekrb5.conf
kinit
sudo net ads join -k
Résultat final:
la source
Je pense que vous manquez le keytab. Vous pouvez le créer via l'outil kadmin. tapez kadmin et dans l'invite, tapez help pour voir comment ajouter le keytab.
la source
/etc/krb5.keytab
existe déjà et contient des éléments chiffrés entrecoupés du nom du serveur et du nom de domaine. Dois-je en créer un supplémentaire?