SSHやSFTPをパスワードなしで接続する

ssh やSFTPをパスワードなしで接続するには次のようにします。

● 1. 【RSA鍵の作成】接続元マシンで以下のように入力する

ssh-keygen -t rsa
(なにか入力が促されるが【Enter】のみを押す)

鍵の強度を上げたい時は

ssh-keygen -t rsa -b 4096
(4096バイトで作成)

で作成する

鍵ファイル名を指定する時は

ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa__mysite

というふうに -f ファイル名 をつけると「id_rsa__mysite」が生成されます。

● 2. 【RSA鍵の強度を調べる】

接続元マシンで以下のように入力します

ssh-keygen -l -f ~/.ssh/id_rsa.pub

表示される先頭の数字がバイト数です。2048以上になっていることを確認します。

● 3. ( 接続元マシンで)【作成したRSA鍵をコピーする】

cat ~/.ssh/id_rsa.pub
(画面上にキーを表示してクリップボードにコピーする)

● 4. 接続先マシンにて鍵を設定する(あらかじめsshで接続しておく)

cd
mkdir .ssh
chmod 700 .ssh
cd .ssh
touch authorized_keys
chmod 600 authorized_keys
vi authorized_keys
(ここでviから先ほどクリップボードにコピーした鍵をペーストする)

なお、サーバによってはファイル名「authorized_keys2」というファイルが存在することがあります。(古いサーバです。)
気にせず「authorized_keys」に追記 します。
どちらのファイルもない場合は「authorized_keys」でOKです。

● 5. 設定完了。(接続元マシンから)接続を確認する

ssh user@xxx.yyy.zzz

なお、SSH接続の不具合を調査するときはこのようにする

ssh -v user@xxx.yyy.zzz

● 6. 設定完了。キーを指定して接続する

キーを指定して接続するには - i 暗号キーとなるファイル という風に指定します。

ssh  -i  ~/.ssh/id_rsa__XXXXX  user@xxx.yyy.zzz

関連エントリー

No.250
08/14 20:18

edit

ssh