Windows for OPENSSHインストール

Windows8その他

Windows for OPENSSHをインストールする手順です

Windows環境でsshサーバをたてるにはフリーソフトをインストールする必要があります。今回はその一つでもあるOPENSSHの説明をします。リモートでsshでWindowsにログインできるようになります。

 

OPENSSHとは

オープンソースのリモートツールになります

SSHはLinux系では有名なツールで、最初から標準でインストールされていることが多いですが
Windowsの場合は追加でインストールすることができます

昔はフリーソフトで代用していましたが
最近(Windows 10以降)はPowerShellからインストールを実行できるようです
※Windowsアップデートにより既にインストールされているようです
スタートメニューから「Windows の設定」>「アプリ」>「オプション機能の管理」

SSHはアクセスされる側:sshサーバとアクセスする側:sshクライアントがあります

OpenSSHインストール

1.Windows版OpenSSHをダウンロードする。

「OpenSSH-Win32.zip」を以下からダウンロードし、”C:\Program Files”に展開

Releases · PowerShell/Win32-OpenSSH
Win32 port of OpenSSH. Contribute to PowerShell/Win32-OpenSSH development by creating an account on GitHub.

2.環境変数Pathに “C:\Program Files\OpenSSH-Win32” を追加

コマンドプロンプトから以下のコマンドを実施
> SETX /M PATH “%PATH%;c:\Program Files\OpenSSH-Win32”※setxコマンドがWindows Vista以降では使える

3.SSH の host key をセットアップする。

ssh-keygenコマンドを実行して、host keyを生成します。
> ssh-keygen -A
C:\tools\OpenSSH-Win32\ssh-keygen.exe: generating new host keys: RSA DSA ECDSA ED25519
↑パスを指定しないとアカウントフォルダに展開される

※鍵はサーバ側でもクライアント側(teraterm)どちらでも作成できます。
最終的にはサーバに公開鍵、クライアントに秘密鍵を配置します

4.WindowsサービスとしてSSHサーバを起動する

> sshd install
Service installed successfully
> net start sshd
SSHD サービスを開始します.
SSHD サービスは正常に開始されました。
「システム エラー 1067 が発生しました。」とのメッセージが出るときは
host keyをすべて、sshd.exeがあるフォルダに移動する

アカウントはwindows側でつくる
(Cygwinなどが入っていれば、そこからLinuxベースでも作れるが)

鍵認証設定(ssh.configの設定)

ssh を使ってリモートホストに接続する場合、パスワードを使うよりも鍵交換方式の認証の方が安全です
ここでは sshサーバー のパスワード認証を禁止し、鍵交換方式を採用します

設定ファイル「sshd_config」を以下のように変更します

・無効にしておく
PasswordAuthentication no         パスワードログイン禁止
PermitRootLogin no root           ログインを禁止
PermitEmptyPassword no          パスワード無しのログインを禁止

・有効にしておく
RSAAuthentication yes            RSA認証を許可(ssh1のみ)
PubkeyAuthentication yes          公開鍵認証を許可(ssh2のみ)
AuthorizedKeysFile .ssh/authorized_keys    公開鍵のハッシュ値をまとめたファイル名

細かい項目は以下を参照してください

TeraTermで 公開鍵認証(鍵交換)を使ってSSH 接続してみる | レンタルサーバー・自宅サーバー設定・構築のヒント

設定が完了したら、コマンドプロンプトより、以下のコマンドで再起動します

>net stop sshd
>net start sshd

 

うまくできない場合はこちらの記事が参考になるかもしれません

【ssh】鍵認証ができない
本件は、Windowsをサーバ機としてOPENSSHをインストールしたときにおこった現象 対象がLinuxでも同様に起こる現象だと思われる 切り分けを手順を記載したので同じ事象が起きたとき参考になるかも
タイトルとURLをコピーしました