「設定 - SSHの有効化(Windows)」の版間の差分

提供:MochiuWiki - SUSE, Electronic Circuit, PCB
ナビゲーションに移動 検索に移動
(ページの作成:「== 概要 == Windows 10 version 1803より、OpenSSHが正式にサポートされた。<br> これにより、クライアントプログラムは標準でインスト…」)
 
編集の要約なし
14行目: 14行目:
<br>
<br>
以上で、OpenSSHサーバのインストールは完了である。<br>
以上で、OpenSSHサーバのインストールは完了である。<br>
<br><br>
== SSHクライアントの設定 ==
Windows 10 version 1803以降では、OpenSSHクライアントが標準でインストールされているが、もしインストールされていない場合は、<br>
[スタート] - [設定] - [アプリ] - [オプション機能の管理] - [機能の追加]から、[OpenSSH クライアント]をインストールする。<br>
<br>
PowerShellまたはコマンドプロンプトを起動して、sshコマンドが利用できる。<br>
接続は、SSHサーバが稼働するサーバに対して、以下のようにコマンド入力して接続する。<br>
パスワードは、接続ユーザのパスワードである。<br>
ssh ユーザー名@ホスト名(または、IPアドレス)
<br>
また、scpコマンドやsftpコマンドによるSSHファイル転送も可能である。<br>
OpenSSHに含まれるプログラムのため、使用方法は、LinuxのOpenSSHと同様である。<br>
<br><br>
==  SSH 公開鍵認証 ==
SSHクライアント用の秘密鍵と、SSHサーバ用の公開鍵の鍵ペアを作成し、公開鍵認証でログインできるようにする。<br>
<br>
===== SSHサーバの設定 =====
初期設定では、Administratorsグループのみ、公開鍵(authorized_keys)の場所が.ssh\authorized_keysではなく、<br>
以下のパス / ファイル名に設定されているため注意が必要である。<br>
設定ファイルの場所 : C:\ProgramData\ssh\sshd_config
authorized_keysの場所 : C:\ProgramData\ssh\
authorized_keysのファイル名 : Administrators_authorized_keys
もし、全てのユーザで設定を合わせる場合、事前に、管理者権限で設定ファイルの最後の2行をコメントアウトして、SSHサービスを再起動する必要がある。<br>
<br>
公開鍵・秘密鍵を作成する任意のユーザでログオンして設定する。<br>
以下のように、ssh-keygenコマンドで公開鍵・秘密鍵を生成する。<br>
ssh-keygen
コマンド実行後、ホームフォルダー配下に.sshフォルダが作成され、その直下に鍵ペアが生成される。<br>
<br>
.sshフォルダへ移動し、公開鍵のファイル名をauthorized_keysに変更する。<br>
cd .ssh
mv id_rsa.pub authorized_keys
上記に記載した通り、Windows OpenSSHの標準設定のままでAdministratorsグループ所属の場合は、<br>
authorized_keysではなくファイル名が異なるので注意する。<br>
<br>
公開鍵authorized_keysファイルのアクセス権を変更する。<br>
標準では、Everyoneに読み取り権限が付加されているが、これがあるとSSH鍵認証が通らないため、削除する。<br>
icacls authorized_keys /remove Everyone
<br>
以上で、SSHサーバ側の設定は完了である。<br>
<br>
===== SSHクライアントの設定 =====
接続元のSSHクライアント上で、秘密鍵を設定したいユーザでログオンし、PowerShellまたはコマンドプロンプトを起動する。<br>
次に、ホームフォルダ直下(C:\Users\ユーザ名)に.sshフォルダを作成する。<br>
その.sshフォルダ直下に秘密鍵のファイル(id_rsa)を置く。<br>
<br>
最後に、SSHサーバに接続できることを確認する。(公開鍵・秘密鍵の生成時にパスフレーズを設定した場合は、パスフレーズの入力が求められる)<br>
ssh ユーザ名@SSHサーバのホスト名(または、IPアドレス)
<br>
以上で、SSHクライアント側の設定は完了である。<br>
<br><br>
<br><br>


__FORCETOC__
__FORCETOC__
[[カテゴリ:Windows10]]
[[カテゴリ:Windows10]]

2020年2月16日 (日) 07:13時点における版

概要

Windows 10 version 1803より、OpenSSHが正式にサポートされた。
これにより、クライアントプログラムは標準でインストールされ、サーバプログラムについても容易にインストール可能となっている。


OpenSSHサーバのインストール

  1. [スタート] - [設定]を選択する。
  2. [アプリ]を選択する。
  3. [オプション機能の管理]を選択する。
  4. [機能の追加]を選択する。
    なお、[OpenSSH クライアント]は標準でインストールされている。
  5. [OpenSSH サーバー]を選択して、[インストール]ボタンを押下する。
  6. インストール完了後は、サービス一覧に[OpenSSH Server]が登録される。
    サービスを開始して、スタートアップを[自動]に変更しておくとよい。
  7. Windows Firewallの設定は、自動でOpenSSHサーバが許可された状態となっているが、もし設定がされていない場合は手動で許可する必要がある。


以上で、OpenSSHサーバのインストールは完了である。


SSHクライアントの設定

Windows 10 version 1803以降では、OpenSSHクライアントが標準でインストールされているが、もしインストールされていない場合は、
[スタート] - [設定] - [アプリ] - [オプション機能の管理] - [機能の追加]から、[OpenSSH クライアント]をインストールする。

PowerShellまたはコマンドプロンプトを起動して、sshコマンドが利用できる。
接続は、SSHサーバが稼働するサーバに対して、以下のようにコマンド入力して接続する。
パスワードは、接続ユーザのパスワードである。

ssh ユーザー名@ホスト名(または、IPアドレス)


また、scpコマンドやsftpコマンドによるSSHファイル転送も可能である。
OpenSSHに含まれるプログラムのため、使用方法は、LinuxのOpenSSHと同様である。


SSH 公開鍵認証

SSHクライアント用の秘密鍵と、SSHサーバ用の公開鍵の鍵ペアを作成し、公開鍵認証でログインできるようにする。

SSHサーバの設定

初期設定では、Administratorsグループのみ、公開鍵(authorized_keys)の場所が.ssh\authorized_keysではなく、
以下のパス / ファイル名に設定されているため注意が必要である。

設定ファイルの場所 : C:\ProgramData\ssh\sshd_config
authorized_keysの場所 : C:\ProgramData\ssh\
authorized_keysのファイル名 : Administrators_authorized_keys

もし、全てのユーザで設定を合わせる場合、事前に、管理者権限で設定ファイルの最後の2行をコメントアウトして、SSHサービスを再起動する必要がある。

公開鍵・秘密鍵を作成する任意のユーザでログオンして設定する。
以下のように、ssh-keygenコマンドで公開鍵・秘密鍵を生成する。

ssh-keygen

コマンド実行後、ホームフォルダー配下に.sshフォルダが作成され、その直下に鍵ペアが生成される。

.sshフォルダへ移動し、公開鍵のファイル名をauthorized_keysに変更する。

cd .ssh
mv id_rsa.pub authorized_keys

上記に記載した通り、Windows OpenSSHの標準設定のままでAdministratorsグループ所属の場合は、
authorized_keysではなくファイル名が異なるので注意する。

公開鍵authorized_keysファイルのアクセス権を変更する。
標準では、Everyoneに読み取り権限が付加されているが、これがあるとSSH鍵認証が通らないため、削除する。

icacls authorized_keys /remove Everyone


以上で、SSHサーバ側の設定は完了である。

SSHクライアントの設定

接続元のSSHクライアント上で、秘密鍵を設定したいユーザでログオンし、PowerShellまたはコマンドプロンプトを起動する。
次に、ホームフォルダ直下(C:\Users\ユーザ名)に.sshフォルダを作成する。
その.sshフォルダ直下に秘密鍵のファイル(id_rsa)を置く。

最後に、SSHサーバに接続できることを確認する。(公開鍵・秘密鍵の生成時にパスフレーズを設定した場合は、パスフレーズの入力が求められる)

ssh ユーザ名@SSHサーバのホスト名(または、IPアドレス)


以上で、SSHクライアント側の設定は完了である。