Estoy tratando de unir un servidor Ubuntu 16.04 a un dominio de Windows 2003 R2 siguiendo la SSSD de Ubuntu y la Guía de Active Directory . Mi administrador dice que desde el lado del controlador, es parte del dominio. Pero parece que SSSD no puede iniciarse y net ads join
falla.
El krb5.conf
instalador lo modificó y ahora tiene esto:
kyle@Server21:~$ cat /etc/krb5.conf
[libdefaults]
default_realm = COMAPNYNAME.LOCAL
En una instalación anterior, pensé que había algo más [realms]
que se solicitó durante la instalación, pero no puedo recordar qué y esta vez no se solicitó.
Mi 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
Mi 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
Aunque parece que el servicio SSSD no puede comenzar:
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'.
Y como la guía dice que la propiedad y los permisos son 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
Mi 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
Mi 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
Aquí es donde comienza el problema. Utilizando sudo
para ejecutar kinit
resultados en lo siguiente:
kyle@Server21:~$ sudo kinit adminstrator
kinit: Client '[email protected]' not found in Kerberos database while getting initial credentials
Sin sudo
embargo, se autenticará si dejo caer el :
kyle@Server21:~$ kinit -V administrator
Using default cache: /tmp/krb5cc_1000
Using principal: [email protected]
Password for [email protected]:
Authenticated to Kerberos v5
Y puedo verificar el boleto:
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
Pero cuando intento unirme al dominio:
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.
Ya había recibido el NT_STATUS_UNSUCCESSFUL
mensaje mencionado en la guía, pero pude resolverlo modificando mi hosts
archivo.
La guía habla sobre verificar que la cuenta de la computadora se creó en el Active Directory. Y mi administrador dice que puede ver la máquina muy bien, así que creo que está bien. La segunda opción de verificación no me dice qué se supone que debo recuperar de ese comando, pero no recibo nada, así que supongo que no funciona.
Entonces, ¿dónde me estoy equivocando aquí?
Editar:
No estoy seguro de lo que hice, pero SSSD ahora se está ejecutando.
fuente
Respuestas:
El problema parece haber sido que mi administrador había creado una entrada en el controlador de dominio para este servidor. Aparentemente, esto causó un conflicto que hizo que Kerberos encontrara el siguiente error al intentar unirse:
No estoy seguro de que este error haya sido del todo exacto, ya que mi administrador dijo que el servidor se unió al dominio de su parte e
realmd
indicó que también me uní:Los pasos que seguí para obtener una unión Kerberos exitosa fueron los siguientes:
sudo dpkg-reconfigure krb5-config
[realms]
sección dekrb5.conf
kinit
sudo net ads join -k
Resultado final:
fuente
Creo que te falta la pestaña. Puede crearlo a través de la herramienta kadmin. escriba kadmin y en el indicador escriba ayuda para ver cómo agregar la tabla de claves.
fuente
/etc/krb5.keytab
ya existe y tiene algunas cosas cifradas intercaladas con el nombre del servidor y el nombre de dominio. ¿Necesito crear uno adicional?