疑問解決(Samba)

2007/8/11

進化したSambaを使ってみよう!

・Samba

 以前は単なるファイルサーバでした。
 しかし最近は、Windowsネットワークのドメインサーバとしても利用できます。
 ここでは、ドメインサーバをメインとして書いてみたいと思います。

・NTドメイン

 いまでも多くのところでNTドメインは使われていると思います。
 NTの良し悪しが議論される中、それでも多岐に渡り使われてWindowsNT4.0.
 しかし、マイクロソフトのサポートや、”公式に”対応するハードウェアが無い以上、
 いずれ違うOSに意向しなければいけません。

 そこでSambaの出番です。
  Windows2003サーバにするという手もありますが、
  コストを考えるとSambaも有力な選択肢の一ついえます。

 

ドメインサーバソフト OS ユーザ情報の格納場所 認証方式
ActiveDirectory Windows2000
Windows2003
LDAP または 簡易内部DB Kerberos5認証
(チケット方式)
Samba Linux
Unix系
LDAP
TDBSAM
SMBPASSWD

NTLM認証

 

・ユーザ情報の格納場所

 上でも書いている通り、Sambaはユーザ格納場所として、
  LDAP・TDBSAM・SMBPASSWDが考えられますが、
 ドメインとして利用する場合下記の理由より、LDAPで行います。

 

1.同一のLDAPサーバを見に行くことで、複数のSambaや
  他のアプリケーションでユーザ情報を統一できる。
2.LDAPの複製機能によって、冗長か出来る。

・OpenLDAP

  今回は、フリーのOpenLDAPを利用する方法を記述します。

 [slapd.conf]
  1.includeパラメータの修正
   Sambaスキームを読み込ませます。

 

include  /etc/openldap/schema/samba.schema

  2.suffixパラメータの修正
   ベースサフィックスを指定します。

 

suffix "dc=mydomain,co=jp"

  ここでサフィックスとして使用できるのは下記の通り

 

指定子 意味
dc Domain Component
ou Organization Unix
c country
o organization

  3.rootdnパラメータの修正
   rootdnとは、管理者(root)の識別名(Distinguished Name)の事です。

 

rootdn "uid=Administrator,ou=Users,dc=mydomain,dc=com"

  4.rootpwパラメータの修正
   管理者のパスワードを変更する。
    ただし、この表記は初回のみ使用し、LDAPデータを入れた後は削除すること。

 

rootpw = passwd

  5.indexパラメータの修正
   検索を高速化するためインデックスを作成する。
   Sambaの場合は下記を指定すると良い。

 

index objectClass,uidNumber,gidNumber,uid,sambaSID,cn,memberuid eq

  6.accessパラメータの修正
   Samba用のアクセス制御の記述を追加。
   パスワード以外は他ユーザから閲覧可能にする。

 

access to * by * read

access to attr=sambaLMPassword,sambaNTPassword,sambaPasswordHistory
by * none

access to attr=userPassword
by anonymous auth
by * none


 [Linuxのユーザ認証]
  LDAPに登録されたユーザをLinuxのユーザとして認証させるため、
  NSS(ネームサービス スイッチ)とPAM(プラガブル認証モジュール)の設定を行う。
   → authconfigを使用

 [/etc/nsswitch.conf]
  winbindやwinsでの名前解決が出来るように下記のように修正

 

passwd: files ldap winbind
shadow: files ldap
group: files ldap winbind
hosts: files dns wins

 [smb.conf]
  1.サンバをドメインサーバにする場合は、下記を設定する。

 

domain logons=yes
os level = 64
preferred master = Yes
domain master = Yes

  2.winsを有効にする。

 

wins support = Yes

  3.LDAPサーバの設定
   Sambaが利用するLDAPサーバの設定を行う。

 

passdb backend=ldapsam:ldap://サーバ名

  4.LDAPサフィックスの設定
   アカウント検索を行うサフィックスを設定する。

 

ldap suffix=dc=mydomain,co=jp
ldap machine suffix = ou=Computers
ldap user suffix = ou=Users
ldap group suffix = ou=Groups

  5.管理者の識別子を設定
   LDAP管理者の識別子を設定します。

 

ldap admin dn = cn=Manager,dc=miraclelinux,dc=com

  6.admin users、printer admin、Guestアカウントの設定
   Administratorを設定する。

 

admin users = administrator
printer admin = administrator
guest account = Guest

  7.パスワードの同期
   Sambaのパスワードを変更した時、OSのパスワードも変更する。

 

ldap passwd sync = Yes

 [smbldap-tools]
  あとは、smbldap-toolsを使用して、ユーザ等の追加をしましょう。
・覚書
 ・wins
 ・winbind
 ・Kerberos5認証
 ・チケット方式
 ・NTLM認証
 ・indexの重複
 ・アクセスパラメータ
 ・NSS(ネームサービス スイッチ)
 ・PAM(プラガブル認証モジュール)
 ・SELinux
さらに情報が欲しい方は、Google検索で  
Google
・TOPへ戻る

メールはこちらに