| FAQ No. | 1 |
|---|---|
| カテゴリー | システム全般 |
| アップデート日 | 2008年4月 |
パスワードを使用しないで SSH ログインする方法を教えてください。
以下に SSH での公開鍵認証によるユーザー認証の手順を記述致します。
ユーザ認証のために以下の 3 つの鍵が必要となります。
リモートマシンに保存するユーザ公開鍵
ローカルマシンに保存するユーザ秘密鍵
秘密鍵を利用するためのパスフレーズ
(1) ssh-keygen による鍵の作成方法
[ssh protocol version 1 の場合] local$ ssh-keygen -t rsa1 Generating public/private rsa1 key pair. Enter file in which to save the key (/root/.ssh/identity): Enter passphrase (empty for no passphrase): <<< パスフレーズの入力 Enter same passphrase again: <<< パスフレーズの再入力 Your identification has been saved in /root/.ssh/identity. Your public key has been saved in /root/.ssh/identity.pub. The key fingerprint is: b3:c3:49:fb:5b:c6:8d:6e:7a:89:d8:4e:d2:96:fa:a8 root@hoge.example.com [ssh protocol version 2 の場合] local$ ssh-keygen -t dsa Generating public/private dsa key pair. Enter file in which to save the key (/root/.ssh/id_dsa): Enter passphrase (empty for no passphrase): <<< パスフレーズの入力 Enter same passphrase again: <<< パスフレーズの再入力 Your identification has been saved in /root/.ssh/id_dsa. Your public key has been saved in /root/.ssh/id_dsa.pub. The key fingerprint is: 4e:e4:a0:bc:ca:2f:c3:3c:f2:60:87:bb:80:4f:d3:20 root@hoge.example.com
remort$ mkdir .ssh remort$ chmod 700 ~/.sshローカルマシンでもパーミッションを設定します。
local$ chmod 700 ~/.ssh公開鍵は公開して構わないですので、コピーの方法は ftp scp 等どちらでも結構です。
local$ scp ~/.ssh/identity.pub user@remotemachine:~/.ssh(3) authorized_keys ファイルを生成方法
[ssh protocol version 1 の場合] remort$ mv identity.pub authorized_keys [ssh protocol version 2 の場合] remort$ mv id_dsa.pub authorized_keysパーミッションを変更します。
remort$ chmod 600 ~/.ssh/authorized_keysファイルの中身は以下の様になります。
ssh-dss AAAAB3NzaC1kc3MAAACBAJkxCkPjx6ivxhCAL9gBNlD0dej6/u851wGH0ItRssvqNtkJvMceFHFT vTGGJGS/RgW7esEhD91oWMmhjhp3uPtTgbw7X7VKP9bhoRBccOFBs/Zxz0K8QwHizdnAlEj9rr6y jLnrt0u7HjwAUPe2NuuNZ/dK6Uyj0yUQCumkQkm1AAAAFQDBlW82PDonQnKPVD1/Qd3CBb68TwAA AIEAjw+r4Oa30MZXSmBDT5dWjyGctNwWd2a0X25tyMrPGoPAoO8gHmOztmi0EVI95mGGP0sI8sH8 //+zmonRoIzL9idQWE1z0zi7xO01URYXgBiDPi3U2Y1IV4FtZP6igv4J7D0uFA90Ch3njNOG+OhZ Zg3s0oC0oq9OOjehZyeVic4AAACAVEe10/Fnr8h7WT5hGnmQRiPU/ZeOO87A073QNHsRsFnLakdk uIRv9vRT1g4dGyV5rkeR0X1QqV3GWHnOyb0l8cYY4KQGqcEt8INC6dPds58NYfgrtrB0D2aYPuL/ RLnjg2VvJueIBIK/tNpmnOFcFoRNpVtne/xoPZCnCCmOqWc= root@hoge.example.com(4) 鍵のパーミッション設定上の注意
local$ exec /usr/bin/ssh-agent $SHELL6-2
local$ ssh-addここでパスフレーズを入力します。
local$ ssh remort