finger
概要

利用者がfingerコマンドを実行すると、対象ホストの79番ポートへ接続し、1行の問い合わせを送信する。サーバ側では「fingerd」(finger daemon)と呼ばれるプログラムが応答し、処理を終えると接続を終了する。
返される情報の内容は実装や設定によって異なるが、ユーザーIDや氏名(登録されている場合)、連絡先メールアドレス、ログイン中の端末、最後にキー操作をしてからの経過時間などが含まれる。これらはあくまで本人が公開している範囲の情報であり、利用者自身が設定した簡単な自己紹介文を「plan」として表示する実装も存在する。
歴史
この仕組みは1971年にレス・アーニスト(Les D. Earnest)氏が考案し、デービッド・ジマーマン(David Zimmerman)氏がその仕様をまとめて1977年にRFC 742として最初に標準化された。その後、1990年のRFC 1194やRFC 1196を経て、1991年のRFC 1288で仕様が整理された。RFC 1288にはホスト間でfingerの問い合わせを転送する機能も規定されている。これらの古いRFCは後に新しい仕様で置き換えられている。
考案当時のIPネットワークはARPANET時代の大学や研究機関など、限られた組織を結ぶものであった。利用者同士の所属や身元が比較的明確だったため、離れた場所にいる相手の在席状況や連絡先を管理者や利用者が相互に確認する手段として重宝された。
インターネットが一般に開放され、不特定多数が接続する環境になると、事情は一変した。氏名やメールアドレスといった個人情報を外部から誰でも照会できる状態は、プライバシー保護の観点で問題視されるようになった。また、finger経由で得られる情報が組織内の人物になりすますソーシャルエンジニアリング攻撃の手がかりに利用されたり、finger自体の脆弱性が侵入経路として突かれたりする事例も生じた。1988年に広範囲のシステムに被害を与えた「モリスワーム」(Morris worm)も、fingerdの脆弱性を悪用したことで知られている。
こうした経緯から、1990年代後半にかけて多くのサイトがfingerサービスの提供を停止し、外部からのfingerパケットをファイアウォールで遮断する対応が広がった。現在ではインターネットに接続されたホストでfingerが公開されている例はほとんど見られず、利用されるとしても管理されたネットワーク内などに限定されており、実運用ではほぼ使われない古いプロトコルとなっている。