此処に あるファイルに ついて
nyan:/etc/ssh# ls -l
total 152
-rw-r--r-- 1 root root 111892 Sep 2 2004 moduli
-rw-r--r-- 1 root root 1159 Sep 2 2004 ssh_config
-rw------- 1 root root 668 Feb 24 09:03 ssh_host_dsa_key
-rw-r--r-- 1 root root 600 Feb 24 09:03 ssh_host_dsa_key.pub
-rw------- 1 root root 525 Feb 24 09:03 ssh_host_key
-rw-r--r-- 1 root root 329 Feb 24 09:03 ssh_host_key.pub
-rw------- 1 root root 887 Feb 24 09:03 ssh_host_rsa_key
-rw-r--r-- 1 root root 220 Feb 24 09:03 ssh_host_rsa_key.pub
-rw-r--r-- 1 root root 2204 Sep 2 2004 ssh_prng_cmds
-rw-r--r-- 1 root root 2830 Sep 2 2004 sshd_config
_key と _key.pub の 一対のものが それぞれ 秘密 と 公開の 鍵の 組合せである。プロトコル1 2 があり ssh_host_key と ssh_host_key.pub が プロトコル1 の もので ssh_host_rsa_key とssh_host_rsa_key.pub が プロトコル 2 の rsa のもの ssh_host_dsa_key とssh_host_dsa_key.pub が プロトコル 2 の dsa の もので 此の場合 インストール すると サーバー側のものは 自動的に 生成されている、従って作成するのはユーザー (クライアント)が 作成するものが 必要になる。
nyan:/etc/ssh# pwd
/etc/ssh
nyan:/etc/ssh# cat ssh_host_rsa_key.pub
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAIEAxV⁄pEW0AHRfmKmobQkIlen\
4Z1faLStYC74RcejI1nczzpf7a7lGHfNIutsj4gl+03e05Eb2PNS7thObRHWFh46bYL\
798WcQ+eDwsjoEDjpnYMCAzdqbzta⁄myQ5RNiWKis6E6VayWYx0rk0qIgGO⁄\
Jt0LDHqhzBNMyytyCCIb0E= root@nyanco
nyan:/home/nyanco/.ssh# pwd
/home/nyanco/.ssh
nyan:/home/nyanco/.ssh# ls -l
total 4
-rw------- 1 nyanco users 172 Aug 20 2002 environment
-rw-r--r-- 1 nyanco users 0 Jul 4 12:59 known_hosts
nyan:/home/nyanco/.ssh# cat environment
#
# $HOME/.ssh/environment - Environments for the ssh.
#
# Time-stamp: <2002-08-20 03:30:48 cyamauch>
PATH=/usr/local/bin:/bin:/usr/bin
HZ=100
此処には この様なファイルがある
-rw------- 1 nyanco users 172 8月 20日 2002年 environment
-rw-r--r-- 1 nyanco users 222 7月 4日 13:01 known_hosts
nyanco@lx:~/.ssh$ cat environment
#
# $HOME/.ssh/environment - Environments for the ssh.
#
# Time-stamp: <2002-08-20 03:30:48 cyamauch>
PATH=/usr/local/bin:/bin:/usr/bin
HZ=100
nyanco@lx:~/.ssh$ echo "$PATH"
/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/local/netpbm:\
/usr/openwin/bin:/usr/games/bin:/usr/games:/opt/kde/bin
PATH の 内容は 異なってるようである。
nyanco@lx:~/.ssh$ cat known_hosts
111.222.333.444 ssh-rsa
AAAAB3NzaC1yc2EAAAABIwAAAIEAxV⁄pEW0AHRfmKmobQkIlen\
4Z1faLStYC74RcejI1nczzpf7a7lGHfNIutsj4gl+03e05Eb2PNS7thObRHWFh46bYL\
798WcQ+eDwsjoEDjpnYMCAzdqbzta⁄myQ5RNiWKis6E6VayWYx0rk0qIgGO⁄\
Jt0LDHqhzBNMyytyCCIb0E=
本来 1行 の もの (/ to ⁄)
IP アドレス : 111.222.333.444 2005年 7月 5日 (火) 19:02:51 JST 現在
$ cat /etc/HOSTNAME
nyan.crinet.ne.jp
IP アドレス : 555.666.777.888 2005年 7月 5日 (火) 21:02:51 JST 現在
$ cat /etc/HOSTNAME
lx.bcnet.ne.jp
サーバー側の ssh_host_rsa_key.pub の 内容の部分 と ユーザー(クライア ント) の known_hosts の 部分 キーの 内容は 同一であることが わかる。
つまり サーバー側の 公開鍵 ssh_host_rsa_key.pubをユーザーの known_hostsの リストに 追記する事になる
known_hostsに 追加する場合 最初に known_hosts の 内容 に 無い場合は
$ ssh -l nyanco 111.222.333.444
The authenticity of host '111.222.333.444 (111.222.333.444)' can't be established.
RSA key fingerprint is 13:92:e4:10:1f:b4:76:ef:cb:44:96:1e:65:62:eb:09.
Are you sure you want to continue connecting (yes/no)?
の問い合わせを 受ける
Are you sure you want to continue connecting (yes/no)? yes
yes と 答えると
Warning: Permanently added '111.222.333.444' (RSA) to the list of known hosts.
Password:
ここで サーバー側にアカウントを持っていると パスワードを 入力する事で login する事が可能となる これが第一段階の ssh の login 方法である。
今回は nyanco という アカウントを サーバーに 持っている場合である、 又今回は ユーザー(クライアント)も nyanco である 合わしている
公開鍵 _key.pub は 誰に 見られても 特に 問題は無いが 秘密鍵は 絶対に 見られてはいけないことである。さて ユーザーの 秘密鍵を 作成しなけ れば なりません 現状の ままであると パスワード 入力にて接続の 方法となる。 勿論これでも 良いといえば 良いのだが パスワードでなく パスフレーズの 方 法も 対応しているので これを 使用して見たい。単なる 興味ではあるが、一般 に パスフレーズ は 文字列であるが 間に スペースも使用可能なものの 様です。 ここで 単に 興味 というのは ユーザーの 認証方法は パスフレーズ を 対応さ せても いざ root 権限を 持つ場合は 当然 root の パスワードを 入力します その場合 当然 root の パスワード は ネットワークを 流れます ほんなら root も パスフレーズ 方式と すれば 良いのですが サーバーに 最初から root で アクセスするのも もう一つ ということで 出来れば避けようと いう事 です。今回のデフォルトでは root での 認証可能に なっていますが 変更し て、 root での 認証は させないように する予定です。
にゃんたろう 拝!
2005年 7月 4日 (月) 23:44:46 JST 作成