WindowsでのSSHの方法やconfigファイルの作成方法やパスフレーズの省略方法をご紹介!

WindowsでのSSHの方法やconfigファイルの作成方法やパスフレーズの省略方法をご紹介!
基本情報技術者試験の試験対策はこちら>>

Windowsエンジニア 案件・求人一覧はこちら

WindowsでのSSHの方法を紹介します


今回は、WindowsでのSSHの方法を紹介します。ここでは、PowerShellからWSL2(Windows Subsystem for Linux 2)のubuntuにSSH接続します。Windows PC 1台で完結します。

WindowsでのSSHの方法に興味のある方はぜひご覧ください。

環境情報

PowerShellからWSL2(Windows Subsystem for Linux 2)のubuntuにSSH接続します。ローカル(PowerShell)の情報は以下です。

リモート(WSL2のubuntu)の情報は以下です。

公開鍵と秘密鍵の作成

SSH接続するために、ローカルで公開鍵と秘密鍵を作成します。ssh-keygenコマンドに「-t rsa」オプションを付与してRSA暗号方式で作成します。作成時にパスフレーズを設定してください。

ssh-keygenコマンドが成功すると、~/.sshフォルダが生成されます。.sshフォルダ配下には、id_rsaファイルとid_rsa.pubファイルが生成されます。id_rsaは秘密鍵、id_rsa.pubは公開鍵です。公開鍵はリモート側に格納します。秘密鍵は誰にも知られないように管理してください。

公開鍵の内容を標準出力して、リモート側の~/.ssh/authorized_keysにペーストしてください。

SSH接続

リモート側で、SSHサービスを開始します。以下のコマンドを実行してください。

ローカルからSSH接続をします。ssh-keygenコマンド実行時に指定したパスフレーズを入力すると、リモート側に接続できます。

接続を終了する際には、「exit」コマンドを入力してください。

configファイル

SSHコマンドを毎回記述するのは面倒です。SSHコマンドのオプションを事前にconfigファイルに記述しておくことで、SSHコマンドをシンプルに記述できます。~/.ssh/configファイルを新規作成して、以下を記述してください。

SSHコマンドを以下のように記述します。

パスフレーズの省略

パスフレーズを毎回入力するのは面倒です。ローカルに秘密鍵を登録することで、パスフレーズの入力を省略できます。

事前準備として、ssh-agentサービスを設定します。まず、services.msc を起動します。

サービス(ローカル) から「OpenSSH Authentication Agent」を探し、右クリックメニューの「プロパティ」を開き、スタートアップの種類(E)を「自動」にし、サービスを開始します。これでWindows起動時に ssh-agent が自動起動されます。

PowerShellでssh-agentの状態を確認します。RunningであればOKです。Runningでなければ、Windowsを再起動してください。

次にssh-addコマンドで秘密鍵を登録します。

秘密鍵を登録した状態でSSHコマンドを実行すると、パスフレーズの入力無しで接続できます。

以下のようなメッセージが出力されて接続できない場合、最新のOpenSSHをインストールしてください。

最新のOpenSSHのダウンロードURLは以下です。
https://github.com/PowerShell/Win32-OpenSSH/releases

まとめ

いかがでしたでしょうか。PowerShellからWSL2(Windows Subsystem for Linux 2)のubuntuにSSH接続する方法を紹介しました。Windows PC 1台で完結します。

ぜひご自身でコマンドを打ち込んで、理解を深めてください。

Windowsエンジニア 案件・求人一覧はこちら

インフラエンジニア専門の転職サイト「FEnetインフラ」

FEnetインフラはサービス開始から10年以上『エンジニアの生涯価値の向上』をミッションに掲げ、多くのエンジニアの就業を支援してきました。

転職をお考えの方は気軽にご登録・ご相談ください。

合わせて読みたい

Windows Server 2008の延長サポート期限は2020年1月14日まで!サポート終了に備... 表題の通り、Windows Server 2008とWindows Server 2008 R2の延長サポートがもうすぐ終了してしまいます。 サポート終了に備えるにはどうしたらいいのでしょうか。また、備えていない場合はどうなるのでしょうか。 今回は、上記二点について紹介します。 hbspt....
Windowsにおけるdirコマンドとdirコマンドのよく使うオプション... hbspt.cta.load(20723875, '612df674-d445-4a30-85c6-a47af11e1478', {"useNewLoader":"true","region":"na1"}); Windowsにおけるdirコマンドについて この記事では、Windowsに...
Windowsとは?OSのバージョンやエディションなど詳細を学ぼう... hbspt.cta.load(20723875, '612df674-d445-4a30-85c6-a47af11e1478', {"useNewLoader":"true","region":"na1"}); Windowsとは? Windowsとは米マイクロソフト(Microsoft...
Windowsにおけるコマンドとは?Windowsでコマンドプロンプトを使用する方法... hbspt.cta.load(20723875, '612df674-d445-4a30-85c6-a47af11e1478', {"useNewLoader":"true","region":"na1"}); Windowsにおけるコマンドとは? Windowsはメニューやボタン、スク...
コマンドの概要から利用方法について紹介!Windows 10で活用してみましょう... hbspt.cta.load(20723875, '612df674-d445-4a30-85c6-a47af11e1478', {"useNewLoader":"true","region":"na1"}); 「コマンド」とは? この記事では、Windows 10におけるコマンドの利用...