File: inetd.8

package info (click to toggle)
manpages-ja 0.5.0.0.20221215%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 29,304 kB
  • sloc: perl: 161; makefile: 61
file content (325 lines) | stat: -rw-r--r-- 11,818 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
.\" Copyright (c) 1985, 1991 The Regents of the University of California.
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\"    notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\"    notice, this list of conditions and the following disclaimer in the
.\"    documentation and/or other materials provided with the distribution.
.\" 3. All advertising materials mentioning features or use of this software
.\"    must display the following acknowledgement:
.\"	This product includes software developed by the University of
.\"	California, Berkeley and its contributors.
.\" 4. Neither the name of the University nor the names of its contributors
.\"    may be used to endorse or promote products derived from this software
.\"    without specific prior written permission.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\"     from: @(#)inetd.8	6.7 (Berkeley) 3/16/91
.\"	$Id: inetd.8,v 1.1.1.1 2000/10/19 08:22:16 ysato Exp $
.\" jpman %Id: inetd.8,v 1.2 1997/05/16 07:22:24 yugawa Stab %
.\"
.\" Modified for JM style on Tue Dec 14 18:07:00 JST 1999
.\"	by Tatsuo SEKINE <tsekine@isoternet.org>
.\" Update and Modified on Tue Mar 13 21:08:37 JST 2001
.\"     by Yuichi SATO <sato@complex.eng.hokudai.ac.jp>
.\"
.\"WORD: socket listen queue	ソケット監視キュー
.\"WORD: suffix		サフィックス
.\"WORD: group id	グループ ID
.\"
.Dd August 22, 1999
.Dt INETD 8
.Os "Linux NetKit (0.17)"
.Sh 名前
.Nm inetd
.Nd インターネット
.Dq スーパーサーバー
.Sh 書式
.Nm inetd
.Op Fl di
.Op Fl q Ar queuelength
.Op Ar configuration file
.Sh 説明
.Nm inetd
は通常ブート時に
.Pa /etc/rc.local
によって起動される
.Ns ( Xr rc 8
を参照)。(訳注: ディストリビューションによって異なる)。
使用している
.Xr init 8
が任意のデーモンを再起動できる場合、
.Nm inetd
は (/etc/rc.local ではなく) init から実行できる。
そうすれば、クラッシュした場合に再起動できる。
この場合は
.Nm inetd
が自身をバックグラウンドに送るのを防ぐために
.Fl i
オプションを使わなければならない。
さもないと init は混乱してしまう。
.Pp
実行されている間
.Nm inetd 
は定められたインターネットソケットを監視し、接続要求を待つ。
監視しているソケットに対して接続要求が出されると、
そのソケットに対応したサービスを判定し、
サービスを提供するプログラムを起動する。
サービスプログラムが完了すると、
.Nm inetd
は再びソケットの監視を行なう。
後述するような例外もある。
.Nm inetd
を用いれば 1 つのデーモンで
複数のサービスプログラムを起動することができるので、
システムの負荷を軽減することができる。
.Ss オプション
.Nm inetd
に指定できるオプションを示す:
.Bl -tag -width Ds
.It Fl d
いくつかのデバッグを有効にして、
inetd をデバッガから実行されたように動作させる。
暗黙のうちに
.Fl i
も指定される。
.It Fl i
バックグラウンドにしない。
.Xr init 8
から実行するためにある。
.It Fl q Ar queuelength
ソケットの監視キューの大きさを指定された値に設定する。
デフォルトは 128。
.El
.Ss 設定
.Nm inetd
は実行時に設定情報を設定ファイルから読み込む。
デフォルトでは設定ファイルは
.Pa /etc/inetd.conf
である。
設定ファイルの各フィールドにはエントリが 1 つなければならない。
各フィールドのエントリはタブやスペースで区切る。
コメントは行頭に ``#'' をつける。
設定ファイルのフィールドは次の通り:
.Pp
.Bd -unfilled -offset indent -compact
サービス名[@ホスト名]
ソケットタイプ
プロトコル
wait/nowait[.max]
ユーザー名[.グループ名]
サーバープログラム名
サーバープログラム引き数
.Ed
.Pp
.Em Sun-RPC
ベースのサービスを記述する場合には、次のエントリを記述する。
.Pp
.Bd -unfilled -offset indent -compact
サービス名/バージョン[@ホスト名]
ソケットタイプ
RPC/プロトコル
wait/nowait[.max]
ユーザー名[.グループ名]
サーバープログラム名
サーバープログラム引き数
.Ed
.Pp
.Em サービス名
のエントリには、
.Pa /etc/services
ファイルに記述されているサービス名が記述される。
.Dq 内部
サービス (後述) については、
名前としてそのサービスの公式名
(すなわち
.Pa /etc/services
内の最初のエントリ) を指定
.Em しなければならない。
.Em Sun-RPC
ベースのサービスを指定するためには、このフィールドは
.Pa /etc/rpc
に書かれた有効な RPC サービス名でなければならない。
.Dq /
の右の部分が RPC のバージョン番号である。
バージョン番号は、数字もしくは、バージョンの範囲 (レンジ) で指定する。
範囲を指定する場合は低い番号から高い番号を指定する。
たとえば
.Dq rusers/1-3
のように記述する。
.Pp
サービス名に
.Em @hostname
という形式の文字列が追加された場合、
inetd は
.Em hostname
に対応する特定の IP アドレスからの接続についてのみ、
サービスポートをバインドさせる (全てのアドレスからの接続は listen しない)。
異なるアドレスに対して使用したいだけ指定できるので、
``仮想ホスト''サービスを設定できる。
望むだけの数の特定のアドレスを監視できるが、
カーネルによる制限によって、
.Nm inetd
がそのポートを特定のアドレスに対して (あるいは同時に一般のアドレスに対して)
監視するのが禁止されることもある。
.Em hostname
はローカルシステムのインターフェースに関連づけられた、
解決可能なホスト名または IP アドレスにすべきである。
.Pp
.Em ソケットタイプ
のエントリは、
.Dq stream ,
.Dq dgram ,
.Dq raw ,
.Dq rdm ,
.Dq seqpacket
のいずれかで、それぞれソケットが
stream, datagram, raw, reliably delivered message, sequenced packet socket
である場合に対応している。
.Pp
.Em プロトコル
のエントリには、
.Pa /etc/protocols
に記述されている有効なプロトコル名が記述される。
例えば
.Dq tcp
.Dq udp
などである。
RPC ベースのサービスの場合、
.Dq rpc/tcp
.Dq rpc/udp 
のような指定になる。
.Pp
.Em wait/nowait
エントリは、datagram ソケットにのみ適用できる
(その他のソケットでは、この場所は
.Dq nowait
でなければならない)。
もし datagram サーバーが相手に接続したときにソケットを解放するなら、
.Nm inetd
はソケットに対するメッセージをさらに受けることができる。
このようなサーバーは
.Dq マルチスレッド
サーバーと呼ばれ、
.Dq nowait
エントリを指定しなければならない。
入って来る全ての datagram を処理し、
時間切れまで動作する datagram サーバーは、
.Dq シングルスレッド
サーバーと呼ばれ、
.Dq wait
エントリを指定しなければならない。
.Xr comsat 8 ,
.Pq Xr biff 1 ,
.Xr talkd 8
は後者のタイプの datagram サーバーの例である。
.Xr tftpd 8
は例外である; これは疑似接続を確立する datagram サーバーである。
競合を避けるために
.Dq wait
が指定されなければならない;
サーバーは最初のパケットを読み込み、新たなソケットを作成し、
.Nm inetd
が新たなサーバーを起動するような接続要求をチェックできるように、
fork して終了する。
オプションのサフィックス (接尾辞) 
.Dq max
.Ns ( Dq wait
または
.Dq nowait
からドット``.''で分けられる) は、60 秒の間に最大いくつのサーバーが
.Nm inetd
から起動できるかを指定する。
省略された場合の、
.Dq max
のデフォルトは 40 である。
.Pp
.Em user
エントリには、サーバーを実行するユーザー名を書く。
これによりサーバーを root よりも低い権限で実行できる。
ユーザー名に続いてドット``.'' を付加して、
その後ろにグループ名を指定することができる。
これによりサーバーを password ファイルで指定される
(プライマリの) グループ ID とは違うグループ ID で実行できる。
グループ名が指定され、ユーザーが root 以外だった場合は、
そのユーザの補助グループも (グループアクセスリストに) 設定されることになる。
.Pp
.Em サーバープログラム名
のエントリには、ソケットに要求があったとき
.Nm inetd
が起動し、当該エントリのサービスを提供する
サーバープログラムのパス名を指定する。
.Nm inetd
内にすでに実装されているサービスを提供する場合には、サーバープログラムとして
.Dq internal
を指定する。
.Pp
.Em サーバープログラム引数
のエントリには、サーバーを起動する際の引数を、
サーバープログラムの起動文字列である argv[0] を含めて記述する。
.Nm inetd
内に実装されているサービスを提供する場合には、サーバープログラム引数として
.Dq internal
を指定する。
.Ss 組み込み関数
.Nm inetd
は、内蔵ルーチンを用いて簡単なサービスを自身で提供する。
これらのサービスとは
.Dq echo ,
.Dq discard ,
.Dq chargen
(文字生成),
.Dq daytime
(人間が読む形式で時間を出力),
.Dq time
(機械可読形式の時間。1900 年 1 月 1 日 0 時からの経過秒数を出力)
である。
これらのサービスは TCP ベースである。
これらのサービスの詳細については適切な
.Tn RFC
ドキュメントを参照のこと。
.Pp
.Dv SIGHUP
を受けとると、
.Nm inetd
は、設定ファイルを再度読み込む。
設定ファイルを再読み込みするときに、サービスを追加・削除・変更できる。
.Nm inetd
はファイル
.Pa /var/run/inetd.pid
を作成し、そこにプロセス ID を記録する。
.Sh 関連項目
.Xr comsat 8 ,
.Xr fingerd 8 ,
.Xr ftpd 8 ,
.Xr rexecd 8 ,
.Xr rlogind 8 ,
.Xr rshd 8 ,
.Xr telnetd 8 ,
.Xr tftpd 8
.Sh 履歴
.Nm
コマンドは
.Bx 4.3
から登場した。
.Em Sun-RPC
ベースのサービスのサポートは、
.Em SunOS 4.1
で提供されたものにならって作られた。