fingerd —
リモートユーザー情報のサーバ
fingerd
[
-wulf]
[
-pL
path]
[
-t
timeout]
fingerd
は、多くのネットワークサイトの
“finger”
プログラムのインターフェースを提供する
RFC1196
に基づく簡単なデーモンである。
このプログラムは、ある時点でのシステムと特定の人物の両方について、
親しみやすく人が読みやすい状態レポートを返す。
-w
オプションが指定されると、
fingerd
が実行されているシステムの
(稼働時間、
オペレーティングシステムの名前・リリース番号といった)
いくつかの情報を表示する
“Welcome to ...”
というバーナーをリモートユーザーに表示する。
このバーナーはクラッカーにとって有用となりえる情報を与えるので、
セキュリティ上のリスクと考えるサイトもあるかもしれない。
-u
オプションが指定されると、
“finger @host”
という形式のリクエストは拒否される。
-l
オプションが指定されると、リクエストされたという情報がログに記録される。
このオプションは、ユーザーのプライバシーの侵害になるかもしれないので、
複数のユーザーが使う計算機では使用すべきでない。
-f
オプションが指定されると、
finger のフォワード (user@host1@host2)
が許可される。
ファイアーウォールの後ろにある計算機に対しては役に立つが、
セキュリティやリソースの点から考えると、賢明ではないかもしれない。
-p
オプションを使うと、fingerd
が “finger”
プログラムを見つけるために、別な場所を指定することが可能になる。
-L
オプションと等価である。
-t
オプションにより、接続を閉じる前にリクエストを待つ時間を指定する。
値が 0
の場合は、永久に待ち続ける。
デフォルトは 60
秒である。
fingerd のオプションは
/etc/inetd.conf
で指定すべきである。
finger
プロトコルは、大部分がコマンド引き数の指定で構成されている。
“スーパーサーバ”
である
inetd(8)
は、79
番ポートで受け取った
TCP
リクエストに対して、
fingerd
を実行する。
一度接続されると、
fingerd は ⟨CRLF⟩
で終端されている 1
行を読み込む。
この行は
finger(1)
に渡される。 fingerd
は、出力が終るとすぐに接続を閉じる。
行が空行の場合
(つまり ⟨CRLF⟩
だけが送られた場合)、
finger は、
“デフォルトの”
報告
(その時点でシステムにログインしている全員のリスト)
を返す。
この機能は、
-u
オプションを使うと無効にされる。
(例えば eric⟨CRLF⟩
のように)
ユーザー名が指定されると、
そのユーザーがログインしているか否かに係わらず、
指定した特定のユーザーについてのみ詳細な情報をリストする。
コマンドラインで指定できる
“名前” は
“ログイン名” と
“ユーザー名”
のどちらでもよい。
名前が曖昧な場合は、マッチするもの全てについての情報が返される。
finger(1),
inetd(8)
サーバに対して、 TIP
や、それと同じくらいに見識の狭い
TELNETプロトコル
を使ったユーザープログラムで接続すると、
サーバーにオプションネゴシエーションを送る意味のない試みをすることになり、
不正なコマンドライン解釈を行わせることになる。
finger デーモンは
4.3BSD
で登場した。
この man
ページの翻訳にあたり、
FreeBSD jpman project <
http://www.jp.freebsd.org/man-jp/>
による翻訳を参考にさせていただいた。