
Ubuntu日本語フォーラム

ログインしていません。
しばらくご無沙汰しておりました。表題のとおり、samba4でAD DCを作成したのですが、Windows 7 Professionalをドメインに参加させることができません。
Win7Proのコンパネ-システム-ドメインまたはワークグループの設定で、所属するグループをworkgroupからドメインに変更して、OKボタンを押したところ
ドメイン「samba4svr.com」のActiveDirectory ドメインコントローラー(DC)に接続できませんでした。
と言われ、「詳細」をクリックしますと、
注意: この情報はネットワーク管理者向けのものです。ネットワーク管理者でない場合は、ネットワーク管理者に連絡してこの情報を伝えてください。この情報はファイル C:\Windows\debug\dcdiag.txt に記録されています。
ドメイン "samba4svr.com" の Active Directory ドメイン コントローラー (AD DC) を検索するために使用される DNS の Service Location (SRV) リソース レコードを照会したときに、次のエラーが発生しました:
エラー: "DNS 名がありません。"
(エラー コード 0x0000232B RCODE_NAME_ERROR)
クエリは _ldap._tcp.dc._msdcs.samba4svr.com の SRV レコードに対するものでした
このエラーの一般的な原因として次のものがあります:
- ドメインの AD DC を検索するのに必要な DNS SRV レコードが DNS に登録されていません。これらのレコードは、AD DC がドメインに追加されると、自動的に DNS サーバーに登録されます。レコードは、設定された間隔で AD DC によって更新されます。このコンピューターは、次の IP アドレスを持つ DNS サーバーを使用するように構成されています:
192.168.1.1
192.168.1.2
となります。
ただし、Ubuntu 13.04サーバー側では、
seijun@ubuntu:~$ host -t SRV _ldap._tcp.samba4svr.com.
_ldap._tcp.samba4svr.com has SRV record 0 100 389 ubuntu.samba4svr.com.
seijun@ubuntu:~$ host -t SRV _ldap._tcp.dc._msdcs.samba4svr.com.
_ldap._tcp.dc._msdcs.samba4svr.com has SRV record 0 100 389 ubuntu.samba4svr.com.
seijun@ubuntu:~$ host -t SRV _kerberos._udp.samba4svr.com.
_kerberos._udp.samba4svr.com has SRV record 0 100 88 ubuntu.samba4svr.com.
seijun@ubuntu:~$ host -t A ubuntu.samba4svr.com.
ubuntu.samba4svr.com has address 192.168.1.2
です。samba4の構築に当たっては、
1.sambaの4.0.5をソースからインストールし、/usr/local/samba以下にインストールしました。
2.domain provisionでは、samba4標準のdns機能を使わず、bind9_flatを選択しました。
3.そのため、/etc/bind/named.confは次のようになっています。
// This is the primary configuration file for the BIND DNS server named.
//
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the
// structure of BIND configuration files in Debian, *BEFORE* you customize
// this configuration file.
//
// If you are just adding zones, please do that in /etc/bind/named.conf.local
include "/etc/bind/named.conf.options";
include "/etc/bind/named.conf.default-zones";
include "/etc/bind/named.conf.local";
include "/usr/local/samba/private/named.conf";
// include "/etc/bind/rndc.key";
この中で、/etc/bind/named.conf.optionsには
//Samba4
tkey-gssapi-keytab "/usr/local/samba/private/dns.keytab";
を追加しています。
いろいろ調べていましたら、Windows 2008R2には、SRVレコードを復旧するコマンドがあるようですが、samba4ではそのコマンドを使うわけには参りません。
あるサイトでは、tkey-gssapi-keytabの箇所がおかしいと、この現象が現れるようだ、との指摘がありましたが、はて?という感じです。
解決法についてご教示をお願いしたく存じます。
オフライン
自己レスですが、次のサイトも参考にしました。
http://d.hatena.ne.jp/torutk/20130301/p1
関係するところは、
Windowsのドメイン設定 Active Directoryアカウントと初回参加の落とし穴 Unix/Linux系の管理をしていると、Windows Server/Active Directoryの管理には戸惑うことが多いです。 落とし穴がいくつかあるので要注意です。といっても、Active Directoryの説明もわかりにくい(骨格情報が少なくツール操作方法が多い気がする)のですが。 Active Directoryにはユーザーアカウントとコンピュータアカウントがあり、Windowsドメインに参加するためには、ユーザーとコンピュータとともに認証する必要があります。つまり、あらかじめコンピュータがActive Directoryに登録されていることが前提となります。 ここで、初めてWindowsドメインに参加するコンピュータについては、参加にあたってそのコンピュータが登録されている必要があるが、初めて参加するのでActive Directoryにはまだそのコンピュータが登録されていないというジレンマに陥ります。先にSamba4でユーザーアカウント(一般権限)を作成し、そのアカウントでWindowsコンピュータをドメインに参加しようと設定するとエラーとなってしまいます。(ここで相当はまりました) このジレンマを解決するためか、Active Directoryについては特殊なルールがあります。調べた限り次のとおりです。 ドメイン管理者権限を持つアカウントでWindowsドメインに参加するとコンピュータアカウントを作成する権限があるので、Active Directoryに登録がないコンピュータをドメインに参加させることができる。 ユーザーアカウントがAuthenticatedUsersグループに含まれているなら、そのアカウントで10個までActive Directoryにコンピュータを登録することができる。 そこで、最初はドメイン定義で作成したAdministratorアカウントでWindowsコンピュータをドメインに参加させます。 その後は別途作成したユーザーでWindowsにログオンします。この手順であれば問題ないようです。 Windowsコンピュータをドメインに参加させる手順 まず、DNSサーバーの設定にActive DirectoryのDomain Controller(つまりSamba4稼働マシン)を追加します。 次に、ドメインに参加する設定をします。 [コントロールパネル]>[システム]>[システムの詳細設定]>[コンピュータ名]タブをクリックし、ドメイン設定の[変更]ボタンを押す。 [ドメイン]ラジオボタンをチェックし、ドメイン名に"COFFEE"を入力する。 ここで、ドメイン名にNetBIOSドメイン名である"COFFEE"を指定する場合と、FQDN(?)の"COFFEE.LOCAL"を指定する場合があるようです。環境によってはエラーになることがあるかもしれません(NetBIOSはルーター越えの場合あやしいかも)。 [ユーザー名]に"Administrator"、[パスワード]に"XXXxxx999"を入れる。コンピュータがドメインに登録されて問題が生じなければ、「COFFEEドメインにようこそ」ダイアログが表示されます。 再起動します。再起動後、ログオン画面にログオン先欄が増えているので、ドメインログオンするときはログオン先にドメイン名を選択します。
だと思いますが、どうもうまく行きません。
オフライン
自己レスです。/usr/local/samba/private/named.confは/usr/local/samba/private/dns/samba4svr.com.zoneを呼び出しているのですが、
このzoneファイルは次のようになっていて、
_ldap._tcp.dc._msdcs IN SRV 0 100 389 ubuntu
もちゃんとあります。
; -*- zone -*-
; generated by provision.pl
$ORIGIN samba4svr.com.
$TTL 1W
@ IN SOA ubuntu hostmaster (
2013071108 ; serial
2D ; refresh
4H ; retry
6W ; expiry
1W ) ; minimum
IN NS ubuntu
IN A 192.168.1.2
;
ubuntu IN A 192.168.1.2
win7pro01 IN A 192.168.1.100 ; Adding by Nomura
ubuntu-desktop IN A 192.168.1.30 ; Adding by Nomura
gc._msdcs IN A 192.168.1.2
9dd01026-329d-4285-873d-140737c89ca2._msdcs IN CNAME ubuntu
;
; global catalog servers
_gc._tcp IN SRV 0 100 3268 ubuntu
_gc._tcp.Default-First-Site-Name._sites IN SRV 0 100 3268 ubuntu
_ldap._tcp.gc._msdcs IN SRV 0 100 3268 ubuntu
_ldap._tcp.Default-First-Site-Name._sites.gc._msdcs IN SRV 0 100 3268 ubuntu
;
; ldap servers
_ldap._tcp IN SRV 0 100 389 ubuntu
_ldap._tcp.dc._msdcs IN SRV 0 100 389 ubuntu
_ldap._tcp.pdc._msdcs IN SRV 0 100 389 ubuntu
_ldap._tcp.85676906-f4e0-4595-bca1-9594b76e164c.domains._msdcs IN SRV 0 100 389 ubuntu
_ldap._tcp.Default-First-Site-Name._sites IN SRV 0 100 389 ubuntu
_ldap._tcp.Default-First-Site-Name._sites.dc._msdcs IN SRV 0 100 389 ubuntu
;
; krb5 servers
_kerberos._tcp IN SRV 0 100 88 ubuntu
_kerberos._tcp.dc._msdcs IN SRV 0 100 88 ubuntu
_kerberos._tcp.Default-First-Site-Name._sites IN SRV 0 100 88 ubuntu
_kerberos._tcp.Default-First-Site-Name._sites.dc._msdcs IN SRV 0 100 88 ubuntu
_kerberos._udp IN SRV 0 100 88 ubuntu
; MIT kpasswd likes to lookup this name on password change
_kerberos-master._tcp IN SRV 0 100 88 ubuntu
_kerberos-master._udp IN SRV 0 100 88 ubuntu
;
; kpasswd
_kpasswd._tcp IN SRV 0 100 464 ubuntu
_kpasswd._udp IN SRV 0 100 464 ubuntu
;
; heimdal 'find realm for host' hack
_kerberos IN TXT SAMBA4SVR.COM
オフライン
自己レスで恐縮ですが、何とかWin7ProをADドメインに参加させることができたようです。
http://www.matrix44.net/cms/notes/gnuli … untu-12-04
に、次のように書いてありました。
Step 5: Allow dynamic DNS updates
We want our clients to be able to update their DNS entries automatically. Edit /etc/bind/named.conf and append the following line:
tkey-gssapi-keytab "/var/lib/samba/private/dns.keytab";
Step 6: Configure Bind as a Forwarder
If you have another DNS Server (like a SOHO ROuter) on your Network which provides DNS Service to resolve external names (like www.google.com), you’ll need to configure Bind to use this DNS to resolve entries.
First we need to disable IPv6 in Bind by editing /etc/default/bind9 and appending:
OPTIONS="-4 -u bind"
Now modify /etc/bind/named.conf to include the following directives in the options
section:
allow-query { any; };
allow-recursion { any; };
forwarders { 192.168.99.254; };
dnssec-validation no;
ということで、/etc/bind/named.conf.optionsに次のように挿入しました。
allow-query { any; };
allow-recursion { any; };
forwarders { 192.168.1.1; };
//dnssec-validation no;
192.168.1.1はRouterのアドレス、最後の//はどこかの設定とぶつかってbind9が起動しないので、入れて見ました。
そしたら、Windows 7 Proffesinalのコマンド・プロンプトで、
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:¥Users¥Administrator.SAMBA4SVR>nslookup -type=All _ldap._tcp.dc._msdcs.samba4svr.com
サーバー: UnKnown
Address: 192.168.1.2
_ldap._tcp.dc._msdcs.samba4svr.com SRV service location:
priority = 0
weight = 100
port = 389
svr hostname = ubuntu.samba4svr.com
samba4svr.com nameserver = ubuntu.samba4svr.com
ubuntu.samba4svr.com internet address = 192.168.1.2
C:¥Users¥Administrator.SAMBA4SVR>nslookup -type=SRV _ldap._tcp.dc._msdcs.samba4svr.com
サーバー: UnKnown
Address: 192.168.1.2
_ldap._tcp.dc._msdcs.samba4svr.com SRV service location:
priority = 0
weight = 100
port = 389
svr hostname = ubuntu.samba4svr.com
samba4svr.com nameserver = ubuntu.samba4svr.com
ubuntu.samba4svr.com internet address = 192.168.1.2
となり、無事にWin7Proをsamba4で作成したActive Directory Domainに参加させることができたようです。
ただし、Win7ProからはDNSサーバーのコンピューター名が分からないようです。
また、どういうわけか、ネットワークに肝心のADDC(Samba4サーバー)のアイコンが出ないので、まだ未完成の状態です。
いろいろ調べてみます。
オフライン
samba3の設定を一知半解で援用して次のような/usr/local/samba/etc/smb.confを作り、bind, samba4を再起動しましたが肝心の共有フォルダーがsysvolだけの状態です。
# Global parameters
[global]
workgroup = SAMBA4SVR
realm = SAMBA4SVR.COM
netbios name = UBUNTU
server role = active directory domain controller
server services = s3fs, rpc, nbt, wrepl, ldap, cldap, kdc, drepl, winbind, ntp_signd, kcc, dnsupdate
idmap_ldb:use rfc2307 = yes
map to guest = bad user
guest account = nobody
[netlogon]
path = /usr/local/samba/var/locks/sysvol/samba4svr.com/scripts
read only = No
[sysvol]
# path = /usr/local/samba/var/locks/sysvol
path = /var/public
guest ok = yes
read only = No
[homes]
# guest ok = No
# read only = No
browsable = yes
writable = yes
valid users = %S
[public]
comment = Global Share for all users
path = /var/public
guest ok = yes
read only = No
[printers]
comment = All Printers
path = /var/spool/public
printable = yes
browseable = yes
public = yes
guest ok = yes
use client driver = yes
どうすれば(どのように修正すれば)良いのでしょうか。
オフライン
自己レスで恐縮ですが、共有名をNetBios名(ubuntu)ではなくDomain名(samba4svr)にしていたため、アクセスができなかったようです。
Windows Explorer で、\\samba4svrではなく、\\ubuntuとすると、問題なく共有ディレクトリに読み書きできました。
オフライン
日経Linuxの2013年7月号に、レプリケーションDCの作成と既存Active Directory Domainへの参加のさせ方が掲載されていましたが、小生のように一知半解のものが不用意にこの記事に書かれているコマンド(図3)を実行すると、Win7がドメインに参加できなくなり、再参加させようとすると「rpcサーバーが利用できません」と文句を言われます。恐らく、別サーバーに作ってみたSamba4が災いしていると思います。
このため、いろいろ試行錯誤しましたが、要するにmake uninstall でsamba4を削除するとともに、/usr/local/samba以下のディレクトリを完全に削除して最初から作り直すとうまく行きました。Ubuntuでは/usr/local/samba/privateのnamed.confとディレクトリdns以下は、bind9がアクセスできるように、bindグループにする必要があります。
よって、Samba4を業務で止揚するには、当然のことながら、Windows ServerのActive DirectoryとSamba3を熟知していることが必要になります。
別サーバーにKVMを使ってWindows 2008 Server R2を、また、生のSamba3とVirtualBoxでWindows 7 Professionalをそれぞれインストールすれば、勉強のため環境ができるのではないかと思っています。
なお、取り敢えずの/usr/local/samba/etc/smb.confは次のようになっており、ファイル共有、印刷とも問題なくできます。印刷にはcupsデーモンが動いている必要があります。
# Global parameters
[global]
workgroup = SAMBA4SVR
realm = SAMBA4SVR.COM
netbios name = UBUNTU
server role = active directory domain controller
server services = s3fs, rpc, nbt, wrepl, ldap, cldap, kdc, drepl, winbind, ntp_signd, kcc, dnsupdate
[netlogon]
path = /usr/local/samba/var/locks/sysvol/samba4svr.com/scripts
read only = No
[sysvol]
path = /usr/local/samba/var/locks/sysvol
read only = No
[public]
path = /var/public
guest ok = yes
read only = no
[printer]
printable = yes
printer name = EPSON-PX-101
cups options = raw
# printing = bsd
use client driver = yes
path = /var/spool/samba
hosts allow = 192.168.1.0/255.255.255.0
下図が上記の設定でSamba4を開いたものです。一知半解のため、外見はSamba3と変わりません。:(
※なお、BIND9_FLATFILEを選んで、/usr/local/samba/private/dnsの中にあるzoneファイルに他のコンピューターのAレコードを書き込めば、宅内DNSができるようです。
オフライン