/etc/hosts.allowで外部ファイルをincludeして使う
tcp_wrappers 好きの皆さんこんにちわ。
/etc/hosts.allow でアクセス制限管理してますか?
ふと、「/etc/hosts.allowでincludeって出来ないのかなあ」と思って
man hosts.allow
してみたところ、"PATTERNS" のところに
A string that begins with a ‘/´ character is treated as a file name. A host name or address is matched if it matches any host name or address pattern listed in the named file. The file format is zero or more lines with zero or more host name or address patterns separated by whitespace. A file name pattern can be used anywhere a host name or address pattern can be used.
アドレスを書く部分が '/' で始まる場合はファイルで指定出来ると書いてあったので試してみました。
- /etc/hosts.deny で "ALL: ALL" で全拒否
- /etc/hosts.allow でホワイトリストとして管理
してるときに、 /etc/hosts.allow に以下のように記載し
sshd: /etc/hosts.sshd_allow
includeするファイルを以下のように作成すると
192.168.1.10
192.168.1.11
通常記載するような以下の動きと同じになります。
sshd: 192.168.1.10
sshd: 192.168.1.11
役割が違うサーバーのそれぞれの /etc/hosts.allow をバージョン管理していて、両方で共通のルールだけ別ファイルで一元管理などに便利に使えそうです。