Jessieでsambaを使い、既に稼働しているActive Directory環境でメンバーサーバを作成する手順です。以下の手順ではwinbindも使いませんし、Kerberosの設定もありません(自動生成されたkrb5.confをコピーするだけ)。
ささっとsambaを使ったファイルサーバを構築したい時に参考にしてもらえると嬉しいです。
環境
・host名:zoid
・Debian GNU 8.0 Jessie
・Kernel 3.16.0-4-686-pae(64bit版でも手順は同じ)
・samba 4.2.10+dfsg-0+deb8u3
・Windows Server 2008 R2 Standard build7601 SP1
・Windows Server 2012 R2 Standard build9600
・VMware ESXi 6.0.0 20150902001-standard
※全てのサーバは複数のESXi上で稼働しています。
※Active Directoryのドメイン名:IT-TUTOR.JP
※DNSは全てLinux上のBINDで構築されています(ADサーバではDNSは動いていない)。
→BINDはダイナミックDNSモードで動作しています。
Zone情報の書き換えはIPアドレス制限のみで認証はありません。
sambaの設定
・Active Directoryへメンバーサーバとして参加する。
・アカウントはADサーバで認証後、自動的にUNIXアカウントを作成する。
・/homeに自アカウントが自動作成される。
・publicフォルダーは誰にでもアクセス可能。
手順のサマリー
1.sambaのインストール
2.sambaのサービス停止
3./etc/samba/smb.confを削除(or リネーム)
4.samba-tool domain provisionで一時的なsmb.confを作成
5.自動生成されたkrb5.confのコピー
6.net ads join -U administrator でドメイン参加
7.本番用smb.confの作成
8./home/publicの作成
9.sambaサービスの起動
10.動作確認
それでは手順の詳細です。
sambaのインストール
root@zoid:~# aptitude install samba
sambaのサービス停止
root@zoid:~# /etc/init.d/samba stop
[ ok ] Stopping samba-ad-dc (via systemctl): samba-ad-dc.service.
[ ok ] Stopping smbd (via systemctl): smbd.service.
[ ok ] Stopping nmbd (via systemctl): nmbd.service.
/etc/samba/smb.confを削除(or リネーム)
root@zoid:~# mv /etc/samba/smb.conf /etc/samba/smb.conf.org
samba-tool domain provisionで一時的なsmb.confを作成
※memberサーバの場合、DNS backend (SAMBA_INTERNAL, BIND9_FLATFILE, BIND9_DLZ, NONE) はどれを選んでもOKです。ただし、SAMBA_INTERNALを選んだときにはDNSのIPアドレスを聞かれるので、必ずプライマリーDNSサーバのIPアドレスを指定して下さい。
自動生成されたkrb5.confのコピー
root@zoid:~# cp /var/lib/samba/private/krb5.conf /etc
net ads join -U administrator でドメイン参加
root@zoid:~# net ads join -U administrator
Enter administrator's password:
Using short domain name -- IT-TUTOR
Joined 'ZOID' to dns domain 'it-tutor.jp'
※既にDNSに名前が登録されていると、
DNS Update for zoid.it-tutor.jp failed: ERROR_DNS_GSS_ERROR
DNS update failed: NT_STATUS_UNSUCCESSFUL
…のようなエラーが出ますが、Joinedと表示されADサーバのComputersに登録されていれば問題ありません。
本番用smb.confの作成
/home/publicの作成
root@zoid:~# mkdir /home/public
root@zoid:~# chmod 777 /home/public
sambaサービスの起動
root@zoid:~# /etc/init.d/samba start
[ ok ] Starting nmbd (via systemctl): nmbd.service.
[ ok ] Starting smbd (via systemctl): smbd.service.
[ ok ] Starting samba-ad-dc (via systemctl): samba-ad-dc.service.
動作確認
ADサーバにログインして、『Active Directoryユーザとコンピュータ』を起動し、『Computers』に上記手順で設定したLinuxサーバが登録されているかどうか確認してください。次に、クライアントPCの『ネットワーク』から該当のサーバをクリックすると、自アカウントのフォルダとPublicフォルダが見えると思います。