ポートフォワード無しに、外部端末からWindows 10 WSLへSSH接続方法について
WSLのopenssh serverに向けて、Windows側でポートフォワード設定したくなかったので、いろいろ調べて一番簡単だった方法をメモします
0. 前提
- SSH clientがインストールされた、メインPCがある
- WSLをインストール済みの、サブPCがある。
- Windowsユーザー名が「英文字」(漢字ひらカナもできるけど入力がめんどくさいので)
- Windowsユーザーのパスワードを設定している(パスワード無くていいはずがない)
- ローカルネットワークのIP addressを知っている(固定IPがおすすめ)
1. 準備(サブPCで)
- このofficialインストラクションに従って、OpenSSH serverを、Windows 10側に(WSL上でない)インストールする
-
Powershell.exe
を管理者権限で実行し、以下を入力して、startupのときにssh serverが立ち上がるようにする
Set-Service -Name sshd -StartupType 'Automatic'
そして、再起動する
2. 接続方法(メインPCで)
- ターミナルを立ち上げる
- 以下のように入力
ssh win_user_name@sub_pc_ip_address -t 'wsl ~'
win_user_name
はWindowsのユーザー名、sub_pc_ip_address
はサブPCのIPアドレス。
パスワードを入力すると、若干間をおけれど、サブPCのWSLに行きます
3. 考察
Pros | Cons |
---|---|
少なくともポートフォワードよりは圧倒的に簡単 | 1. GUI立ち上げができない 2. パスワード流出したら即アウト |
よりいい方法ありましたら、ご教示ください。
参考