星と猫の数学

私を退屈から救いに来た、夢のヒーロー

Sambaセキュリティ設定

Sambaのアクセス制限

以前にSambaによるファイルサーバの設定を行いましたが、以前の設定の場合だと誰でもアクセスが可能になっています。
今回はアクセス制限を行うようにしてセキュリティを強化します。

LAN内ユーザのみに制限

「global」タグ以下に下記の設定を記述する事でLANに接続したユーザのみアクセス可能という制限を行なっています。

  • LANに接続した時に自動でIPアドレスが「192.168.96.XXX」と割り振られる場合
interfaces = 127.0.0.0/8 192.168.96.0/24
bind interfaces only = yes

「interfaces」にはより細かく(それこそ特定のIPアドレスのみ等)指定が可能です。

特定のユーザのみに制限

ファイルサーバのシステムで指定したユーザのみアクセス可能という制限を行います。下記の設定を行った場合、アクセス時にユーザ名とパスワードを聞かれるようになります。

[global]
passdb backend = tdbsam
pam password change = yes
unix password sync = sync

;map to guest = Bad User

[share]
;guest ok = yes
;guest only = yes

valid users = @group1
write list @group1
force group = group1

「map to guest」はゲスト認証の可否、「guest ok」は指定ユーザ以外のアクセスの可否、「guest only」はアクセスするユーザをすべてゲストとするかの設定となっています。これらの設定を行わない(または明示的に「no」と記述する)事でゲストのアクセスを不可にしています。
「valid users」は読み取り可能、「write list」は書き込みなユーザ、またはユーザグループを指定します(「@」必須)。
「force group」はアクセス制限とは直接関係ないですが、作成したファイルやフォルダを強制的に指定したユーザ(ユーザグループ)にするという設定です。
ユーザグループは以下のように設定します。

sudo groupadd group1
sudo gpasswd -a <ユーザ名> group1

「gpasswd」コマンドでユーザを指定したユーザグループに所属させます。

設定完了

これでアクセス制限ができました。より進んだセキュリティ設定もあるようですが、ひとまずここまで。

参考資料

サーバ構築の実例がわかる Samba[実践]入門 (Software Design Plus)

サーバ構築の実例がわかる Samba[実践]入門 (Software Design Plus)