助け合いフォーラム

LinuC

LinuC Lv3-300
問題ID : 27372
問題を開く
ネットワーク192.168.10.0/24とローカルホスト以外からのアクセスを拒否したい。適切なsmb.confの設定項目は次のうちどれか。(全て選択)

この問題はプレミアムコンテンツです。

上に戻る

hosts deny = 0.0.0.0/0 は必須なのか

投稿日 2025/01/06

本問でhosts deny = 0.0.0.0/0 は必須なのでしょうか。

解説の参考URLSamba「smb.conf」:hosts allow (S)の説明には、127.0.0.1(ローカルホスト)は
hosts denyで明示的に拒否されない限りhosts allowに未登録でも常に許可されてしまう旨の説明が書かれています。

裏を返せば、ローカルホストを除けば、hosts allowに書かれていないアドレスは接続拒否されると考えてよいことにはなりませんか。
もしその認識が正しければ、なのですが、本問では hosts deny = 0.0.0.0/0 はマストではなく任意(念の為)的な記述になるので
すべて選択させる問題で選択しないと誤答になるのは適切ではないと思いました。

2025/01/07 00:50

参考URLの hosts deny にはデフォルト値として「何も拒否しない」と書かれています。

Default: hosts deny = # none (i.e., no hosts specifically excluded)

よって

hosts allowに書かれていないアドレスは接続拒否されると考えてよいことにはなりませんか。

は「なりません」といえますので、「以外からのアクセスを拒否したい」を達成するためには hosts deny の設定が必須ですね。


コメント

m miki_y

2025/01/07 09:00

なるほど、理解しました。 ありがとうございました。

m miki_y

2025/01/07 22:31

一度は納得したものの、やはり違和感を持ちました。 それならばhosts allowは、常にhosts denyありきの設定ということですか。 つまりdenyが未指定である限り拒否されるホストはないのであれば、 denyで広い範囲を拒否しておいて、その中で許可する例外としてallowを 指定することでしかallowの存在意義がないということになり、 allow単独で使うことは実質意味がないことになるわけですか。 ですがネットで少し調べると、下記日経XTECHの解説記事を始め、 allow単独で書かれている例をところどころで見かけます。 https://xtech.nikkei.com/it/members/LIN/oss/20031008/2/ もう一つ気になるのは、私が最初の投稿で挙げたhosts allowの解説について「denyで拒否しない限りローカルホストは許可される」旨の説明は何のためにあるのでしょうかね。denyで拒否しない限り拒否されないのはローカルホストに限らず全ホストがそうなのであれば、わざわざローカルホストだけを注意書きする必要はなさそうです。 なんとなくですが以下のポリシーの感じがしませんか。 ①allowもdenyも未指定なら全ホストは接続が許可される ②allow単独なら未記載のホストはローカルホストを除き拒否される ③allowとdenyが両方指定されたら両範囲で重複するアドレスは  allow側になり、拒否される範囲は左記を除くdeny側のアドレス範囲に  (②のときよりも)限定される

この返信に対して
コメントを記入できます

この投稿に対して返信しませんか?