fingerコマンドにユーザアカウントを指定して実行すると、名前、ホームディレクトリ、シェル、最終ログイン日時などが表示され、ユーザの情報を取得することができます。
コマンドの書式は以下の通りです。
finger ユーザアカウント名
以下、実際にfingerコマンドを実行した例です。
$ finger sakura Login: sakura Name: (null) Directory: /home/sakura Shell: /bin/bash Last login 月 9月 13 13:38 2010 (JST) on pts/5 from localhost.localdomain No mail. No Plan.
デフォルトでは外部からの問い合わせやホスト指定をした場合はユーザ情報を取得できませんでした。
初期状態では、ネットワーク越しでユーザ情報を調べることができません。(他のサーバからの問い合わせも不可)
以下は、IPアドレスが192.168.0.100のマシンのユーザ情報を取得しようとすると以下のようにエラーとなります。
$ finger @192.168.0.100 finger: cannot create socket / connect host
これは、セキュリティ上からデフォルトでは外部からの問い合わせなどをできないようになっています。
以下のようなfingerコマンドを実行するには、finger serverを起動する必要があります。
finger serverのインストール方法および設定を以下に記します。
以下、CentOSを利用したfinger serverのインストール例および設定例です。
yum install finger-server依存パッケージとしてxinetdがインストールされていない場合finger-serverパッケージと一緒にxinetdパッケージもインストールされます。
# cat /etc/xinetd.d/finger
# default: on
# description: The finger server answers finger requests. Finger is \
# a protocol that allows remote users to see information such \
# as login name and last login time for local users.
service finger
{
socket_type = stream
wait = no
user = nobody
server = /usr/sbin/in.fingerd
disable = no
}
/etc/init.d/xinetd restart
上記の操作によりfinger-serverが起動し、以下のようにコマンドを実行することができます。
以下、外部マシンからfingerにより問い合わせた実行結果です。
[sakura@ubuntu ~]$ finger @centos
Login Name Tty Idle Login Time Office Office Phone Host
tsubaki pts/1 Nov 30 10:57
(:1.0)
[sakura@ubuntu ~]$ finger sakura@centos
Login: sakura Name: (null)
Directory: /home/sakura Shell: /bin/bash
On since Wed Nov 30 10:57 (JST) on pts/1 from :1.0
2 minutes 33 seconds idle
On since Wed Nov 30 11:15 (JST) on pts/2 from :1.0
No mail.
No Plan.