Windows ターミナルで SSH 接続する方法
Windows でコマンドを実行する際には、Windows ターミナルを使用されている方も多いと思います。
とても便利なツールですので、まだ使用されていない方には是非ともオススメしたいツールです。
最近になって気付いたのですが、Windows ターミナルと Windows 10 から搭載されることになった ssh
コマンド(OpenSSH)を組み合わせると、
Tera Term、PuTTY、Poderosa、RLogin などのターミナルエミュレーターを Windows にインストールする必要が無くなります。
SSH コマンド
まずは、Windows 10 で使用可能になった ssh
コマンドです。
Linux を使用している方には、おなじみのコマンドかもしれません。
この ssh
コマンドをコマンド プロンプトなどで入力すると SSH 接続できます。
試してみてください。
ssh <ユーザー名>@<接続先のホスト>
ssh hoge@example.com
ポート番号を指定する
SSH のデフォルトのポート番号は「22」ですが、接続先で変更されている場合は、ポート番号を指定する必要があります。
ポート番号を指定するには -p
オプションを使用します。
ssh -p <ポート番号> <ユーザー名>@<接続先のホスト>
ssh -p 2222 hoge@example.com
秘密鍵を指定する
SSH の接続に公開鍵認証を使用している場合は、秘密鍵を指定する必要があります。
秘密鍵を指定するには -i
オプションを使用します。
ssh -i <秘密鍵ファイルのパス> <ユーザー名>@<接続先のホスト>
秘密鍵ファイル「C:\Users\Test\.ssh\id_rsa」を使用する場合
ssh -i "C:\Users\Test\.ssh\id_rsa" hoge@example.com
SSH 接続用のプロファイルを作成する
ssh
コマンドを使用すれば、コマンド プロンプトなどから SSH 接続できることはわかったと思います。
しかしながら、毎回毎回、接続先の情報を入力するのは面倒ですね。
そこで、ssh
コマンドを Windows ターミナルにプロファイルとして登録します。
プロファイルとして登録することで、接続先の情報を毎回入力する必要が無くなります。
SSH 接続用のプロファイルを作成するには、既存の「コマンド プロンプト」などの使用したいプロファイルをコピーして、
そのプロファイルの「コマンド ライン」項目の値を、実行したい ssh
コマンドに変更します。
必要な作業はこれだけです。
Windows ターミナルの使い方がわからない方は「Windows ターミナルの使い方」を参照してください。
上級者向け補足1:開始ディレクトリを指定する
SSH ログイン後の開始ディレクトリを指定したい場合は、ssh
コマンドを下記のように変更して、Windows ターミナルのプロファイルに登録すると良いでしょう。
ssh
コマンドに -t
オプションが必要になるので、忘れずに指定してください。
使用するログインシェルは bash
や csh
など、お好みに合わせて指定してください。
ssh -t <ユーザー名>@<接続先のホスト> "cd <開始ディレクトリ> && exec <ログインシェル>"
bash を使用する場合
bash
を使用する場合は、ログインシェルに bash -l
を指定します。
開始ディレクトリを「~/www」として、ログインシェルに
bash
を使用する場合
ssh -t hoge@example.com "cd ~/www && exec bash -l"
csh を使用する場合
csh
を使用する場合は、ログインシェルに csh -l
を指定します。
開始ディレクトリを「~/www」として、ログインシェルに
csh
を使用する場合
ssh -t hoge@example.com "cd ~/www && exec csh -l"
上級者向け補足2:プロファイルの表示順を変更する
現在の Windows ターミナルでは、プロファイルの表示順は画面上では変更できません。 しかしながら、メニューの左下にある「JSON ファイルを開く」から、開いた JSON ファイルを編集するとプロファイルの表示順を変更することができます。 プロファイルの一覧は、開いた JSON ファイルの「profiles > list」に登録されています。