トップ   編集 凍結解除 差分 バックアップ 添付 複製 名前変更 リロード   一覧 最終更新   ヘルプ   最終更新のRSS
 


動作確認ディストリビューション

Samba 3.0.9とLDAPの連携方法(既にLDAPサーバーが構築済みの場合)

  • 前提条件
    • 既に別サーバーにて、LDAPサーバーが構築されている事とする。
    • 既にSambaがインストールされている事とする。
    • 本連携では、smbldap-toolsのインストールは行わず、Sambaのパスワード管理をLDAPにて行う事のみを目的とする。
  • 参考

Samba設定ファイルを編集。

# vi /etc/samba/smb.conf

global節に以下を追加。

[global]

obey pam restrictions = yes

# ↓↓↓LDAPサーバーにて設定した内容と同一とする↓↓↓
passdb backend = ldapsam:ldap://LDAPサーバーのIPアドレス/
ldap passwd sync = yes
ldap admin dn = cn=admin,dc=lovebug,dc=jp
ldap suffix = dc=lovebug,dc=jp
ldap group suffix = ou=Groups
ldap user suffix = ou=Users
ldap machine suffix = ou=Computers
ldap idmap suffix = ou=Users
ldap ssl = no
# ↑↑↑LDAPサーバーにて設定した内容と同一とする↑↑↑

設定ファイルの妥当性チェック

# testparm

Sambaの管理者パスワードの設定。

# smbpasswd -w xxxxxxxxxx
Setting stored password for "cn=admin,dc=lovebug,dc=jp" in secrets.tdb

Sambaサービスの再起動

# service smb restart

以下のコマンドを実行。

# authconfig

[LDAP を使用]にチェックし、[サーバ]欄に[LDAPサーバーのIPアドレス]、[ベース DN]欄に[dc=lovebug,dc=jp]と入力し、[次]を選択。

lqqqqqqqqqqqqqqqqqqqu ユーザ情報の設定 tqqqqqqqqqqqqqqqqqqqqk
x                                                           x
x [ ] キャッシュ情報                                        x
x                                                           x
x [ ] NIS を使用     ドメイン: ____________________________ x
x                      サーバ: ____________________________ x
x                                                           x
x [*] LDAP を使用              [ ] TLSを使用                x
x                      サーバ: LDAPサーバーのIPアドレス____ x
x                   ベース DN: dc=lovebug,dc=jp____________ x
x                                                           x
x [ ] Hesiod を使用       LHS: ____________________________ x
x                         RHS: ____________________________ x
x                                                           x
x          lqqqqk                    lqqqqqqqqqqk           x
x          x 次 x                    x 取り消し x           x
x          mqqqqj                    mqqqqqqqqqqj           x
x                                                           x
x                                                           x
mqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqj

[LDAP 認証を使用]にチェックし、[サーバ]欄に[LDAPサーバーのIPアドレス]、[ベース DN]欄に[dc=lovebug,dc=jp]と入力し、[OK]を選択。

lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqu 認証の設定 tqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk
x                                                                          x
x [*] シャドウパスワードを使用                                             x
x                                                                          x
x [*] MD5 パスワードを使用                                                 x
x                                                                          x
x [*] LDAP 認証を使用                         [ ] TLSを使用                x
x                                     サーバ: LDAPサーバーのIPアドレス____ x
x                                  ベース DN: dc=lovebug,dc=jp____________ x
x                                                                          x
x [ ] Kerberos 5 を使用        レルム(Realm): ____________________________ x
x                                        KDC: ____________________________ x
x                                 管理サーバ: ____________________________ x
x                                                                          x
x [ ] SMB認証を使用           ワークグループ: ____________________________ x
x                                     サーバ: ____________________________ x
x        lqqqqk                lqqqqqqk               lqqqqqqqqqqk         x
x        x OK x                x 戻る x               x 取り消し x         x
x        mqqqqj                mqqqqqqj               mqqqqqqqqqqj         x
x                                                                          x
x                                                                          x
mqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqj

上記設定により以下のファイルが変更されるので、内容を確認する。

# less /etc/openldap/ldap.conf 
# less /etc/ldap.conf 
# less /etc/pam.d/system-auth 
# less /etc/nsswitch.conf 

ホームディレクトリの自動作成を行いたい場合は、PAM設定ファイルを編集する。

# vi /etc/pam.d/system-auth

以下のように修正。

#%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth        required      /lib/security/$ISA/pam_env.so
auth        sufficient    /lib/security/$ISA/pam_unix.so likeauth nullok
auth        sufficient    /lib/security/$ISA/pam_ldap.so use_first_pass
auth        required      /lib/security/$ISA/pam_deny.so

account     required      /lib/security/$ISA/pam_unix.so
account     [default=bad success=ok user_unknown=ignore service_err=ignore system_err=ignore] /lib/security/$ISA/pam_ldap.so

password    required      /lib/security/$ISA/pam_cracklib.so retry=3 type=
password    sufficient    /lib/security/$ISA/pam_unix.so nullok use_authtok md5 shadow
password    sufficient    /lib/security/$ISA/pam_ldap.so use_authtok
password    required      /lib/security/$ISA/pam_deny.so

session     required      /lib/security/$ISA/pam_mkhomedir.so skel=/etc/skel umask=0022 ←この行を追加
session     required      /lib/security/$ISA/pam_limits.so
session     required      /lib/security/$ISA/pam_unix.so
session     optional      /lib/security/$ISA/pam_ldap.so

LDAPサーバーとSambaサーバーの再起動。

上記までの設定で、SSHでログインできない場合
ホームディレクトリの自動作成に失敗している可能性があるので、以下のようなエラーが表示されていないか確認します。

# cat /var/log/secure |grep "fatal: PAM session"
Aug  5 13:50:00 xxxx sshd[1346]: fatal: PAM session setup failed[6]: Permission denied

「Permission denied」と表示されているため、ホームディレクトリの自動作成に失敗している可能性があります。
この場合、上記の「/etc/pam.d/system-auth」の修正を元の設定に戻し、再度ログインできるかチェックします。
ログインが可能であれば、以下のコマンドで「/home」ディレクトリにパーミッションを与えて、再度、ホームディレクトリの自動作成の設定を有効にし、ログインのチェックを行います。

# chmod 777 /home
  • 関連書籍
    #amazon(4774121967,center,)#amazon(4798108545,center,)#amazon(4798018007,center,)#amazon(4822234002,center,)#amazon(0596007698,center,)

Last-modified: 2011-05-28 (土) 10:43:48 (3008d)