xinetd serviceへの接続を、IPv4 network 192.0.2.0/24からだけ許可する。
service block内へsource restrictionを設定する。
適切な行はどれか。
xinetdのonly_fromは許可するsource host/networkを限定する。no_accessは拒否側のlistである。
詳細解説
no_access = 192.0.2.0/24指定networkを拒否するため許可条件と逆である。
誤り。no_accessは192.0.2.0/24を拒否listへ置き、要求と逆のaccessになる。
only_from = 192.0.2.0/24指定source networkだけを許可する。
正しい。only_fromにnetworkを指定し、そのsourceからだけの接続を許可する。
bind = 192.0.2.0/24bindはlocal address指定用でremote source restrictionではない。
誤り。bindはlocal interface/addressのlisten範囲を選び、remote client networkを許可するattributeではない。
server_args = 192.0.2.0/24server processへ渡すargumentでaccess policyではない。
誤り。server_argsはchild programへのargumentで、xinetd自身のsource access checkではない。
実際に確かめる
一時的な検証環境で実行できる例です。
printf '%s
' 'only_from=allow listed sources' 'no_access=deny listed sources'期待される結果
only_from=allow listed sources
no_access=deny listed sources理解のポイント
- only_fromは許可list
- no_accessは拒否list
- bindはlocal側
確認時の注意
- 確認環境: xinetd access control対応表
基礎のおさらい
多層防御
xinetd access controlだけでなくfirewallとservice固有認証も組み合わせる。
名前指定の注意
host名based ruleはDNS状態に依存するため、security boundaryではaddress/network指定と検証を重視する。