[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
(DTPtechNote:1059) [Server] SSHの公開鍵認証
え? SSHでUnixパスワード使ってるの?
と先生におこられてしまったので、ちょっとやり方のメモ。
●参考にしたところ
http://www.j.dendai.ac.jp/~fujimoto/system/publickey.html
●ローカル側ですること
cd ~/
mkdir .ssh #あればよろしい。
ssh-keygen -b 1024 -t rsa #RAS鍵の生成。保存場所はリターンで。パスワードをタイプ。さらにもういちど。空パスワードとかにしたらダメだよ^^
ssh-keygen -b 1024 -t dsa #上と同様に。
cd .ssh
touch authorized_keys #「authorized_keys」ってファイルを作成
chmod 600 authorized_keys
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys #秘密鍵じゃない方。注意
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys #秘密鍵じゃない方。注意
#「authorized_keys」には、rsaとdsaが含まれていることを確認。
#~/.sshは以下のようになっているはず。
ls -al ~/.ssh
drwx------ 8 show show 272 1 Mar 23:44 .
drwxr-xr-x 36 show show 1224 10 Feb 22:36 ..
-rw------- 1 show show 842 1 Mar 23:46 authorized_keys
-rw------- 1 show show 736 1 Mar 23:43 id_dsa
-rw-r--r-- 1 show show 611 1 Mar 23:43 id_dsa.pub
-rw------- 1 show show 951 1 Mar 23:42 id_rsa
-rw-r--r-- 1 show show 231 1 Mar 23:42 id_rsa.pub
-rw-r--r-- 1 show show 1778 13 Dec 22:49 known_hosts
これで公開鍵「authorized_keys」のできあがり。
LAN内ならFTPでもいいし、慎重を期すならフロッピーとかでリモート側へもってくる。
リモート側の(入るべきユーザーの)~/.sshに入れておく。
●リモート側(sshd_configの設定)
#書き換えの要点
PermitRootLogin no # root によるログインを禁止する
RSAAuthentication yes # RSA による認証を許可する
PasswordAuthentication no # UNIXパスワードによる認証を禁止する
PubkeyAuthenication yes # PubkeyAuthentication (公開鍵認証)
公開鍵認証を許可するかどうか指定します。デフォルトは ``yes'' です。このオプションはプロトコル バージョン 2 にのみ適用されることに注意してください。