CentOS 7をActive Directoryのドメインに参加させる

自宅にSamba4を用いたDomain Controllerを構築したので、それにCentOS 7を参加させてみる事にする。
まずは参加させるCentOS 7側で、以下のコマンドを実行し必要になるパッケージをインストールする。

1.必要パッケージの導入

yum -y install realmd sssd oddjob oddjob-mkhomedir adcli samba-common

2.AD参加設定

次に、参照するDNSサーバをDCのアドレスに変更する。

nmcli c modify インターフェイス名 ipv4.dns DCのアドレス
nmcli c down インターフェイス名; nmcli c up インターフェイス名

以下のコマンドを実行しActive Directoryに関する情報をDCから取得出来る事を確認する。

realm discover レルム名
[root@BS-PUB-PRODUCT ~]# realm discover BLACKNON.LOCAL
blacknon.local
  type: kerberos
  realm-name: BLACKNON.LOCAL
  domain-name: blacknon.local
  configured: kerberos-member
  server-software: active-directory
  client-software: winbind
  required-package: oddjob-mkhomedir
  required-package: oddjob
  required-package: samba-winbind-clients
  required-package: samba-winbind
  required-package: samba-common
  login-formats: %U
  login-policy: allow-any-login

無事、Active Directoryの情報が取得出来ることを確認したら、以下のコマンドでActive Directoryへのログイン設定を行う。

authconfig-tui

ユーザー情報:  
[*] Winbindを使用  
認証:  
[*] Winbind認証を使用

セキュリティモデル: ads  
ドメイン: ドメイン名  
ドメインコントローラー: DCサーバ名  
ADSレルム(Realm): レルム名  
テンプレートシェル: /bin/bash

設定後、「OK」を選択する。
この時点では、まだドメイン参加は行わない。以下のコマンドを実行し、一部設定を変更する。

authconfig --enablemkhomedir --update
sed -i '/winbind use default domain/s/false/true/g' /etc/samba/smb.conf
systemctl restart winbind

後は、以下のコマンドでドメインへの参加を行う。

net ads join -U Administrator
[root@BS-PUB-PRODUCT ~]# net ads join -U Administrator
Enter Administrator's password:
Using short domain name -- BLACKNON
Joined 'BS-PUB-PRODUCT' to dns domain 'blacknon.local'
No DNS domain configured for bs-pub-product. Unable to perform DNS Update.
DNS update failed: NT_STATUS_INVALID_PARAMETER

これで、無事ドメイン参加することができた。
ログイン情報は、以下のコマンドで確認できる。

net ads info
LDAP server: XXX.XXX.XXX.XXX
LDAP server name: bs-pub-domainc.blacknon.local
Realm: BLACKNON.LOCAL
Bind Path: dc=BLACKNON,dc=LOCAL
LDAP port: 389
Server time: 日, 17  1月 2016 21:16:04 JST
KDC server: XXX.XXX.XXX.XXX
Server time offset: 0

3.ADユーザへの切り替え

さて、それではADユーザに切り替えてみよう。
ADユーザへの切り替えは、以下のコマンドで行える。

su - レルム名\\ユーザ名

これで無事、CentOS 7でドメイン連携が出来るようになった。