samba4でWindowsとLinux認証統合/samba4インストール


samba4インストール

samba4でActiveDirectoryのドメインコントローラーを立ち上げるまでの手順です。
samba4からはWindows2008R2相当のActiveDirectoryが実装されましたが、どうやらrpm版では対応していないようなのでソースでインストールします。
手順はこのへんにあります。

インストール前に必ずNTPの時刻同期を設定しておいて下さい。
また、samba関連のパッケージがインストールされている場合は予め抜いておきましょう。

インストール

まず必要なパッケージをインストールします。
# yum install perl gcc libacl-devel libblkid-devel gnutls-devel \
  readline-devel python-devel gdb pkgconfig krb5-workstation \
  zlib-devel setroubleshoot-server libaio-devel \
  setroubleshoot-plugins policycoreutils-python \
  libsemanage-python setools-libs-python setools-libs \
  popt-devel libpcap-devel sqlite-devel libidn-devel \
  libxml2-devel libsepol-devel libattr-devel \
  keyutils-libs-devel cyrus-sasl-devel cups-devel bind-utils \
  libxslt docbook-style-xsl openldap-devel
pamのライブラリを生成するため、pam-develも入れておきます。
# yum install pam-devel
ソースインストールの際のオプションは特に付けなくても困らないようです。
# wget https://www.samba.org/samba/ftp/samba-latest.tar.gz
# tar zxf samba-latest.tar.gz
# cd samba-x.x.x
# ./configure
# make
# make install

パスを通すために /root/.bash_profile を編集します。
PATH=$PATH:$HOME/bin
↓
PATH=$PATH:$HOME/bin:/usr/local/samba/bin:/usr/local/samba/sbin
変更を適用します。
# . /root/.bash_profile

初期ドメインを作ります。
とりあえず今回は example.co.jp ドメインで、DNSは SAMBA_INTERNAL にします。
# samba-tool domain provision --use-rfc2307 --interactive
Realm: example.co.jp
 Domain [example]: example
 Server Role (dc, member, standalone) [dc]: dc
 DNS backend (SAMBA_INTERNAL, BIND9_FLATFILE, BIND9_DLZ, NONE) [SAMBA_INTERNAL]: SAMBA_INTERNAL
 DNS forwarder IP address (write 'none' to disable forwarding) [192.168.0.1]: 192.168.0.1
Administrator password: [ドメイン管理者のパスワードを入力]

起動スクリプトを作ります。
起動スクリプトはこのへんにあるみたいです。
長いのでここには掲載しません。
/etc/rc.d/init.d/samba4 としてファイルを作ったらパーミッションの設定等。
# chmod 755 /etc/rc.d/init.d/samba4
# chkconfig --add samba4

作成したら起動します。
# /etc/init.d/samba4 start

動作確認

デフォルト共有が有効になっているか確認します。
特にエラーが出なければOKです。
# smbclient -L localhost -U%
Domain=[EXAMPLE] OS=[Windows 6.1] Server=[Samba 4.2.2]

        Sharename       Type      Comment
        ---------       ----      -------
        netlogon        Disk
        sysvol          Disk
        IPC$            IPC       IPC Service (Samba 4.2.2)
Domain=[EXAMPLE] OS=[Windows 6.1] Server=[Samba 4.2.2]

        Server               Comment
        ---------            -------

        Workgroup            Master
        ---------            -------

ログオンできるか確認します。
コマンド実行後、ドメイン作成時に設定した管理者のパスワードを入力します。
特にエラーが出なければOKです。
# smbclient //localhost/netlogon -UAdministrator -c 'ls'
Enter Administrator's password:
Domain=[EXAMPLE] OS=[Windows 6.1] Server=[Samba 4.2.2]
  .                                   D        0  Mon Jun 29 18:22:52 2015
  ..                                  D        0  Mon Jun 29 18:23:02 2015

                35028568 blocks of size 1024. 31314664 blocks available

DNSの動作確認をするために /etc/resolv.conf を書き換えます。
search example.co.jp
nameserver 127.0.0.1

各レコードが引けるか確認します。
値が返ってくればOKです。
# host -t SRV _ldap._tcp.example.co.jp.
_ldap._tcp.example.co.jp has SRV record 0 100 389 dc.example.co.jp.

# host -t SRV _kerberos._udp.example.co.jp.
_kerberos._udp.example.co.jp has SRV record 0 100 88 dc.example.co.jp.

# host -t A dc.example.co.jp.
dc.example.co.jp has address 192.168.0.1

kerberos認証の動作確認のため /etc/krb5.conf をリンクで置き換えます。
# cd /etc
# rm -f krb5.conf
# ln -s /usr/local/samba/private/krb5.conf krb5.conf

Kerberos認証の確認をします。
管理者パスワードを入力する必要があります。
また、ドメインは必ず大文字で入力する必要があります。
特にエラーが出なければOKです。
Warningは問題ありません。
# kinit administrator@EXAMPLE.CO.JP
Password for administrator@EXAMPLE.CO.JP:
Warning: Your password will expire in 41 days on 2015年08月10日 18時23分00秒

認証が登録されているか確認します。
登録されたリストの時刻が更新されていればOKです。
# klist
Ticket cache: FILE:/tmp/krb5cc_0
Default principal: administrator@EXAMPLE.CO.JP

Valid starting       Expires              Service principal
2015-06-29T18:35:29  2015-06-30T04:35:29  krbtgt/EXAMPLE.CO.JP@EXAMPLE.CO.JP
        renew until 2015-06-30T18:35:25

ドメイン参加

ここまでできていれば、以下の手順でWindowsマシンのドメイン参加が可能です。

  • DNS設定をsambaADのアドレスに向ける
  • コンピューターのプロパティからドメインに参加

また、ドメインに参加したマシンにリモートサーバー管理ツールをインストールすればドメインの管理ができます。
インストールしてコンポーネントを有効にした後に下記の手順。

  • AdministratorパスワードをsambaADで設定した物と合わせておく
  • administrator@domain でログオン
  • 管理ツールを起動する



参考サイト


  • 最終更新:2016-01-26 10:18:01

このWIKIを編集するにはパスワード入力が必要です

認証パスワード