Como usar o realmd no Ubuntu 14.04 LTS para ingressar em um domínio do Active Directory?

9

Eu quero usar realmdpara ingressar em um domínio do Active Directory a partir do Ubuntu 14.04 LTS.

Para fazer isso Acabei de instalar realmde algumas dependências com este comando: aptitude install realmd sssd sssd-tools samba-common krb5-user.

Após a instalação, tentei ingressar no meu domínio com o comando realm --verbose join ad.example.com -U Administratorque solicitou a senha do administrador, mas eles causaram um erro com esta saída:

 * Resolving: _ldap._tcp.ad.example.com
 * Performing LDAP DSE lookup on: 10.7.0.2
 * Successfully discovered: ad.example.com
Password for Administrator: 
 * Unconditionally checking packages
 * Resolving required packages
 * Installing necessary packages: samba-common-bin
 * LANG=C LOGNAME=root /usr/bin/net -s /var/cache/realmd/realmd-smb-conf.QARGGX -U Administrator ads join ad.example.com
Enter Administrator's password:DNS update failed: NT_STATUS_INVALID_PARAMETER

Using short domain name -- AD-EXAMPLE
Joined 'REALMD-TEST' to dns domain 'ad.example.com'
No DNS domain configured for realmd-test. Unable to perform DNS Update.
 * LANG=C LOGNAME=root /usr/bin/net -s /var/cache/realmd/realmd-smb-conf.QARGGX -U Administrator ads keytab create
Enter Administrator's password:
realm: Couldn't join realm: Message did not receive a reply (timeout by message bus)

Após esses erros realmdnem funcionarem, qualquer comando emitido com realmdretornos:

realm: Couldn't connect to realm service: Error calling StartServiceByName for 
org.freedesktop.realmd: GDBus.Error:org.freedesktop.DBus.Error.Spawn.ChildSignaled: 
Process /usr/lib/dbus-1.0/dbus-daemon-launch-helper received signal 11

O arquivo /etc/sssd/sssd.confparece ter sido criado corretamente e /etc/nsswitch.confmodificado de acordo. Mas isso não é suficiente para ingressar no domínio com sucesso.

Vinícius Ferrão
fonte
Estou recebendo exatamente o mesmo problema no Debian Jessie. "Sinal 11" significa um segfault. Um segfault é sempre um bug no programa, portanto, espero que isso precise ser relatado como um bug e corrigido antes que ele possa funcionar.
Jeremy Visser

Respostas:

7

Descrevi todas as etapas necessárias para colocar isso em funcionamento. Há uma série de bugs relacionados à instalação dos pacotes. Todo o software subjacente funciona muito bem, mas existem algumas etapas a serem seguidas para que as coisas funcionem: http://funwithlinux.net/2014/04/join-ubuntu-14-04-to-active-directory-domain -using-realmd

Versão curta:

  1. Adicione o seguinte a /etc/realmd.conf

    [service]
    automatic-install = no

  2. Em seguida, instale os seguintes pacotes: samba-common-bin, samba-libs, sssd-tools, krb5-user, adcli

  3. Obtenha um ticket kerberos para seu usuário do AD.

  4. Ingressar no modo autônomo com o novo usuário principal (em uma única linha):

realm --verbose join localdomain.xx --user-principal=myubuntuserver/[email protected] --unattended

  1. O erro que você mencionou está especificamente relacionado a um bug conhecido (pelo menos no momento é conhecido pelo Fedora / RH) no sssd. sssd segfaults na opção, use_fully_qualified_names = Trueentão vá em frente e comente essa opção e reinicie o sssd.
Michael Gugino
fonte
6

Tentei a resposta aceita no 16.04.1 LTS e o comando falhou com algo sobre a senha. Executar sudo realm joinnormalmente daria o erro Necessary packages are not installed: sssd-tools sssd libnss-sss libpam-sss adcli, mesmo que todos estejam instalados. Depois de pesquisar por uma hora, encontrei esta solução alternativa , que diz que você deve adicionar --install=/ao comando join. Portanto, a sintaxe completa é:

sudo realm join -v -U administrator DOMAIN.COM --install=/
AlexDev
fonte