LoginSignup
24
25

More than 5 years have passed since last update.

外部のLDAPサーバを使ったsamba認証

Posted at

よくLDAP + sambaで認証とかの記事はたくさんあるのですが、たいていは一台でLDAPサーバ + sambaサーバ構成と思います。
すでにLDAPサーバがあり、LDAPサーバローカルでsamba認証ができている環境で、sambaサーバを一台立ち上げて、既存のLDAPサーバに繋げてみます。

sambaのインストール

root@raidtest:~# apt-get install samba

libpam-ldapdのインストール

たとえsambaの認証が通ってもunix accountがなければ弾かれます。
なので、pam-ldap関連を入れます

apt-get install libpam-ldapd

インストールを行うとldapサーバを聞かれますので、現在動いてるldapサーバを指定
nsswitchでの参照を行うファイルは

  • passwd
  • group
  • shadow

あたりでいいと思います。
(shadowはいらないかも)

smb.confの設定

最小限でいいと思いますので、こんな感じで

/etc/samba/smb.conf
[global]
        unix charset =  UTF-8
        dos charset = CP932
        unix extensions = no
        netbios name = MYNAME
        workgroup = ouchi

        #LDAP Setting
        passdb backend = ldapsam:ldap://<LDAPサーバ>
        ldap suffix = dc=ouchi,dc=co,dc=jp (BaseDNを入れる)
        ldap user suffix = ou=People
        ldap group suffix = ou=Group
        ldap machine suffix = ou=Computers
        ldap admin dn = cn=admin,dc=ouchi,dc=co,dc=jp (adminDNを入れる)
        ldap passwd sync = yes
        ldap ssl = no
        admin users = Administrator
[homes]
        comment = Home Directories
        browseable = no
        writable = yes

※suffixは適宜環境に合わせてください。
設定後【testparm】を実行して問題ないかどうか確認します。

一度、いろんなものを再起動

nscdやnslcd等、変にキャッシュを持っててうまくいかない場合があるので(ついでにsmbdも)一度リスタートをかけます。

root@raidtest:/etc/samba# /etc/init.d/nslcd restart
 * Restarting LDAP connection daemon nslcd                  [ OK ]
root@raidtest:/etc/samba# /etc/init.d/nscd restart
 * Restarting Name Service Cache Daemon nscd                [ OK ]
root@raidtest:/etc/samba# initctl restart smbd
smbd start/running, process 20021

※sambaはinit.dを使えないので仕方がないのでinitctlで

アカウントが見えるかどうかの確認

LDAP上に【smbtest】ってユーザを作りました

root@raidtest:/etc/samba# getent passwd | grep smbtest
smbtest:x:7077:513:System User:/home/smbtest:/bin/bash
root@raidtest:/etc/samba# id smbtest
uid=7077(smbtest) gid=513(Domain Users) groups=513(Domain Users)

getentは問題ないけど、idが出てこないとかは nscdあたりを再起動すると直ることが度々あります。
これで何時間も時間を無駄にしたことがあります。

sambaにアクセスする前に、ホームディレクトリの作成

。。。そういうコンフィグを書いてしまったので。。。

root@raidtest:/etc/samba# cd /home/
root@raidtest:/home# mkdir smbtest
root@raidtest:/home# chown 7077:513 smbtest

これでwindowsからアクセスすると、ユーザ名、パスワードが聞かれて入れるとホームディレクトリが見れる予定です。

てっきりsambaSIDあたりで悩むかと思ったら、同じSIDが振られててました。
このあたりって誰が決めてるのでしょ?? 謎です。。。

24
25
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
24
25