2019年07月21日更新
【Windows10】オンデマンド機能のOpenSSHサーバーのインストール方法!
Windows10におけるオンデマンド機能のOpenSSHサーバーのインストール方法を知っていますか。本記事ではそのほかにも、Windows10のオンデマンド機能のOpenSSHサーバーにおけるあらゆる情報を紹介していきます。
目次
- 1【Windows10】オンデマンド機能のOpenSSHサーバーのインストール方法〜デスクトップ〜
- ・デスクトップ環境でインストールする手順
- 2【Windows10】オンデマンド機能のOpenSSHサーバーのインストール方法〜Server Core〜
- ・Server Core環境でインストールする手順
- 3【Windows10】オンデマンド機能のOpenSSHサーバー関係のPath
- ・OpenSSHサーバー関係のPath一覧
- 4【Windows10】オンデマンド機能のOpenSSHサーバー用のポート開放設定
- ・PowerShellで22番ポートを開放
- ・ファイヤーウォールの設定で受信規則を変更
- 5【Windows10】オンデマンド機能のOpenSSHサーバーの起動
- ・デスクトップ環境でサービスを有効化
- ・PowerShell/コマンドプロンプトでサービスを有効化
- 6【Windows10】オンデマンド機能のOpenSSHサーバーの公開鍵認証設定
- ・sshd_confの設定
- ・キーペアの作成
- ・公開鍵認証でログイン
- 7【Windows10】オンデマンド機能のOpenSSHサーバーのログ
- ・ログの確認方法
- ・まとめ
- ・合わせて読みたい!Windows10に関する記事一覧
【Windows10】オンデマンド機能のOpenSSHサーバーのインストール方法〜デスクトップ〜
まずは【Windows10】オンデマンド機能のOpenSSHサーバーのインストール方法の手順を紹介していきます。Windows10におけるインストール方法ではいくつか分けて紹介しますが、はじめは「デスクトップ」を着目して解説します。
Windows10におけるオプション機能の管理・機能の追加・PowerShellの有効化に関して解説していきます。オプション機能の管理はデスクトップで、PowerShellの有効化については記事後半でみていきます。
また、Windows10のデスクトップ環境でサービスを有効化したりもしくは、PowerShell/コマンドプロンプトでサービスを有効化についても解説します。
デスクトップ環境でインストールする手順
【Windows10】オンデマンド機能のOpenSSHサーバーのインストール方法として、デスクトップ環境でインストールする手順は以下のとおりです。Windows10におけるオプション機能の管理に着目してください。
・Windows10のスタートメニューから「設定」を開く
・「アプリ」をクリックする
・「オプション機能の管理」をクリックする
・「機能の追加」をクリックする
・「OpenSSHサーバー」を選択してインストールする
Windows10における「オプション機能の管理」をクリックすると、「機能の追加」が表示されることを確認しましょう。
スタートメニューから「設定」を開く
【Windows10】オンデマンド機能のOpenSSHサーバーをインストールするには、まずWindows10のスタートメニューから「設定」を開きましょう。
「アプリ」をクリック
Windows10のスタートメニューから「設定」を開いたら、「アプリ」をクリックしてください。
「オプション機能の管理」をクリック
Windows10の「アプリ」をクリックしたら、次にWindows10の「オプション機能の管理」をクリックしてください。
「機能の追加」をクリック
「オプション機能の管理」をクリックすると、「機能の追加」が表示されます。そこで「機能の追加」をクリックしましょう。
「OpenSSHサーバー」を選択してインストール
Windows10の「機能の追加」をクリックすると、いくつかオプションが表示されます。その中から「OpenSSHサーバー」を選択してインストールしてください。
「自動」に変更する
Windows10の「OpenSSHサーバー」を選択してインストールできたら、インストール完了した後はサービス一覧に 「OpenSSH Server]」が登録されます。そしてサービスを開始し、スタートアップを 「自動]」に変更しておきましょう。
【Windows10】オンデマンド機能のOpenSSHサーバーのインストール方法〜Server Core〜
続いて紹介するWindows10】オンデマンド機能のOpenSSHサーバーのインストール方法は、Server Core環境でインストールする方法です。上記では「オプション機能の管理」をクリックすると、「機能の追加」が表示されるのがポイントです。
Windows10の「オプション機能の管理」と「機能の追加」が表示されない場合は他の方法を試してみてください。以下では「オプション機能の管理」や「機能の追加」には関係ない方法です。
また、Windows10のデスクトップ環境でサービスを有効化したりもしくは、PowerShell/コマンドプロンプトでサービスを有効化については以下で解説していきます。
Server Core環境でインストールする手順
Windows Server 2019のServer Coreインストール環境、もしくはServer Coreだけで提供されているWindows Server,version 1809の場合には、「設定」アプリを使用したオンデマンド機能のインストールができないことを知っていますか。
Server Core環境では、PowerShellで下記のコマンドラインを実行することによって、OpenSSHサーバ機能をインストールできるので参考にしてみてください。
まずは1行目で、OpenSSHクライアントとOpenSSHサーバ機能の名前あるいはインストール状態を確認してください。そして、2行目のコマンドラインでOpenSSHサーバをインストールしていきます。
なお、Windows Server,version1803以前はオンデマンド機能としてのOpenSSHサーバは提供されないのです。
【Windows10】オンデマンド機能のOpenSSHサーバー関係のPath
ここでは【Windows10】オンデマンド機能のOpenSSHサーバー関係のPathを表で解説していきます。
Windows10のLinux環境などでOpenSSHを運用したことがある人の場合には、Windows10の設定ファイルであるsshd_configに設定を記述することだと認識できていると思います。
Windows10のデスクトップ環境でサービスを有効化したりもしくは、PowerShell/コマンドプロンプトでサービスを有効化に関してはここでは紹介しません。
OpenSSHサーバー関係のPath一覧
sshd_configはsshd.exeの起動パラメータに-fオプションで指定することによって任意ファイルを指定可能です。
なお、Windows10のOpenSSHサーバーをインストールした後、%PROGRAMDATA%\ssh\sshd_configは大半の場合、コメントアウトされた状態です。
必要に応じてWindows10のコメントアウトを外したり、もしくは設定値を変更したりしていきましょう。コマンドプロンプトから作業する場合には別のコマンドを実行する必要があります。
それでは、Windows10のOpenSSHサーバー関係のPath一覧を見ていきましょう。
Path | |
Executable binary | %WINDIR%\System32\OpenSSH 例. C:\Windows\System32\OpenSSH |
sshd_config | %PROGRAMDATA%\ssh\sshd_config 例. C:\ProgramData\ssh\sshd_config |
authorized_keys | %USERPROFILE%\.ssh\authorized_keys 例. C:\Users\USERNAME\.ssh\authorized_keys |
【Windows10】オンデマンド機能のOpenSSHサーバー用のポート開放設定
【Windows10】オンデマンド機能のOpenSSHサーバー用のポート開放設定では、以下の2点に着目していきます。
・PowerShellで22番ポートを開放
・ファイヤーウォールの設定で受信規則を変更
PowerShellで22番ポートを開放
まずスタートメニューを開いて、「powershell」と検索します。続いて、「Power Shell」を右クリックして「管理者として実行」をクリックしてください。
そして、下記のコマンドを実行します。以上でインストールは完了です。
・cd "C:\Program Files\OpenSSH"
・install-sshd.ps1
そうして、「サービス」を開くとsshdが追加されています。右クリックしてから開始をクリックすることでsshdが立ち上がり、外からssh接続ができるのです。
コマンドプロンプトを開き、sshコマンドを実行することによって、sshのヘルプも正しく表示されています。その後は通常通りsshコマンドで接続情報を指定することにより、コマンドプロンプトから外部のマシンにssh接続することもできます。
ファイヤーウォールの設定で受信規則を変更
OpenSSHサーバーをインストールすることによって、sshdがTCP22番ポートを待ち受けるための受信の規則は「OpenSSH SSH Server (sshd)」という名前で自動作成されています。
したがって、そのままOpenSSHサーバーへの通信が可能です。ただし、ハードニングの観点から接続元ホストを絞りたい、もしくはファイヤーウォールで何らかの制限をかけたい場合もあります。
多くの場合、192.168.1.0/24のLAN内に設置され、LAN内からの接続のみ許可するように設定する場合を例としています。
まずは、「セキュリティが強化されたWindows Defender ファイヤーウォール」から「OpenSSH SSH Server (sshd)」という名前の受信の規則のプロパティを表示させて「スコープ」タブを開きましょう。
デフォルトではリモートIPアドレスが」任意のIPアドレス]になっているので、任意のマシンからアクセスできます。ラジオボタンで「これらのIPアドレス」を指定することで、ダイアログが開くでそう。
ここでIPアドレスを指定することで、そのマシン以外からのアクセスを拒否可能になります。
【Windows10】オンデマンド機能のOpenSSHサーバーの起動
ここでは【Windows10】オンデマンド機能のOpenSSHサーバーの起動について深掘りしていきます。以下の2点に着目します。
・デスクトップ環境でサービスを有効化
・PowerShell/コマンドプロンプトでサービスを有効化
デスクトップ環境でサービスを有効化
ファイル名を指定して実行でservices.mscを起動することで、「OpenSSH SSH Server」というサービスが停止状態で存在します。このGUI上で「開始」をクリックすれば、sshdが起動します。
また、開始後に「停止」をクリックすればsshdは終了します。スタートアップの種類を「手動」から「自動」に変更することによって、Windows起動時にsshdも自動起動します。
もしもCLIで起動/停止を制御した場合には、以下のようにコマンドを実行しましょう。
・REM sshd起動
・net start sshd
・REM sshd停止
・net stop sshd
PowerShell/コマンドプロンプトでサービスを有効化
PowerShellを起動してから、ssh localhostと実行することによって、22番ポートが閉じて接続が拒否されます。以下のコマンドです。
・1ssh: connect to host localhost port 22: Connection refused
したがって、続いてPowerShell を管理者モードで起動し、以下のコマンドを実行します。
・New-NetFirewallRule -Protocol TCP -LocalPort 22 -Direction Inbound -Action Allow -DisplayName SSH
そして、以下のコマンドでOpenSSH サーバーのサービスを起動しましょう。
・Start-Service sshd
【Windows10】オンデマンド機能のOpenSSHサーバーの公開鍵認証設定
次は【Windows10】オンデマンド機能のOpenSSHサーバーの公開鍵認証設定についてお伝えしていきます。以下の3つに着目します。
・sshd_confの設定
・キーペアの作成
・公開鍵認証でログイン
sshd_confの設定
Windows10のOpenSSH サーバーの設定は、C:\Windows\System32\OpenSSH 内の sshd_confと記述します。そして、デフォルト設定は同フォルダにある sshd_config_default を参考に設定していきましょう。
また、このフォルダのファイルは管理者権限でないと書き込みできないので、Windows10のメモ帳のテキストエディタを管理者権限で起動してから編集する必要しなければなりません。
それから、sshd_config_default からsshd_config をコピーして作成していきますが、Windows10の公開鍵設定を以下のように行いましょう。
・#コメントを外す
・#PubkeyAuthentication yes
・PubkeyAuthentication yes
修正が終わりましたら、OpenSSH を再起動してください。再起動の方法は、PowerShell を管理者権限で起動してから以下のコマンドを実行するという流れです
・Restart-Service sshd
キーペアの作成
まずは、Windows10のPowerShellで以下のコマンドを実行し、公開鍵・秘密鍵のキーペアを作成していきます。
・cd c:\users\$env:username
・ssh-keygen -t rsa -f id_rsa
ただ、パスワードの入力を求められます。しかし、今回はWindows10のEnter をクリックしてスキップします。なお、公開鍵を既定の場所に配置するコマンドは以下です。
・copy id_rsa.pub .ssh\authorized_keys
公開鍵認証でログイン
公開鍵認証でログインでは、下記のコマンドで秘密鍵を使用してログインしてください。パスワードが求められない場合があるので覚えていきましょう。
・ssh -i id_rsa username@localhost
【Windows10】オンデマンド機能のOpenSSHサーバーのログ
最後に紹介するのは、【Windows10】オンデマンド機能のOpenSSHサーバーのログです。以下で確認方法を見ていきましょう。
ログの確認方法
ログの確認方法ではまず、Windowsの関係でOpenSSHサーバーも標準ではイベントログに出力されるのです。ファイル名を指定してから、実行でEventVwrを実行することでイベントビューアーが開きます。
しかしながら、「アプリケーションとサービスログ」から「OpenSSH」を選択して「Operational」を開くことによって、sshd経由でのログイン周りのログなどが出力されていることがわかります。
まとめ
今回の記事では、【Windows10】オンデマンド機能のOpenSSHサーバーのインストール方法!というテーマで執筆しました。【Windows10】オンデマンド機能のOpenSSHサーバーに関するあらゆる情報を紹介したので、ぜひ参考にしてみてください。