15b6752b34
Reviewed by: Japanese Online Manual Project <man-jp@jp.FreeBSD.ORG> Submitted by: Kazuo Horikawa <k-horik@yk.rim.or.jp>
187 lines
6.6 KiB
Groff
187 lines
6.6 KiB
Groff
.\" jpman %Id: hosts_options.5,v 1.3 1999/05/11 15:59:25 kuma Stab %
|
|
.\" WORD: severity 重要度 [syslog.conf.5]
|
|
.\" WORD: facility ファシリティ [syslog.conf.5]
|
|
.TH HOSTS_OPTIONS 5
|
|
.SH 名称
|
|
hosts_options \- ホストアクセス制御言語の拡張
|
|
.SH 解説
|
|
この文書は、hosts_access(5) 文書で解説した言語に対する
|
|
オプション拡張を解説します。
|
|
この拡張は、プログラム構築時に有効にされます。
|
|
例えば、Makefile を編集し、
|
|
コンパイル時オプション PROCESS_OPTIONS を有効にします。
|
|
.PP
|
|
この拡張可能な言語は、次の書式を使用します。
|
|
.sp
|
|
.ti +3
|
|
daemon_list : client_list : option : option ...
|
|
.PP
|
|
最初の 2 つのフィールドは、hosts_access(5) マニュアルページで解説しています。
|
|
ルールの残りは、0 個以上のオプションです。
|
|
オプション中の ":" 文字は、バックスラッシュで保護する必要があります。
|
|
.PP
|
|
オプションの形式は、"keyword" または "keyword value" です。
|
|
オプションは、指定した順番で処理されます。
|
|
オプションによっては、%<letter> 置換の対象となります。
|
|
以前のバージョンとの後方互換性のために、
|
|
keyword と value の間に "=" を入れることが許されています。
|
|
.SH 記録
|
|
.IP "severity mail.info"
|
|
.IP "severity notice"
|
|
どの重要度のイベントを記録するかを変更します。
|
|
ファシリティ名 (mail など) はオプションです。
|
|
これは、古い syslog の実装のシステムでは、サポートされていないでしょう。
|
|
固有のイベントを強調したり無視したりするために、
|
|
severity オプションを使用します。
|
|
.SH アクセス制御
|
|
.IP "allow"
|
|
.IP "deny"
|
|
サービスを許可 (拒否) します。
|
|
これらのオプションは、ルールの最後に登場する必要があります。
|
|
.PP
|
|
\fIallow\fR と \fIdeny\fR のキーワードにより、
|
|
すべてのアクセス制御ルールを単一のファイルに、
|
|
例えば \fIhosts.allow\fR ファイルに、置くことが可能となります。
|
|
.sp
|
|
特定のホストだけからのアクセスを許可するには、次のようにします。
|
|
.sp
|
|
.ne 2
|
|
.ti +3
|
|
ALL: .friendly.domain: ALLOW
|
|
.ti +3
|
|
ALL: ALL: DENY
|
|
.sp
|
|
少数のトラブルメーカ以外からのアクセスをすべて許可するには、次のようにします。
|
|
.sp
|
|
.ne 2
|
|
.ti +3
|
|
ALL: .bad.domain: DENY
|
|
.ti +3
|
|
ALL: ALL: ALLOW
|
|
.sp
|
|
ドメイン名のパターンの前のドットに注意してください。
|
|
.SH 他のコマンドの実行
|
|
.IP "spawn shell_command"
|
|
hosts_access(5) マニュアルページで解説される %<letter> 展開を行った後、
|
|
指定したシェルコマンドを子プロセスで実行します。
|
|
コマンドの実行は stdin, stdout, stderr を null デバイスに接続して
|
|
行われますので、
|
|
クライアントホストとの会話が混乱することはありません。例えば、
|
|
.sp
|
|
.nf
|
|
.ti +3
|
|
spawn (/some/where/safe_finger -l @%h | /usr/ucb/mail root) &
|
|
.fi
|
|
.sp
|
|
は、%h をリモートホストの名前またはアドレスに置換した後、
|
|
シェルコマンド "safe_finger -l @%h | mail root" を、
|
|
バックグラウンドの子プロセスで実行します。
|
|
.sp
|
|
この例では、通常の "finger" コマンドではなく、
|
|
"safe_finger" コマンドを使用しています。
|
|
これにより、
|
|
finger サーバから送られるデータに起因して発生し得るダメージを限定します。
|
|
"safe_finger" コマンドは、デーモンラッパパッケージの一部です。
|
|
これは、通常の finger コマンドを包んで、
|
|
リモートホストから送られるデータをフィルタします。
|
|
.IP "twist shell_command"
|
|
hosts_access(5) マニュアルページで解説される %<letter> 展開を行った後、
|
|
現在のプロセスを、指定したシェルコマンドで置き換えます。
|
|
stdin, stdout, stderr は クライアントプロセスに接続されます。
|
|
このオプションは、ルールの最後に登場する必要があります。
|
|
.sp
|
|
実際に ftp デーモンを実行する代わりに、
|
|
カスタマイズした中継 (bounce) メッセージを送るには、次のようにします:
|
|
.sp
|
|
.nf
|
|
.ti +3
|
|
in.ftpd : ... : twist /bin/echo 421 Some bounce message
|
|
.fi
|
|
.sp
|
|
クライアントプロセスと対話する別の方法としては、
|
|
後述の \fIbanners\fR オプションを参照してください。
|
|
.sp
|
|
コマンドライン配列やプロセスの環境を汚染せずに、
|
|
/some/other/in.telnetd を実行するには、次のようにします:
|
|
.sp
|
|
.nf
|
|
.ti +3
|
|
in.telnetd : ... : twist PATH=/some/other; exec in.telnetd
|
|
.fi
|
|
.sp
|
|
警告: UDP サービスでは、
|
|
標準 I/O や read(2)/write(2) ルーチンを使用してクライアントプロセスと
|
|
通信するプログラムを、twist の対象としてはなりません。
|
|
UDP では、他の I/O プリミティブを必要とするからです。
|
|
.SH ネットワークオプション
|
|
.IP "keepalive"
|
|
サーバがクライアントに対して定期的にメッセージを送るようにします。
|
|
クライアントが応答しないとき、接続が断たれたものとみなされます。
|
|
ユーザが、サーバに接続したままマシンの電源を落す場合に、
|
|
keepalive オプションが有用です。
|
|
keepalive オプションは、データグラム (UDP) サービスには使えません。
|
|
.IP "linger number_of_seconds"
|
|
サーバプロセスが接続を閉じた後のどれだけの期間、
|
|
未配送のデータをカーネルが配送しようとするかを指定します。
|
|
.SH ユーザ名検索
|
|
.IP "rfc931 [ timeout_in_seconds ]"
|
|
RFC 931 (TAP, IDENT, RFC 1413) を使用して、
|
|
クライアントのユーザ名を検索します。
|
|
サービスが TCP 以外の配送をベースにしている場合には、
|
|
このオプションはとくに断りなく無視されます。
|
|
このオプションを指定することにより、
|
|
クライアントシステムが RFC 931 (IDENT など) 準拠のデーモンを実行することを
|
|
必要とし、非 UNIX クライアントからの接続に対しては大きな遅延を生じさせ得ます。
|
|
タイムアウト期間の指定は、省略可能です。
|
|
タイムアウト値を指定しないと、
|
|
コンパイル時に定義されたデフォルト値が使用されます。
|
|
.SH その他
|
|
.IP "banners /some/directory"
|
|
`/some/directory' 内で、デーモンプロセスと同じ名前のファイルを探し
|
|
(例えば telnet サービスでは in.telnetd です)、
|
|
その内容をクライアントに対してコピーします。
|
|
改行文字は復改と改行へ置換され、
|
|
%<letter> シーケンスは展開されます
|
|
(hosts_access(5) マニュアルページを参照してください)。
|
|
.sp
|
|
tcp ラッパのソースコード配布では、
|
|
banners の管理に有用なサンプル makefile (Banners.Makefile) を提供しています。
|
|
.sp
|
|
警告: banners は、コネクション指向 (TCP) ネットワークサービスのみで
|
|
サポートされます。
|
|
.IP "nice [ number ]"
|
|
プロセスの nice 値 (デフォルトは 10 です) を変更します。
|
|
他のプロセスにより多くの CPU 資源を使うには、正の値を指定してください。
|
|
.IP "setenv name value"
|
|
(name, value) のペアを、プロセスの環境に挿入します。
|
|
value は %<letter> 展開の対象となり、空白文字を含んでもかまいません
|
|
(先頭と末尾の空白は取り除かれます)。
|
|
.sp
|
|
警告: 多くのネットワークデーモンは、
|
|
login やシェルプロセスを生成する前に、自己の環境をリセットします。
|
|
.IP "umask 022"
|
|
シェル組み込みの umask コマンドに似ています。
|
|
022 という umask は、
|
|
グループおよび全世界の書き込み権限を持つファイルの生成を防ぎます。
|
|
umask 引数は 8 進数である必要があります。
|
|
.IP "user nobody"
|
|
.IP "user nobody.kmem"
|
|
"nobody" のユーザ id (またはユーザ "nobody" でグループ "kmem")
|
|
の権限をプロセスに設定します。
|
|
最初の形式は、全サービスを root 権限で実行する inetd の実装において有用です。
|
|
2 番目の形式は、特殊なグループ権限のみを必要とするサービスに有用です。
|
|
.SH 診断
|
|
アクセス制御ルールに文法エラーがあるとき、
|
|
エラーは syslog デーモンに報告されます。このとき、
|
|
その後のオプションは無視され、サービスは拒否されます。
|
|
.SH 関連項目
|
|
hosts_access(5), デフォルトのアクセス制御言語
|
|
.SH 作者
|
|
.na
|
|
.nf
|
|
Wietse Venema (wietse@wzv.win.tue.nl)
|
|
Department of Mathematics and Computing Science
|
|
Eindhoven University of Technology
|
|
Den Dolech 2, P.O. Box 513,
|
|
5600 MB Eindhoven, The Netherlands
|
|
\" @(#) hosts_options.5 1.10 94/12/28 17:42:28
|