Active Directory ドメインに参加する問題

Active Directory ドメインに参加する問題

Ubuntu 14.04サーバーをWindows 2003 R2ドメインに参加させようとしています。私の管理者は、コントローラ側のドメインの一部だと言いました。しかし、SSSDが起動しないようで、DNSアップデートも失敗します。

私はさまざまなガイドに従って動作しようとしましたが、エラーなしで正常に完了できませんでした。

Ubuntuサーバーガイド
千根
インターネット中毒者
Fedora SSSDガイド

Discoveryが正常に動作しているようです。

kyle@Server21:~$ realm discover COMPANYNAME.LOCAL
CompanyName.Local
  type: kerberos
  realm-name: COMPANYNAME.LOCAL
  domain-name: companyname.local
  configured: kerberos-member
  server-software: active-directory
  client-software: sssd
  required-package: sssd-tools
  required-package: sssd
  required-package: libnss-sss
  required-package: libpam-sss
  required-package: adcli
  required-package: samba-common-bin
  login-formats: %U
  login-policy: allow-realm-logins
companyname.local
  type: kerberos
  realm-name: COMPANYNAME.LOCAL
  domain-name: companyname.local
  configured: no

realmd私もドメインに参加したとしましょう。

kyle@Server21:~$ realm join COMPANYNAME.LOCAL
realm: Already joined to this domain

Kerberosは私の管理者認証を受けました。

kyle@Server21:~$ kinit -V administrator
Using default cache: /tmp/krb5cc_0
Using principal: [email protected]
Password for [email protected]:
Authenticated to Kerberos v5

ただし、サブスクリプション時間になると、DNSアップデートは失敗します。

kyle@Server21:~$ sudo net ads join -k
Using short domain name -- COMPANYNAME
Joined 'SERVER21' to dns domain 'CompanyName.Local'
No DNS domain configured for server21. Unable to perform DNS Update.
DNS update failed: NT_STATUS_INVALID_PARAMETER

SSSDの起動にまだ問題があります。

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'.

krb5.conf私にとって目立つ唯一の部分は次のとおりです[libdefaults]

kyle@Server21:~$ cat /etc/krb5.conf
[libdefaults]
        default_realm = COMAPNYNAME.LOCAL

以前のインストールでは他に何かがあると思いましたが、[realms]それが何であるか覚えていません。 Fedora ガイドでは、DNS ルックアップが機能しない場合にそこに何かを追加する方法について説明しますが、それが何をすべきかを正確に把握するのに十分な詳細情報を提供しません。

次の内容を修正しました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

私のもの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

Ubuntuガイドでは、所有権と権限が重要であると述べています。

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

Ubuntuガイドでは、このhostsファイルがDNSアップデートに問題を引き起こす可能性があると述べていますが、私はその例に正しく従ったと思います。

kyle@Server21:~$ cat /etc/hosts
127.0.0.1       localhost
127.0.1.1       Server21
192.168.XXX.XXX Server21 Server21.COMPANYNAME.LOCAL

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

それで、私はどこで間違っていますか?ドメインコントローラは、ドメインの一部であることを示します。 ApacheとOpenSSHがインストールされ、アクセスできます。しかし、このサーバーではさらに多くのことが行われているので、続行する前にすべてが正しく構成されていることを確認したいと思います。


編集する:

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

これで、getent次を返します。

kyle@Server21:~$ sudo getent hosts Server21
127.0.1.1       Server21.COMPANYNAME.LOCAL Server21 Server21
192.168.11.11   Server21.COMPANYNAME.LOCAL Server21 Server21

これでnet ads join他のエラーメッセージが表示されます。

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.

これまでに私が見つけた唯一のアドバイスは、ADサーバーがあることを確認し、resolv.confそのIPが唯一のものであることを確認することです。

kyle@Server21:~$ cat /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 192.168.XXX.XXX

コメントに返信:

kyle@Server21:~$ nslookup -type=SRV _ldap._tcp.companyname.local
Server:         192.168.XXX.XXX
Address:        192.168.XXX.XXX#53

_ldap._tcp.companyname.local      service = 0 100 389 companynamedc.companyname.local.

このプロセス中にSSSDが起動し、現在アクティブになっています。私はそれを修正するために何をしたかはよくわかりませんが。

答え1

問題は、管理者がドメインコントローラでこのサーバーのエントリを作成したようです。これは明らかにクラッシュし、Kerberosに参加しようとしたときに次のエラーが発生しました。

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.

管理者は、サーバーが自分のドメインに参加していてrealmd私も参加しているとマークしたため、このエラーが完全に正しいかどうかはわかりません。

kyle@Server21:~$ realm join COMPANYNAME.LOCAL
realm: Already joined to this domain

Kerberosに正常に参加するために実行した手順は次のとおりです。

  1. 管理者がドメインコントローラからエントリを削除しました。
  2. 次のコマンドを使用して Kerberos 構成を再実行します。sudo dpkg-reconfigure krb5-config
  3. [realms]次のセクションにドメインコントローラを明示的に追加するには、設定でオプションを選択します。krb5.conf
  4. 新しいレコードが生成されるようにホスト名を変更してください。
  5. 以下を使用して新しいチケットをインポートします。kinit
  6. 以下を使用してドメインに参加するsudo net ads join -k

最終結果:

kyle@SERV21:~$ sudo net ads join -k  
Using short domain name -- COMPANYNAME  
Joined 'SERV21' to dns domain 'CompanyName.Local'

答え2

Server21でこれを試してください:

realm leave -v -U [your admin username] COMPANYNAME.LOCAL

それから

realm join -v -U [your admin username] COMPANYNAME.LOCAL

関連情報