Win11 SSH サーバ設定 @23H2
2024/03/26 08:19
GUI での説明記事を作成するには、限界を感じてしまいますね。
さて、ssh サーバの説明や接続方法等は別な記事を参照いただくとして、対象のバージョン、手順、起動方法、ログイン確認までを説明範囲とします。
Windows 対象バージョン
設定 選択
スタートメニューを右クリックして「システム」を選択します。
バージョン情報 選択
バージョン情報が表示されます。表示されているバージョンが今回の記事で利用しているバージョンです。
この場合、Windows11 Pro のバージョンが 23H2 で、OS ビルドが 22631.3296 になります。

sshd インストール手順
システム
左ペインから「システム」を選択します。システム画面が更新されたら、オプション機能を選択します。

システム> オプション機能
「オプション機能を追加する」の「機能を表示」を選択します。
オプション機能を追加する
OpenSSH サーバーを選択して、チェックがついたら「次へ」を選択します。
インストール
追加する機能を確認されるので、OpenSSH サーバーが表示されていることを確認して「インストール」を選択します。

もう一度アプリのオプション機能画面を表示して、OpenSSH サーバーがあればインストールされています。

sshd 利用
サービス起動手順
OpenSSH サーバーは、サービスとして起動しないと SSH ログインできません。サービス起動するために、まずスタートメニューを右クリックして「コンピューターの管理」を起動します。


「OpenSSH SSH Server」をダブルクリックして「OpenSSH Server のプロパティ」を開きます。
まず、サービスが停止していることが分かります。

また、Windows を起動したらサービスも起動させたい場合は、「全般」タブの「スタートアップの種類」を「手動」から「自動」に変更して「OK」ボタンをクリックします。

sshd_conf
OpenSSH サーバーとして設定は、以下フォルダの設定ファイルで行います。%SystemRoot%\System32\OpenSSH管理者権限でテキストエディタを起動したら sshd_config_default を開いて sshd_config という名前で別名保存します。
コマンドプロンプトを管理者権限で起動すると、簡単にコピーできます。
Win キーを押して cmd を入力し、Ctrl + Shift キーを押しつつ Enter すると、管理者権限でコマンドプロンプトを起動できます。
C:\WINDOWS\system32>cd OpenSSH C:\Windows\System32\OpenSSH>dir C:\Windows\System32\OpenSSH>copy sshd_config_default sshd_config C:\Windows\System32\OpenSSH>notepad sshd_config C:\Windows\System32\OpenSSH>
アンチウィルスソフト
Norton Internet Security をインストールしていますが、LAN 内の Linux サーバからアクセスする場合、特に何の設定も必要なくアクセスできました。アクセスできない場合、インストールされているアンチウィルスソフトの設定を確認してみてください。
ユーザ作成
xxx@hotmail.co.jp のアカウント(いわゆる Microsoft アカウント)では、ssh によるリモートアクセスができません。ということで、ローカルアカウントの作成が必要です。
ユーザ作成には、システム管理権限のあるユーザが必要です。
Tera Term でアクセスする場合、通常の UNIX / Linux へアクセスするのと手順は同じです。
そのまま localhost:22 へ ssh アクセスすると、通常のログイン処理でアクセス可能です。
Windows11 端末に、管理権限のあるユーザでログインしていることをユーザー作成の前提条件とします。
ローカルアカウント追加
ユーザー作成ですが、開いているタスクマネージャーのメニューからユーザーを選択して、そのままユーザーアカウントの管理をクリックします。
ユーザーアカウントの画面がでたら、別のアカウントの管理を選択します。

「PC 設定で新しいユーザーを追加」をクリックします。

「アカウントの追加」をクリックします。

Microsoft アカウント画面が表示されたら「このユーザーのサインイン情報がありません」を選択します。

続いて「Microsoft アカウントを持たないユーザーを追加する」を選択します。

やっとローカルアカウントを作成する画面が表示されるので、必要事項を入力します。

ここでは、サンプルとして test ユーザーを作成します。
まず、ユーザー名とパスワードを入力します。

下へスクロールして、パスワードを忘れた場合の質問に回答します。
ここでは、すぐに削除するので x で埋めていますが、忘れた際に必要になります。

すべて入力して「次へ」をクリックすると、以下の「ほかのユーザー」画面に戻りますので、ユーザーが作られたことを確認します。
ここで作られたユーザーの「アカウントの種類」は「標準ユーザー」です。

リモートアクセスするユーザーに管理者権限が必要な場合は、別途管理者権限を付与してください。
レビュービルド26052以降であれば、Linux の sudo コマンドと同じコマンドが実装されるとのこと。
Windows11 へ SSH アクセス
Tera Term で Windows 11 に対してアクセスし、先ほど設定したユーザー名およびパスワードを入力すると、Windows 11 のターミナル(ここではデフォルトの cmd.exe を利用)にログインできます。
SSHd が動作していれば、Windows 端末の「標準ユーザー」で Tera Term から SSH アクセスが可能です。