Manpages

名 前

inetd — イ ン タ ー ネ ッ ト ’’ス ー パ ー サ ー バ ー ’’ 書 式
inetd
[−di] [−q queuelength] [configuration file] 説 明
inetd
は 通 常 ブ ー ト 時 に /etc/rc.local に よ っ て 起 動 さ れ る (rc(8) を 参 照 )。 (訳 注 : デ ィ ス ト リ ビ ュ ー シ ョ ン に よ っ て 異 な る )。 使 用 し て い る init(8) が 任 意 の デ ー モ ン を 再 起 動 で き る 場 合 、 inetd は (/etc/rc.local で は な く ) init か ら 実 行 で き る 。 そ う す れ ば 、 ク ラ ッ シ ュ し た 場 合 に 再 起 動 で き る 。 こ の 場 合 は inetd が 自 身 を バ ッ ク グ ラ ウ ン ド に 送 る の を 防 ぐ た め に −i オ プ シ ョ ン を 使 わ な け れ ば な ら な い 。 さ も な い と init は 混 乱 し て し ま う 。 実 行 さ れ て い る 間 inetd は 定 め ら れ た イ ン タ ー ネ ッ ト ソ ケ ッ ト を 監 視 し 、 接 続 要 求 を 待 つ 。 監 視 し て い る ソ ケ ッ ト に 対 し て 接 続 要 求 が 出 さ れ る と 、 そ の ソ ケ ッ ト に 対 応 し た サ ー ビ ス を 判 定 し 、 サ ー ビ ス を 提 供 す る プ ロ グ ラ ム を 起 動 す る 。 サ ー ビ ス プ ロ グ ラ ム が 完 了 す る と 、 inetd は 再 び ソ ケ ッ ト の 監 視 を 行 な う 。 後 述 す る よ う な 例 外 も あ る 。 inetd を 用 い れ ば 1 つ の デ ー モ ン で 複 数 の サ ー ビ ス プ ロ グ ラ ム を 起 動 す る こ と が で き る の で 、 シ ス テ ム の 負 荷 を 軽 減 す る こ と が で き る 。 オ プ シ ョ ン
inetd
に 指 定 で き る オ プ シ ョ ン を 示 す :

−d い く つ か の デ バ ッ グ を 有 効 に し て 、 inetd を デ バ ッ ガ か ら 実 行 さ れ た よ う に 動 作 さ せ る 。 暗 黙 の う ち に −i も 指 定 さ れ る 。

−i バ ッ ク グ ラ ウ ン ド に し な い 。 init(8) か ら 実 行 す る た め に あ る 。

−q queuelength ソ ケ ッ ト の 監 視 キ ュ ー の 大 き さ を 指 定 さ れ た 値 に 設 定 す る 。 デ フ ォ ル ト は 128。 設 定

inetd は 実 行 時 に 設 定 情 報 を 設 定 フ ァ イ ル か ら 読 み 込 む 。 デ フ ォ ル ト で は 設 定 フ ァ イ ル は /etc/inetd.conf で あ る 。 設 定 フ ァ イ ル の 各 フ ィ ー ル ド に は エ ン ト リ が 1 つ な け れ ば な ら な い 。 各 フ ィ ー ル ド の エ ン ト リ は タ ブ や ス ペ ー ス で 区 切 る 。 コ メ ン ト は 行 頭 に ’’#’’ を つ け る 。 設 定 フ ァ イ ル の フ ィ ー ル ド は 次 の 通 り : サ ー ビ ス 名 [@ホ ス ト 名 ] ソ ケ ッ ト タ イ プ プ ロ ト コ ル
wait/nowait[.max] ユ ー ザ ー 名
[.グ ル ー プ 名 ] サ ー バ ー プ ロ グ ラ ム 名 サ ー バ ー プ ロ グ ラ ム 引 き 数

Sun-RPC ベ ー ス の サ ー ビ ス を 記 述 す る 場 合 に は 、 次 の エ ン ト リ を 記 述 す る 。 サ ー ビ ス 名 /バ ー ジ ョ ン [@ホ ス ト 名 ] ソ ケ ッ ト タ イ プ
RPC/プ ロ ト コ ル
wait/nowait[.max] ユ ー ザ ー 名
[.グ ル ー プ 名 ] サ ー バ ー プ ロ グ ラ ム 名 サ ー バ ー プ ロ グ ラ ム 引 き 数 サ ー ビ ス 名 の エ ン ト リ に は 、 /etc/services フ ァ イ ル に 記 述 さ れ て い る サ ー ビ ス 名 が 記 述 さ れ る 。 ’’内 部 ’’ サ ー ビ ス (後 述 ) に つ い て は 、 名 前 と し て そ の サ ー ビ ス の 公 式 名 (す な わ ち /etc/services 内 の 最 初 の エ ン ト リ ) を 指 定 し な け れ ば な ら な い 。 Sun-RPC ベ ー ス の サ ー ビ ス を 指 定 す る た め に は 、 こ の フ ィ ー ル ド は /etc/rpc に 書 か れ た 有 効 な RPC サ ー ビ ス 名 で な け れ ば な ら な い 。 ’’/’’ の 右 の 部 分 が RPC の バ ー ジ ョ ン 番 号 で あ る 。 バ ー ジ ョ ン 番 号 は 、 数 字 も し く は 、 バ ー ジ ョ ン の 範 囲 (レ ン ジ ) で 指 定 す る 。 範 囲 を 指 定 す る 場 合 は 低 い 番 号 か ら 高 い 番 号 を 指 定 す る 。 た と え ば ’’rusers/1-3’’ の よ う に 記 述 す る 。 サ ー ビ ス 名 に @hostname と い う 形 式 の 文 字 列 が 追 加 さ れ た 場 合 、 inetd は hostname に 対 応 す る 特 定 の IP ア ド レ ス か ら の 接 続 に つ い て の み 、 サ ー ビ ス ポ ー ト を バ イ ン ド さ せ る (全 て の ア ド レ ス か ら の 接 続 は listen し な い )。 異 な る ア ド レ ス に 対 し て 使 用 し た い だ け 指 定 で き る の で 、 ’’仮 想 ホ ス ト ’’サ ー ビ ス を 設 定 で き る 。 望 む だ け の 数 の 特 定 の ア ド レ ス を 監 視 で き る が 、 カ ー ネ ル に よ る 制 限 に よ っ て 、 inetd が そ の ポ ー ト を 特 定 の ア ド レ ス に 対 し て (あ る い は 同 時 に 一 般 の ア ド レ ス に 対 し て ) 監 視 す る の が 禁 止 さ れ る こ と も あ る 。 hostname は ロ ー カ ル シ ス テ ム の イ ン タ ー フ ェ ー ス に 関 連 づ け ら れ た 、 解 決 可 能 な ホ ス ト 名 ま た は IP ア ド レ ス に す べ き で あ る 。 ソ ケ ッ ト タ イ プ の エ ン ト リ は 、 ’’stream’’, ’’dgram’’, ’’raw’’, ’’rdm’’, ’’seqpacket’’ の い ず れ か で 、 そ れ ぞ れ ソ ケ ッ ト が stream, datagram, raw, reliably delivered message, sequenced packet socket で あ る 場 合 に 対 応 し て い る 。 プ ロ ト コ ル の エ ン ト リ に は 、 /etc/protocols に 記 述 さ れ て い る 有 効 な プ ロ ト コ ル 名 が 記 述 さ れ る 。 例 え ば ’’tcp’’ や ’’udp’’ な ど で あ る 。 RPC ベ ー ス の サ ー ビ ス の 場 合 、 ’’rpc/tcp’’ や ’’rpc/udp’’ の よ う な 指 定 に な る 。

wait/nowait エ ン ト リ は 、 datagram ソ ケ ッ ト に の み 適 用 で き る (そ の 他 の ソ ケ ッ ト で は 、 こ の 場 所 は ’’nowait’’ で な け れ ば な ら な い )。 も し datagram サ ー バ ー が 相 手 に 接 続 し た と き に ソ ケ ッ ト を 解 放 す る な ら 、 inetd は ソ ケ ッ ト に 対 す る メ ッ セ ー ジ を さ ら に 受 け る こ と が で き る 。 こ の よ う な サ ー バ ー は ’’マ ル チ ス レ ッ ド ’’ サ ー バ ー と 呼 ば れ 、 ’’nowait’’ エ ン ト リ を 指 定 し な け れ ば な ら な い 。 入 っ て 来 る 全 て の datagram を 処 理 し 、 時 間 切 れ ま で 動 作 す る datagram サ ー バ ー は 、 ’’シ ン グ ル ス レ ッ ド ’’ サ ー バ ー と 呼 ば れ 、 ’’wait’’ エ ン ト リ を 指 定 し な け れ ば な ら な い 。 comsat(8), (biff(1)), talkd(8) は 後 者 の タ イ プ の datagram サ ー バ ー の 例 で あ る 。 tftpd(8) は 例 外 で あ る ; こ れ は 疑 似 接 続 を 確 立 す る datagram サ ー バ ー で あ る 。 競 合 を 避 け る た め に ’’wait’’ が 指 定 さ れ な け れ ば な ら な い ; サ ー バ ー は 最 初 の パ ケ ッ ト を 読 み 込 み 、 新 た な ソ ケ ッ ト を 作 成 し 、 inetd が 新 た な サ ー バ ー を 起 動 す る よ う な 接 続 要 求 を チ ェ ッ ク で き る よ う に 、 fork し て 終 了 す る 。 オ プ シ ョ ン の サ フ ィ ッ ク ス (接 尾 辞 ) ’’max’’ (’’wait’’ ま た は ’’nowait’’ か ら ド ッ ト ’’.’’で 分 け ら れ る ) は 、 60 秒 の 間 に 最 大 い く つ の サ ー バ ー が inetd か ら 起 動 で き る か を 指 定 す る 。 省 略 さ れ た 場 合 の 、 ’’max’’ の デ フ ォ ル ト は 40 で あ る 。

user エ ン ト リ に は 、 サ ー バ ー を 実 行 す る ユ ー ザ ー 名 を 書 く 。 こ れ に よ り サ ー バ ー を root よ り も 低 い 権 限 で 実 行 で き る 。 ユ ー ザ ー 名 に 続 い て ド ッ ト ’’.’’ を 付 加 し て 、 そ の 後 ろ に グ ル ー プ 名 を 指 定 す る こ と が で き る 。 こ れ に よ り サ ー バ ー を password フ ァ イ ル で 指 定 さ れ る (プ ラ イ マ リ の ) グ ル ー プ ID と は 違 う グ ル ー プ ID で 実 行 で き る 。 グ ル ー プ 名 が 指 定 さ れ 、 ユ ー ザ ー が root 以 外 だ っ た 場 合 は 、 そ の ユ ー ザ の 補 助 グ ル ー プ も (グ ル ー プ ア ク セ ス リ ス ト に ) 設 定 さ れ る こ と に な る 。 サ ー バ ー プ ロ グ ラ ム 名 の エ ン ト リ に は 、 ソ ケ ッ ト に 要 求 が あ っ た と き inetd が 起 動 し 、 当 該 エ ン ト リ の サ ー ビ ス を 提 供 す る サ ー バ ー プ ロ グ ラ ム の パ ス 名 を 指 定 す る 。 inetd 内 に す で に 実 装 さ れ て い る サ ー ビ ス を 提 供 す る 場 合 に は 、 サ ー バ ー プ ロ グ ラ ム と し て ’’internal’’ を 指 定 す る 。 サ ー バ ー プ ロ グ ラ ム 引 数 の エ ン ト リ に は 、 サ ー バ ー を 起 動 す る 際 の 引 数 を 、 サ ー バ ー プ ロ グ ラ ム の 起 動 文 字 列 で あ る argv[0] を 含 め て 記 述 す る 。 inetd 内 に 実 装 さ れ て い る サ ー ビ ス を 提 供 す る 場 合 に は 、 サ ー バ ー プ ロ グ ラ ム 引 数 と し て ’’internal’’ を 指 定 す る 。 組 み 込 み 関 数
inetd
は 、 内 蔵 ル ー チ ン を 用 い て 簡 単 な サ ー ビ ス を 自 身 で 提 供 す る 。 こ れ ら の サ ー ビ ス と は ’’echo’’, ’’discard’’, ’’chargen’’ (文 字 生 成 ), ’’daytime’’ (人 間 が 読 む 形 式 で 時 間 を 出 力 ), ’’time’’ (機 械 可 読 形 式 の 時 間 。 1900 年 1 月 1 日 0 時 か ら の 経 過 秒 数 を 出 力 ) で あ る 。 こ れ ら の サ ー ビ ス は TCP ベ ー ス で あ る 。 こ れ ら の サ ー ビ ス の 詳 細 に つ い て は 適 切 な RFC ド キ ュ メ ン ト を 参 照 の こ と 。

SIGHUP を 受 け と る と 、 inetd は 、 設 定 フ ァ イ ル を 再 度 読 み 込 む 。 設 定 フ ァ イ ル を 再 読 み 込 み す る と き に 、 サ ー ビ ス を 追 加 ・ 削 除 ・ 変 更 で き る 。 inetd は フ ァ イ ル /var/run/inetd.pid を 作 成 し 、 そ こ に プ ロ セ ス ID を 記 録 す る 。 関 連 項 目
comsat(8), fingerd(8), ftpd(8), rexecd(8), rlogind(8), rshd(8), telnetd(8), tftpd(8) 履 歴
inetd
コ マ ン ド は 4.3BSD か ら 登 場 し た 。 Sun-RPC ベ ー ス の サ ー ビ ス の サ ポ ー ト は 、 SunOS 4.1 で 提 供 さ れ た も の に な ら っ て 作 ら れ た 。