Technology WSL

Windows 11 HomeのWSLにSSHサーバを設定する

概要

WSL上に設定したOpenShiftにWindowsからのSSHポートフォワーディングでアクセスしたいと思いWSLにSSHサーバを設定した際の備忘録

環境

  • Windows 11 Home
  • WSL2 (Ubuntu 22.04.4 LTS)

インストールと設定

  • WSLでsystemd を有効にする
    ※ ファイルがない場合、以下内容で"/etc/wsl.conf"ファイルを作成します。
    ※詳細はここを参照

    tech-0222@MSI:~$ cat /etc/wsl.conf
    [boot]
    systemd=true
    tech-0222@MSI:~$
  • パッケージインストール

    sudo apt install ssh -y
  • サービスの自動起動の有効化

    sudo systemctl enable ssh
  • サービスの起動確認

    sudo systemctl status ssh

SSHポートフォワーディング用のsshd_config設定

SSHポートフォワーディングで利用する為の最低限の設定をします。
これがないと、ポートフォワーディングがエラーになりました。

※SSHサーバとしては、セキュリティ的にいろいろ設定した方がいいですが、今回は割愛します

# 変更ファイル
vi /etc/ssh/sshd_config

# 設定値の以下コメントをアンコメントする
ListenAddress 0.0.0.0
ListenAddress ::
  • 上記設定がないとSSHポートフォワーディングで接続した際に以下エラーになりました。
ssh2_msg_channel_open_failure connect failed(2)
Name or service not known

アクセス確認

以下でアクセスできれば、WindowsからWSLにSSH接続できる環境が完成です。

  • SSH接続に使用するWSLのIPを確認します (WSL上で実行)
ip addr show eth0
  • PowerShellを起動してSSHコマンドでWSLに接続を試します。(Windows上で実行)
> ssh <USER>@<IP Address>
> ssh tech-0222@172.24.50.116

※"172.24.50.116"は、WSLで確認したIPアドレス
※"tech-0222"は、WSLのログインユーザ

人気記事

1

Kubernetes kubectl rollout コマンドでdeploymentをロールバックしてみる 概要 kubectl rollout コマンドでデプロイ履歴を確認してロールバックするやり方 ...

2

  terraformのバージョン管理どうすればいいのか? terraformの複数バージョンを簡単に動かしたい terraformのインストール方法が分からない と、疑問を抱えている人の疑 ...

3

本記事では どんな環境にterraformをインストールできるの? terraformのインストールどうしたらいいの? terraformのどのバージョンをインストールすればいいの? と、困っている人 ...

4

Kubernetes kubectl version コマンドでバージョンを調べてみる 概要 kubectl version は、Kubernetes の Client、Serverのバージョンを確認 ...

-Technology, WSL