最新情報

2014年3月30日テラタームマクロ
TeraTermマクロでポートフォワード&踏み台サーバ経由での公開鍵認証を試みる
2014年3月19日SSHポートフォワード
TeraTerm SSH転送(ポートフォワード)機能を利用した多段接続
2014年3月12日テラタームマクロ
TeraTermマクロでSSH多段接続(踏み台サーバ経由)を試みる
2014年3月9日バージョンアップ情報
2014/03/08 Tera Term version 4.82がリリースされました!
2014年3月5日バージョンアップ情報
2014/02/28 Tera Term version 4.81がリリースされてました!

このエントリーを含むはてなブックマーク Buzzurlにブックマーク livedoorクリップ Yahoo!ブックマークに登録

TeraTermマクロでポートフォワード&踏み台サーバ経由での公開鍵認証を試みる

 

前回の記事では、TeraTermのSSH転送(ポートフォワード)機能を利用した手動でのSSH公開鍵認証の設定・手順についてご紹介しました。
⇒ TeraTerm SSH転送(ポートフォワード)機能を利用した多段接続

しかし接続の都度、ユーザ名等の情報を入力するのは面倒ですよね。(まあ、いつものパターンです!)

そこで、ここでは前回手動で行った公開鍵認証での接続部分を、TeraTermのマクロ機能で実現したいと思います。

SSH転送(ポートフォワード)をマクロで

マクロの前提条件として以下の設定等が必要になります。
ポートフォワードの設定は事前に行っておき、コンフィグを保存しておく。
作業対象サーバのIPアドレス・接続先ポート「22」(SSHの待ち受けポート)
テラタームの待ち受けポートは「10022」
SSHポート転送設定画面

この辺りは前回の記事を確認し、設定を行なってみてください。
⇒ TeraTerm SSH転送(ポートフォワード)機能を利用した多段接続

それでは早速マクロの中身を眺めてみましょう。

SSH多段接続&公開鍵認証自動ログインマクロ

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
;============================================== 
; Filename    : ssh_connect-16.ttl
; Description : SSH Auto login
; Author      : JUNZOU
; Created     : 2014/03/29
; modified    : 
;============================================== 
;; 踏み台・作業対象サーバ/ユーザ名/パスワード設定 
HOSTIP1st = '踏み台サーバIPアドレス'
USERNAME1st = '踏み台サーバ接続用ユーザ名'
PASSWORD1st = '踏み台サーバ接続用パスワード'
HOSTIP2nd = '127.0.0.1'
USERNAME2nd = '作業対象サーバ接続用ユーザ名'
PASSWORD2nd = '作業対象サーバ接続用パスワード'
;============================================== 
;; 踏み台サーバへSSH接続
;; ①接続用コマンド組立て
COMMAND = HOSTIP1st
strconcat COMMAND ':22 /ssh /2 /auth=password /user='
strconcat COMMAND USERNAME1st
strconcat COMMAND ' /passwd='
strconcat COMMAND PASSWORD1st
 
;; ②踏み台サーバへ接続
connect COMMAND
 
;; ③踏み台サーバへのリンクを切断(セッションは維持したままです)
unlink 
 
;; 作業対象サーバへSSH公開鍵認証接続
;; ④接続用コマンド組み立て
COMMAND = HOSTIP2nd
strconcat COMMAND ':10022 /ssh /auth=publickey /user='
strconcat COMMAND USERNAME
strconcat COMMAND ' /passwd='
strconcat COMMAND PASSWORD
strconcat COMMAND ' /keyfile='
strconcat COMMAND KEY_FILE
 
;; ⑤作業対象サーバへ接続
connect COMMAND
 
;; ⑥マクロ終了
end

マクロの解説

まあ難しい所は一切ありませんね。

このマクロのツボは、項番③の部分で「unlink」を使用する事です。

unlink:現在のTeraTermウインドウとマクロ間のリンクを断つ

一度踏み台サーバに接続し、SSH転送(ポートフォワード)が実施できる準備を行います。そこで接続されている踏み台サーバへのリンクを「unlink」で切り(セッションは維持されたままです。あくまでTeraTermとのリンクを切断します)、そこで別に新しいセッションを開いて、作業対象サーバに公開鍵認証で接続しようといったマクロになります。

公開鍵でパスワードなんか設定していなければ、その部分はコメントアウトしてご利用ください。

また一点だけ注意点があります。踏み台サーバのセッションと作業用対象サーバの2セッション(画面が2つ)起動します。踏み台サーバのセッションを切断すると、作業対象サーバへのセッションも切断されますのでご注意ください。

まあ、非常に簡単でしたね。

このマクロを使用すると踏み台サーバに鍵を配置せずに、自PCに保存している鍵を利用して踏み台サーバ経由の接続が可能となります。まあ機会があれば利用してみてください。何かの参考にでもなれば幸いです。


 スポンサード リンク
 

タグ


このページの先頭へ