人気ブログランキング | 話題のタグを見る
(Linux)ActiveDirectoryと連携時に自動的にログインユーザ権限でWindows共有フォルダをマウントする
(Linux)ログイン時にActiveDirectoryのユーザ名・パスワードで認証できるようにするで、Linux認証をドメインユーザでできるようにしました。

今回は、この状態に加え、ログインしたドメインユーザのアクセス権で、Windowsのファイルサーバをマウントするための方法です。

通常のWindows共有フォルダのマウントなら下記のようにmountコマンドでできます。

mount -t cifs -o username=ドメインユーザ名,password=パスワード,domain=ドメイン名,iocharset=utf8 //サーバ名/共有フォルダ名 /マウント先

また、OS起動時にマウントするようにするには下記のように、/etc/fstab ファイルに追記します。

//サーバ名/共有フォルダ名 /マウント先 cifs username=ドメインユーザ名,passwordパスワード,domain=ドメイン名,iocharset=utf8,rw,file_mode=0555,dir_mode=0555 0 0

fstabファイルを使うようにすると、共有フォルダにアクセスするユーザが必ず固定になってしまいます。
ログイン後に、mount コマンドでパスワードを手入力さす方法もありますが(passwordオプションを指定しないと手入力になる)、ユーザからすると不便です。

Windowsのように、OSログイン時の権限で自動的に共有フォルダをマウントするようにしたいのが目的です。


いろいろ調査した結果、pam-mountを使うと可能なことが分かりました。

評価したLinuxは Ubuntu 系の軽量の EcoLinux 10.04 です。

既にSamba + Winbind で ActiveDirectoryと連携できていることを前提とします。

まずパッケージをインストールします。

# apt-get install libpam-mount
# apt-get install smbfs

今回入れたパッケージのバージョンは下記のとおりでした。
smbfs 2:3.4.7~dfsg-1ubuntu3.2
ibpam-mount 1.32-2


次に、pam_mountの設定ファイルにマウントの設定を記述します。
# vi /etc/security/pam_mount.conf.xml

<!-- Volume definitions --> の下に下記のようにマウントの定義を書きます。

<volume fstype="cifs"
server="dfssv01" path="nas" mountpoint="/mnt/dfs"
options="iocharset=utf8,dir_mode=0700,file_mode=0600">
<not>
<or>
<user>root</user>
<user>information</user>
</or>
</not>
</volume>


後は下記のpam設定ファイルに、pam_mountを使うよう設定を追記します。

# vi /etc/pam.d/common-auth
auth optional pam_mount.so try_first_pass
↑追記

# vi /etc/pam.d/common-session
session optional pam_mount.so
↑追記


これで再起動して、ドメインユーザでログインすると見事にそのユーザ権限でマウントされています。

今回はDFSをマウントしたんですが、Windowsサーバ側でDFSを使っているとDFSルートをマウントするだけでいいので楽ですね。


参考:
(3)ユーザーホームをマウントするように設定する(2010/9/10) 今回はなかなか情報が少なかったので、このサイトは非常に助かりました。
pam_mountを使ったログイン時における暗号化ファイルシステムの自動マウント - SourceForge.JP Magazine : オープンソースの話題満載
by jehoshaphat | 2011-06-06 21:34 | Linux


<< (Linux)EcoLinux... (Linux)EcoLinux... >>