windowsServerで構築しているActiveDirectoryDomainには当然の如くドメインコントローラ(ADDC)が存在する。
っで、このドメインコントローラは別に一台だけでなく、フォールトトレラントとして同一ドメインに複数台合っても構わない。
ここはこの同一ドメイン[cerius2.local]にフォールトトレラントを目的としてsamba4ADをwindowsADに追加してみる。
2014y04m20d_193522057.png
参考先
https://wiki.samba.org/index.php/Join_a_domain_as_a_DC

名前IPFQDN備考
ad192.168.0.33ad.cerius2.localwindows2012R2による既存ADサーバ
c4192.168.0.26c4.cerius2.locallinux samba4ADマシン。追加のADDCになる

*windowsADのサブドメインとして、新たなドメインをsamba4ADで作って信頼関係を結ぶとかではない。

Linuxマシン構築

samba4による追加のドメインコントローラを作る。素体はCentOS6で用意して、開発環境("Development tools")も入れます。
ホスト名は前述のとおりc4で、FQDNはc4.cerius2.localとします。その他の要素は下記のようにした。

[root@c4 ~]# cat /etc/hosts
127.0.0.1   localhost
192.168.0.26 c4.cerius2.local c4
192.168.0.33 ad.cerius2.local ad
[root@c4 ~]# cat /etc/resolv.conf
search cerius2.local
nameserver 192.168.0.33
[root@c4 ~]# cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=c4.cerius2.local
GATEWAY=192.168.0.1
[root@c4 ~]#
[root@c4 ~]# ping ad
PING ad.cerius2.local (192.168.0.33) 56(84) bytes of data.
64 bytes from ad.cerius2.local (192.168.0.33): icmp_seq=1 ttl=128 time=1.56 ms
64 bytes from ad.cerius2.local (192.168.0.33): icmp_seq=2 ttl=128 time=0.786 ms
^C
[root@c4 ~]#

samba4の構築

ほぼsamba4に記載の通りにコンパイルしてインストール。

[root@c4 ~]# mkdir /opt/src; cd /opt/src
[root@c4 src]# wget http://ftp.samba.org/pub/samba/stable/samba-4.1.6.tar.gz
[root@c4 src]# gzip -cd samba-4.1.6.tar.gz | tar xf -
[root@c4 src]# cd samba-4.1.6
[root@c4 samba-4.1.6]# export PATH=/bin:/usr/bin:/usr/sbin:/sbin
[root@c4 samba-4.1.6]# ./configure  --prefix=/opt/samba --enable-selftest --with-utmp --with-ads
[root@c4 samba-4.1.6]# make ; make quicktest
(中略)
samba child process 8263 exited with value 0
 
ALL OK (2061 tests in 310 testsuites)
 
A summary with detailed information can be found in:
  ./st/summary
'testonly' finished successfully (1h29m47.672s)
[root@c4 samba-4.1.6]#
[root@c4 samba-4.1.6]# make install
[root@c4 samba-4.1.6]# cd /lib64
[root@c4 lib64]# 
[root@c4 lib64]# ln -sv /opt/samba/lib/libnss_* .
`./libnss_winbind.so' -> `/opt/samba/lib/libnss_winbind.so'
`./libnss_winbind.so.2' -> `/opt/samba/lib/libnss_winbind.so.2'
`./libnss_wins.so' -> `/opt/samba/lib/libnss_wins.so'
`./libnss_wins.so.2' -> `/opt/samba/lib/libnss_wins.so.2'
[root@c4 lib64]#
[root@c4 lib64]# cd /lib64/security
[root@c4 security]#
[root@c4 security]# ln -sv /opt/samba/lib/security/* .
`./pam_smbpass.so' -> `/opt/samba/lib/security/pam_smbpass.so'
`./pam_winbind.so' -> `/opt/samba/lib/security/pam_winbind.so'
[root@c4 security]#

yum updateでこれらライブラリが上書きインストールされるのを防ぐためにyum.confを調整する。

[root@c4 ~]# vi /etc/yum.conf
[main]
exclude=samba4-winbind-clients samba-winbind-clients samba-common samba4-common
[root@c4 ~]#

既存windowsADドメインへADDCとして参加するための準備

kerberosを調整

[root@c4 ~]# vi /etc/krb5.conf
[libdefaults]
 dns_lookup_realm = true
 dns_lookup_kdc = true
 default_realm = CERIUS2.LOCAL
[root@c4 ~]#

kinitを使ってkrb5.confの設定が有効かを調べる。dns_lookup_*の設定からdnsにkerberosサーバのありか、つまりはwindowsADDCのありかが示されているので、同時にDNSのテストともなる。

[root@c4 ~]# kinit administrator
Password for administrator@CERIUS2.LOCAL:
Warning: Your password will expire in 30 hours on Wed Apr 16 06:12:59 2014
[root@c4 ~]#
[root@c4 ~]# klist
Ticket cache: FILE:/tmp/krb5cc_0
Default principal: administrator@CERIUS2.LOCAL
 
Valid starting     Expires            Service principal
04/14/14 23:22:24  04/15/14 09:22:30  krbtgt/CERIUS2.LOCAL@CERIUS2.LOCAL
        renew until 04/15/14 23:22:24
[root@c4 ~]#

と問題なく既存windowsADサーバとお話ができた。

ドメインコントローラとして既存ADへ参加

ドメインコントローラの追加は、同時にDNS機能のドメインへの追加ともなる。DNSは独立しているから既存ドメインにDNSがあるから追加は不要かと思われるが、そうではないみたい。
2014y04m20d_194045121.png
っで、このc4にbindもインストールすべきなのかも知れないが、面倒なのでsamba4に内蔵しているDNS機能を使う。

[root@c4 ~]# /opt/samba/bin/samba-tool domain join cerius2.local DC -Uadministrator \
--realm=cerius2.local --dns-backend=SAMBA_INTERNAL
[root@c4 ~]#

としてsamba4ADマシンc4を既存のwindowsADドメインに追加しようとしたのだが、、、、失敗。

[root@c4 ~]# /opt/samba/bin/samba-tool domain join cerius2.local DC -Uadministrator \
--realm=cerius2.local --dns-backend=SAMBA_INTERNAL
 
Finding a writeable DC for domain 'cerius2.local'
Found DC ad.cerius2.local
Password for [WORKGROUP\administrator]:
workgroup is CERIUS2
realm is cerius2.local
checking sAMAccountName
Adding CN=C4,OU=Domain Controllers,DC=cerius2,DC=local
Adding CN=C4,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=cerius2,DC=local
Adding CN=NTDS Settings,CN=C4,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=cerius2,DC=local
Join failed - cleaning up
checking sAMAccountName
Deleted CN=C4,OU=Domain Controllers,DC=cerius2,DC=local
Deleted CN=C4,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=cerius2,DC=local
ERROR(<type 'exceptions.AttributeError'>): uncaught exception - 'drsuapi.DsBindInfoFallBack' 
object has no attribute 'supported_extensions'
(後略)
[root@c4 ~]#

とエラーが表示されて、samba4ADマシンc4を既存windowsADドメインに参加できなかった。。。
もしやと思い、ドメイン機能レベルを2008、2008R2、2012、2012R2らに代えても参加できなかった。
一応gitで最新ビルド(4.2.0pre1-DEVELOPERBUILD)を取得して試してみたけど、同じくエラーで止まってしまった。
どうもsamba4はwindows2012R2には対応していない様子。
一応報告もある https://lists.samba.org/archive/samba/2013-November/176822.html

このままでは進まないので、代わりにwindows2008R2で作成したwindowsADドメインにsamba4ADマシンc4を参加させてみた。
結果はドメイン機能レベルに関わらずすべてで成功した。
2014y04m15d_225137557.png


トップ   編集 添付 複製 名前変更     ヘルプ   最終更新のRSS
Last-modified: 2014-04-20 (日) 19:53:22 (1215d)