KeePassの自動入力機能をカスタマイズして、Tera TermとWinSCPでサーバーに自動ログインする方法を紹介します。
はじめに
下記の記事で紹介したように、パスワード管理ソフトKeePassには強力な自動入力機能があります。
この機能はデフォルトでは下記のような動作をします。
- パスワードのデータベースから、選択中のウィンドウのタイトルに一致する「タイトル」を検索
- 選択中の欄に「ユーザ名」のデータを入力し「Tab」キーを入力(次の欄へ移動)
- 「パスワード」のデータを入力し「Enter」キーを入力
これをカスタマイズして、サーバーへ自動ログインする方法を紹介します。
Tera Termの場合
Tera Termでサーバーにログインするには、下記の手順が必要です。
- 「ホスト」欄にIPアドレス、「ポート」欄にポート番号を入力
- 「OK」ボタンをクリック
- 「ユーザ名」と「パスフレーズ」を入力
- 「OK」ボタンをクリック
ログイン用カスタマイズ
これらの作業を自動化するために、下図のようなKeePassのデータを作成します。
- タイトル:適当に
- ユーザ名:ログインするアカウント名
- パスワード:ログイン用のパスワード
- URL:IPアドレス
- 備考:ポート番号
さらに「自動入力」タブで「カスタムシーケンス」を作成します。
- 対象のウィンドウ:Tera Term*
- カスタムキーストロークを使用:{URL}{TAB}{TAB}{TAB}{Notes}{ENTER}{DELAY 400}{DELAY=100}{USERNAME}{TAB}{PASSWORD}{ENTER}
※{DELAY 400}は400ms停止、{DELAY=100}はキー入力スピードを遅くするコマンドです
自動ログイン方法
上記設定を行った後は、下記手順によって自動ログインすることができます。
- KeePassのデータベースファイルを開く
- Tera Termを起動し、「ホスト」欄にカーソルを置く
- 「Ctrl」キー + 「Alt」キー + 「A」キーを押す
- 対応するデータが複数ある場合は選択ウィンドウが表示されるので、任意のデータをクリックする
もしうまく入力されない場合は、前述の「DELAY」コマンドの値を調整してみてください。
WinSCPの場合
WinSCPでサーバーにログインする場合は、下記の手順が必要です。
- 「ホスト名」「ポート番号」「ユーザ名」および「パスワード」を入力
- 「ログイン」をクリック
※WinSCPにログイン情報を保存することができますが、ここではすべての情報をKeePassのデータベースに保存することにします。
ログイン用カスタマイズ
これらの作業を自動化するために、下記のようなデータベースを作成します(Tera Term用に作成したものがあれば、新たに作成する必要はありません)。
- タイトル:適当に
- ユーザ名:ログインするアカウント名
- パスワード:ログイン用のパスワード
- URL:IPアドレス
- 備考:ポート番号
「自動入力」タブで「カスタムシーケンス」を作成します。
- 対象のウィンドウ:*WinSCP
- カスタムキーストロークを使用:{URL}{TAB}{Notes}{TAB}{USERNAME}{TAB}{PASSWORD}{ENTER}
自動ログイン方法
上記設定を行った後は、下記手順によって自動ログインすることができます。
- KeePass のデータベースファイルを開く
- WinSCPを起動し、「ホスト名」にカーソルを置く
- 「Ctrl」キー + 「Alt」キー + 「A」キーを押す
- 対応するデータが複数ある場合は選択ウィンドウが表示されるので、任意のデータをクリックする
もしうまく入力されない場合は、「DELAY」コマンド挿入してみてください。
おわりに
ちゃかちゃかと自動的に入力されるのがたまらん