teratermで作った鍵だとなぜかplink.exeでSSH接続できなかった(鍵の形式の違い??)ので、Puttyを駆使して接続してやる。
【最終目的】
①plink.exeでVPS上のシェルスクリプトを実行させる。
②pscp.exeでVPS上のファイルを送受信する。
1.Putty.zipを一式ダウンロード
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
2.公開鍵・秘密鍵を生成
puttygen.exeにより公開鍵・秘密鍵を作成。
【参考】以下URLの「7.Windows 側でキーペアを作成する」
http://net-newbie.com/putty.html
3.公開鍵をOpenSSH形式に変換しauthorized_keysに追記
前項で作成した公開鍵をOpenSSH形式に変換
ssh-keygen -i -f (PuTTYgenで生成した公開鍵) > (変換先ファイル名)
サーバに登録
cat (変換したファイル名) >> .ssh/authorized_keys
【参考】
https://www.ipentec.com/document/document.aspx?page=linux-ssh-error-server-refused-our-key
4.pscpできた!
pscpコマンド:
pscp.exe -scp -noagent -P [ポート番号] -l [ユーザ名] -pw [パスワード] -i [秘密鍵フルパス] [送信するファイルのフルパス] [さくらVPS IPアドレス]:[送信先ファイルフルパス]
結果:
[送信先ファイル名] | 56 kB | 56.5 kB/s | ETA: 00:00:00 | 100%
受信も同様にできました!
5.plinkできた!
plinkコマンド:
plink.exe [さくらVPS IPアドレス] -ssh -noagent -P [ポート番号] -l [ユーザ名] -pw [パスワード] -i [秘密鍵フルパス] [実行シェルスクリプトフルパス]
結果:シェルスクリプトが実行されてました!