この特集のトップページへ
>
この回のトップページへ
| hosts.allow/hosts.denyの記述方法 |
hosts.allow/hosts.deny,2つのファイルは,それぞれの目的が「許可するか」,「拒絶するか」といった違いだけだ。記述方法に違いはない。また,多くのファイルと同じく,「#」で始まる行はコメントと判断される。
| サーバプログラムリスト: クライアントリスト [: シェルコマンド] |
|
※サーバプログラムリスト
inetd経由でtcpdが起動するサーバプログラムを指定する。上記のように「in.ftpd」や「in.telnetd」などとなり,複数を同時に指定することも可能だ。その場合にはスペース(空白文字)かカンマ(,)で区切り,「in.ftpd in.telnet」,「in.ftpd,in.telnetd」といった指定を行う。すべてのプログラムやIP(ドメイン)を指定する場合には「ALL」を使用する。
※クライアントリスト
この項目には,ホスト名やIPアドレス,ドメイン名やIPアドレス+ネットマスクなどを利用して指定する。複数指定する場合には,スペースかカンマで区切ろう。
# IPアドレスで指定
127.0.0.1
# ネットワークで指定
192.168.1.0/255.255.255.0
# ネットワークで指定
192.168.1.
# ネットワークで指定(例外を設定)
192.168.1. EXCEPT 192.168.1.1
# ドメイン名で指定
.some.domain.com
# ドメイン名で指定(例外を設定)
.some.domain.com EXCEPT yourhost.some.domain.com
# ホスト名で指定
myhost.some.domain.com
|
上記のような記述方法がある。「EXCEPT」キーワードを使用することで指定範囲の中から例外も記述できるため,柔軟性に富んだ指定が可能だろう。
※シェルコマンド
通常実行するコマンドをそのまま記述することができる。そのコマンドに時間がかかるような場合には,末尾に「&」をつけることによってバックグラウンドで実行可能だ。
また,シェルコマンドのフィールドでは「%」+「文字」を特定の文字列に展開することができる。アクセスしてきたホストのIPアドレスなどをシェルコマンドに渡すことが可能なのだ。
展開される文字列内容

| %a (%A) |
クライアント(サーバ)のIPアドレス |
| %c |
ユーザ名,ホスト名,IPアドレスなどのクライアント情報 |
| %d |
サーバプログラムのプロセス名 (argv[0]) |
| %h (%H) |
クライアント(サーバ)のホスト名。無い場合にはIPアドレス |
| %n (%N) |
クライアント(サーバ)のホスト名 |
| %p |
サーバプログラムのプロセスID |
| %s |
プログラム名,ホスト名,IPアドレスなどのサーバ情報 |
| %u |
クライアントのユーザ名 |
| %% |
'%'の文字 |
|
|
|