Teratermでレンタルサーバー(Xserver)に自動でssh接続するマクロを作る

プログラミング

前回以下の記事を公開しました。

その中で、Teratermを使ってサーバーにsshで接続するという手順があったのですが(詳しくはこちら

毎回ユーザー名やら、sshキーファイルやらを指定するのが面倒だったので、ssh接続を自動で行うマクロを作成してみました。
備忘録もかねてソースコードを公開します。

「Teratermでマクロを作ったことが無いよ」

という方のために、Teratermマクロの作成方法も解説します。

ssh接続マクロ ソースコード

;接続先ホスト/ユーザ名/パスワードを入力する
;==============================================
HOST = '[サーバーID].xsrv.jp'
USERNAME = '[ユーザ名]'
PASSWORD = '[パスワード]'
KEYNAME = '[sshキーファイル名]'
;==============================================

;;現在のディレクトリを取得
getdir DIR

;sshキーを指定する
getdir DIR
strconcat KEY_FILE DIR
strconcat KEY_FILE '\'
strconcat KEY_FILE KEYNAME

;コマンドを作成する
COMMAND = HOST
strconcat COMMAND ':10022 /ssh /2 /auth=publickey /user='
strconcat COMMAND USERNAME
strconcat COMMAND ' /passwd='
strconcat COMMAND PASSWORD
strconcat COMMAND ' /keyfile='
strconcat COMMAND KEY_FILE

;ssh接続を実行する
connect COMMAND

;マクロを終了する
end

内容を書き換える場所

ソースコードをファイルにコピペして、以下の箇所をそれぞれの環境に合わせて書き換えてください。

[サーバーID] 任意の名前を入力します。 サーバーID.xsrv.jp
[ユーザ名] XserverのサーバーIDを入力します。 サーバーID
[パスワード] sshキーを作成するときに入力したパスワードを入力します。
[sshキーファイル名] sshキーファイルの名前を入力します。 ●●●.key

コードだけ見ても、何をどうすればいいのか分からないという方は、続きを見ながら一緒に操作してみてください。

マクロファイルを作る

ssh接続を自動化するためのマクロを作成していきます。

まずはメモ帳を開きます。使い慣れたテキストエディタがある方はそれを使っていただいて構いません。

開いたメモ帳にソースコードをコピペします。

環境に合わせて情報を書き換えます。

サーバー初期ドメインがexample.xsrv.jpだった場合の例を使用しています。

[サーバーID] Xserverの初期ドメインを入力します。 example.xsrv.jp
[ユーザ名] XserverのサーバーIDを入力します。 example
[パスワード] sshキーを作成するときに入力したパスワードを入力します。 password
[sshキーファイル名] sshキーファイルの名前を入力します。 example.key

もしもドメインの確認方法やsshキーの作成方法が分からない場合は、以下の記事に確認方法を載せています。

Accessからレンタルサーバー(Xserver)のデータベースにODBC接続する方法①【サーバー設定編】

ファイルの書き換えが終わったら名前を付けてファイルを保存します。

ファイル名は任意ですが、拡張子は[*.ttl]にしてください。
例)macro.ttl

パソコンにTeratermが入っていて、拡張子の関連付けがされていると、このファイルをダブルクリックするだけでマクロを起動できます。関連付けされていない場合はもう一歩手順を踏む必要がありますので、後ほど解説します。

マクロのファイルの同じ場所に、sshキーファイルを置きます。

この状態で、マクロファイルをダブルクリックすると、ssh接続の処理が実行されます。

もしもttlが関連付けされていない場合は、teratermの画面から[Control]ー[Macro]をクリックします。

ダイアログボックスが表示されるので、マクロファイルを指定します。

もしくは、Teraterm本体のフォルダにある、ttpmacro.exeをダブルクリックしても同じようにマクロを実行できます。

.ttlを関連付けして、ダブルクリックでマクロが実行されるようにしたい場合は、[ファイルを右クリック]ー[プロパティ]ー[変更]とクリックして、[このPCで別のアプリを探す]からttpmacro.exeを指定します。

これでssh接続マクロが完成しました。

マクロを起動させて、自動接続されることに感動しましょう!

まとめ

今回のポイント

  • ソースコードをコピペして、環境に合わせて書き換える
  • sshキーファイルは、マクロと同じ場所に置く
  • ファイルを保存するとき、拡張子を.ttlにする
  • .ttlをTeratermのマクロ実行ファイルに関連付けしておくとスマート

皆さんもssh自動接続マクロを作成して、開発作業を効率化しましょう!