OSS Fan ~OSSでLinuxサーバ構築~

このエントリーをはてなブックマークに追加

Sambaでドメインコントローラ構築

カテゴリ:OSSセットアップ | ソフトウェア:Samba | タグ:
最終更新日:2021/01/03 | 公開日:2009/06/23

目次

概要

 sambaを使用してWindowsのドメインコントローラを構築します。 CentOSに同梱されているsambaのパッケージはバージョン3のため Windows NT時代のNTドメインの構築となります (sambaバージョン4ではActive Directoryをサポートしているとのこと)。

 大まかな環境としては移動プロファイルをサポートし、 どのPCからログインしても同じデスクトップ環境を提供できるようにします。

構成

サーバ構成

OSバージョン

CentOS 5 i386

ソフトウェア・パッケージ一覧

  • samba-common-3.0.23c-2.i386.rpm
  • samba-3.0.23c-2.i386.rpm

環境構築

インストール

 Sambaサーバに必要なパッケージを2つインストールします。 DVDドライブにCentOS 5のDVD-ROMをセットし、以下のコマンドを実行します。

# mount /dev/cdrom /media/cdrom
# cd /media/cdrom/CentOS/
# rpm -ihv samba-common-3.0.23c-2.i386.rpm
Preparing...                ########################################### [100%]
   1:samba-common           ########################################### [100%]
# rpm -ihv samba-3.0.23c-2.i386.rpm
Preparing...                ########################################### [100%]
   1:samba                  ########################################### [100%]
# cd /
# umount /media/cdrom

設定

sambaの設定

 初期状態で設定ファイルが存在しますが、 コメントや不要な設定項目が多く見通しが悪いので、 新規に設定ファイルを作成します。 元々存在していた設定ファイルは事前にバックアップしておきます。

# cd /etc/samba/
# mv smb.conf smb.conf.bk
# touch smb.conf
# vi smb.conf
ファイル名:/etc/samba/smb.conf
※新規作成※
[global]
   workgroup = DOMAIN
   server string = Samba Domain Controler
   security = user
   hosts allow = 192.168.0.
   max log size = 50
   passdb backend = tdbsam
   local master = yes
   os level = 65
   domain master = yes
   preferred master = yes
   domain logons = yes
   logon script = logon.bat
   logon path = \\%L\profiles\%U
   wins support = yes
   add user script = /usr/sbin/useradd %u
   add group script = /usr/sbin/groupadd %g
   add machine script = /usr/sbin/adduser -n -g machines -c Machine -d /dev/null -s /bin/false %u
   delete user script = /usr/sbin/userdel %u
   delete user from group script = /usr/sbin/deluser %u %g
   delete group script = /usr/sbin/groupdel %g
   netbios name = PDC
   unix charset = UTF-8
   dos charset = CP932
   display charset = UTF-8
   admin users = administrator
   encrypt passwords = yes
   socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192

[netlogon]
   comment = Network Logon Service
   path = /usr/local/samba/lib/netlogon
   guest ok = yes
   writable = no
   share modes = no

[profiles]
   path = /usr/local/samba/profiles
   browseable = no
   guest ok = yes
   writable = yes
   profile acls = yes
   create mask = 0600
   directory mask = 0700

公開ディレクトリの作成

 設定ファイル内でも指定している公開用ディレクトリを作成します。 profilesディレクトリは一般ユーザ(個人ユーザ)の権限でも 書き込みを行いますので、パーミッションを変更します。

# cd /usr/local/
# mkdir -p ./samba/lib/netlogon
# mkdir -p ./samba/profiles
# chmod 777 ./profiles

ユーザ・グループの作成

 OS上のグループを作成します。 管理者用と一般ユーザ用の2つを作成します。

# groupadd admins
# groupadd users

 マシンアカウントを作成します。

# useradd -g users -s /bin/false pcd001$
# passwd pcd001$
# pdbedit -a -m pcd001$

 管理者ユーザアカウントを作成します。

# useradd -g admins -s /bin/false administrator
# passwd administrator
# pdbedit -a -u administrator

 一般ユーザアカウントを2名分作成します。

# useradd -g users -s /bin/false user1
# passwd user1
# pdbedit -a -u user1
# useradd -g users -s /bin/false user2
# passwd user2
# pdbedit -a -u user2

 WindowsのグローバルグループとOS上のグループを関連付けます。

# net groupmap modify NTgroup="Domain Admins" UNIXgroup="admins"
# net groupmap add NTgroup="Domain Users" UNIXgroup="users"

Sambaの起動ランレベル変更

 OSの起動に併せてデーモンを自動起動する設定に変更します。

# chkconfig smb on

sambaの起動

 以上で設定が終了しましたのでrcスクリプトを使用してsambaを起動します。

# /etc/rc.d/init.d/smb start
Starting SMB Services:                                     [  OK  ]
Starting NMB Services:                                     [  OK  ]