sambaサーバでのアクセス制限

ファイルサーバとして使っているLinuxサーバでアクセス制限を掛ける方法を調べている。
やりたいのは共有をかけているディレクトリ単位にIPアドレスで制限を掛けるということ。
具体的には
/var/share/AAA
というディレクトリには
192.168.1.0/24 からだけアクセスを許し、
/var/share/BBB
192.168.255.0/24 からだけアクセスを許すというようなこと。

これを実現するには設定ファイル(smb.conf)内にアクセスを許可するIPアドレス(グループ)を記述する必要がある。
サーバ全体へのアクセスを制限するには
[global]
セクションに
hosts allow = 192.168.1. 127.
と書けば192.168.1.0/24とローカルホスト(サーバ自分自身)からのアクセスのみを許可することになる。
同じことを各ディレクトリ単位にしたい場合はこの
hosts allow =
の行を各ディレクトリ毎のセクションに記述すればOK。
つまり、上のほうに書いたようなことを実現するには、
[AAA]
    path = /var/share/AAA
(中略)
    hosts allow = 192.168.1.
[BBB]
    path = /var/share/BBB
(中略)
    hosts allow = 192.168.255.
と書けば良いことになる。

反対に特定のIPアドレス(グループ)からのアクセスを拒否したい場合は「hosts allow」の代わりに「hosts deny」と書けば良いのかと思ってやって見たけど上手く拒否されずにアクセスが出来てしまった。
今のところ拒否のほうは上手くいかないけど、とりあえず目的を達することは出来るので、denyのほうはおいおい調べていこうか。

←クリックしてくれると嬉しいです。
PR

コメントを残す