ロリポップへの公開鍵認証によるSSH接続をTeraTermにてマクロ自動化

ロリポップで色々作業したかったのでSSH接続を行いました。

手順は簡単でわかりやすく、公開鍵認証の仕組みが体感出来たので記録しておきます。

(後日、さくらVPSとXserverからも同様に設定してみました。⇒さくらVPSXserverの場合の設定)

スポンサーリンク

目次

  1. ロリポップにパスワード手入力でSSH接続
  2. ロリポップに公開鍵認証を用いたSSH接続
  3. ロリポップ公開鍵認証SSH接続をダブルクリックで

環境

  • Windows8.1
  • レンタルサーバーロリポップ スタンダードプラン
  • Tera Term

ロリポップへSSH接続したかったのでTeraTermをダウンロード。

=>TeraTermはこれを使用

=>ロリポップ

ロリポップssh

上記画面でSSH接続をする為に以下の内容を確認しておきます。

  • サーバー(SSH
  • アカウント(SSH
  • 接続ポート(SSH
  • パスワード(SSH

ロリポップにパスワード手入力でSSH接続

先ほど控えた情報を使用してTeraTermで先ずは手入力SSH接続します。

  • サーバー(SSH ⇒ホスト
  • 接続ポート(SSH ⇒TCPポート

teraterm ssh

  • アカウント(SSH => ユーザ名
  • パスワード(SSH => パスフレーズ

teraterm ssh

これでロリポップにパスワード手入力でSSH接続できました。

次に公開鍵を用いたSSH接続を試みます。

ロリポップに公開鍵認証を用いたSSH接続

先ほど手入力でSSH接続出来た状態から続けます。

TeraTermの「設定」タブから「SSH鍵生成」を選択します。↓

teratermssh

生成ボタンを選択します。↓

teraterm ssh

好きなパスフレーズを入力します。↓

teraterm

↑「公開鍵の保存」と「秘密鍵の保存」をします。

ローカルに出力されます。↓

teraterm ssh

  • id_rsa
  • id_rsa.pub

の2ファイルが生成されたはずです。

.pubが公開鍵(public)でもう1つが秘密鍵です。

この公開鍵(id_rsa.pub)をTeraTerm上にドラッグアンドドロップします。

ファイル転送するか聞かれるのでSCP転送を選択します。↓

teraterm ssh

id_rsa.pubがサーバに配置されます。

サーバ上で以下の配置とパーミッション設定を行います。↓

[bash]
$ cd ~
$ mkdir .ssh
$ chmod 700 .ssh
$ mv id_rsa.pub .ssh/authorized_keys
$ chmod 600 .ssh/authorized_keys
$ vi .ssh/config
[/bash]

configファイル編集内容は以下です。最初にロリポップで控えておいたSSH情報を設定します。

[bash]
Host lolipop.jp
User アカウント
Hostname サーバー
Port ポート
IdentityFile ~/.ssh/authorized_keys
[/bash]

秘密鍵を用いてSSH接続してみます。

先ほどと同様にホストとポートを入力します。↓

teraterm ssh

次の画面ではパスフレーズに先ほど決めた好きなパスフレーズを入力し、「RSA/DSA/ECDSA/ED25519鍵を使う」にチェック入れ、秘密鍵ボタンを選択して先ほどのファイル(id_rsa)を選択します。↓

※.pubではない方です。

teraterm ssh

これで公開鍵認証による安全なSSH接続が出来ました。

次に、パスワードも入力するのが面倒なので、TeraTermのマクロを使ってダブルクリックのみで公開鍵認証によるSSH接続を行います。

ロリポップ公開鍵認証SSH接続をダブルクリックで

ローカルのデスクトップなどに拡張子.ttlのファイルを作成します。

以下のようなTeraTermアイコンにならない場合は、プロパティからTeraTermマクロファイルだと認識させます。

teraterm ロリポップssh

これをエディタで開き以下のように編集します。

hostname = 'サーバー'
username = 'アカウント'
KEY_FILE = 'C:\id_rsa'  ;ローカル秘密鍵のパスです
passwdfile = 'C:\passwd.dat'  ;パスワード暗号化して保存するローカルパス
portnum = 'ポート'

getpassword passwdfile username userpasswd

msg = hostname
strconcat msg ':portnum /ssh /2 /auth=publickey /user='
strconcat msg username
strconcat msg ' /passwd='
strconcat msg userpasswd
strconcat msg ' /keyfile='
strconcat msg KEY_FILE
strconcat msg inputstr

connect msg

これでアイコンをダブルクリックしただけで公開鍵認証によるSSH接続を行えます。

初回時はパスフレーズを聞かれるので応答します。

次回以降はパスフレーズが上記のpasswd.datに暗号化されて保存されるので入力不要になります。

以下参考にさせていただいた良サイト・ブログ様です。

さくらVPSとXserverでもTeraTermマクロ設定してみました

http://normalblog.net/system/teraterm/sakura_vps_ssh_teraterm_error_clear/

http://normalblog.net/system/teraterm/ssh_teraterm/

コメント

  1. […] ネットで徘徊していると、ロリポップへの公開鍵認証によるSSH接続をTeraTermにてマクロ自動化というのを見つけました。そう、Linux の ssh コマンドにも疑問の目を向けたのです。 […]