Poderosa 4.1.0 でプロキシサーバ経由で任意サーバに自動接続(telnet)する
Poderosa のターミナルを5つ以上開いて開発することが多いので対応。
1. Poderosa 4.1.0 をインストール
http://www.poderosa.org/download/poderosa410_ja.exe
2. マクロをインストール
http://www.poderosa.org/download/plugins/Macro402.tar.gz
をダウンロード & 解凍して、
Macro フォルダをPoderosa のインストールディレクトリRoot に配置する
例) Macroフォルダは新設
C:\Program Files\Poderosa\Macro
3. マクロを用意する
telnet_use_proxy.js
import Poderosa; import Poderosa.ConnectionParam; import Poderosa.Terminal; import Poderosa.Macro; import Poderosa.View; import System.Drawing; var env = new Environment(); // server info var proxy_server = { Host: "プロキシサーバー名", Account: 'アカウント', Password: 'パスワード' } var login_server = { Host: "ログインしたいサーバー名", Account: 'アカウント', Password: 'パスワード' } // login proxy server var c = telnetViaProxy(proxy_server, login_server.Host, EncodingType.EUC_JP); waitAndTransmit(c, 'login:', login_server.Account); waitAndTransmit(c, 'Password:', login_server.Password); function telnetViaProxy( proxy_server, login_host, enc) { var param = new TelnetTerminalParam(proxy_server.Host); var prof = new RenderProfile(); prof.FontSize = 10; prof.FontName = "Courier New"; prof.SetBackColor(Color.Black); prof.SetForeColor(Color.White); param.RenderProfile = prof; param.Encoding = enc; //Telnet negotiation var c = env.Connections.Open(param); waitAndTransmit(c, 'login:', proxy_server.Account); waitAndTransmit(c, 'Password:', proxy_server.Password); waitAndTransmit(c, proxy_server.Account, 'telnet ' + login_host); return c; } // wait and transmit function waitAndTransmit(c, w, t) { var r = c.ReceiveData(); while(r.indexOf(w)==-1) r = c.ReceiveData(); c.TransmitLn(t); }
4. 用意したマクロを Macroフォルダ以下に配置する
例)
C:\Program Files\Poderosa\Macro\telnet_use_proxy.js
5. Poderosa に登録する
Poderosa を起動して以下をクリック。
ツール > マクロ > 環境設定
「マクロ」がポップアップされるので、「新規...」をクリック、
「マクロのプロパティ」がポップアップされるので、以下を入力してOKをクリックする。
タイトル:任意文字列を入力(最終的にログインするホスト名とか) ファイル:C:\Program Files\Poderosa\Macro\telnet_use_proxy.js 追加のアセンブリ:(なにも入力しない)
6. マクロを実行
5. でマクロに追加されているので
Poderosa を起動して以下を選択すれば実行される
ツール > マクロ > マクロ名(5.で入力した任意文字列)