初めに
複数の開発サーバーへsshする機会が増えたので、現在使っているiTerm2の機能を使ってサーバーログインのフローを自動化できるかを調べました。その結果を共有していきたいと思います。
ソフト
- macOS BigSur 11.4
- iTerm2 Build 3.4.8
開発サーバーごとにProfile作成
iTerm2の[Perferences]-[Profiles]の設定画面で、左下の「+」ボタンをクリックして新たなプロファイルを作成する。
順番を追って、入力項目を説明します。
-
Name
Profileの名前。分かりやすくで大丈夫。 -
Shortcut Key
このProfileを呼び出すためのショットキー。 -
Tags
Profileのタグ。複数のProfileをグループ分けて管理しやすくなります。入力しなくても問題なし。 -
Badge
ターミナル右上で表示されるバッジ文言。サーバー名を入力すると現在どのサーバーにいるのかを教えてくれます。 -
Command
Profileが適用された後実行される操作。プールダウンメニューから[Command]を選択して、入力欄にsshのコマンドを入力すると自動的にssh接続します。
Profile作成した後、対応のShortcut Key
を押せば新しいターミナルが開き、自動的にssh接続します。
Password Manager機能を使ってパスワード入力
セキュリティーのため、ssh接続するときパスワードが要求され場合が多いです(プライベートキーのpassphraseやLDAPパスワードなど)。Password Manager 機能を使って、パスワードの管理や入力は出来ます。
iTerm2で Command
+ Option
+ F
のショットキーで Password Manager が呼び出せます。
左下の「+」ボタンでパスワード情報を入力して保存します。
使う時は保存されたアカウントリストから正しいものをクリックするだけで、パスワードが入力されます。
Triggerを設定すると、「Password:」の文言が出現したら自動的に Password Manager を呼び出すことができます。
iTerm2の[Perferences]-[Profiles]の設定画面で、該当プロファイルの[Advanced]タブでTriggerの設定ボタンがあります。
Regular Expression
トリガーになる文言の正規表現。
Action
トリガーが点火するアクション。ここは"Open Password Manager"にします。
Instant
チェックを入れるとトリガーのマーチング操作はEnterキーを待たずに実行されます。
終わりに
iTerm2 の機能を使って開発サーバーへのssh接続を楽にする方法を紹介してきました。
もし誤りやアドバイスがありましたらご指摘ください。