スマートフォン公開用sambaの設定メモ
Androidスマートフォンからsambaサーバーにアクセスする際に、通常利用するアカウントでアクセスさせるのは危険*1と思い、以下のようなポリシーを定め公開する設定を追加してみました。
- Androidスマートフォンからアクセスさせるためユーザーを作成する
- このユーザーはLinuxコンソールにはログインできないようにする
- このユーザーは特定のディレクトリに対して読み取りのみの権限を持つ
- このユーザーは特定のディレクトリに対して書き込み権限を持つ
環境
$ cat /etc/issue Debian GNU/Linux 6.0 \n \l $ dpkg --list | grep samba ii samba 2:3.5.6~dfsg-3squeeze9 SMB/CIFS file, print, and login server for Unix ii samba-common 2:3.5.6~dfsg-3squeeze9 common files used by both the Samba server and client ii samba-common-bin 2:3.5.6~dfsg-3squeeze9 common files used by both the Samba server and client
設定メモ
sambaサーバーコンソール操作
#Androidクライアントのユーザー(ユーザー名: droid)を作成 # useradd -s /usr/sbin/nologin droid # smbpasswd -a droid ||< #Androidクライアントに見せるための公開ディレクトリを作成 # mkdir -m 777 /share/droid 読込専用 # mkdir -m 777 /share/droid_writable 書込可 # chwon droid: ./* # Androidクライアントに見せたいディレクトリのシンボリックリンクを張る # ここでは/data/musicのシンボリックリンクを/share/droid/musicに張る # cd /share/droid # ln -s /data/music music # 同様に書き込み可能なディレクトリのシンボリックリンクを張る # cd /share/droid_writable # ln -s /data/docs docs
smb.confの設定
今回の設定で必要な部分のみ記載
[global] # シンボリックリンクを辿れるようにする unix extensions = no [droid] # droidユーザーが普段アクセスするパス path = /share/droid writable = no guest ok = no # シンボリックリンクを辿れるようにする wide links = yes [droid_writable] path = /share/droid_writable writable = yes guest ok = no create mask = 0660 directory mask = 0770 wide links = yes browseable = no
設定を有効にする
# /etc/init.d/samba reload