💻

リモート先のwsl(AlmaLinux 8)にVSCodeでSSHするまで

2023/10/02に公開

何をしたいか

  • ローカルのWindows PCから、リモート先のWindows11上で動ているAlmaLinux 8にssh接続をしたい
  • あわよくばVSCodeでremote windowしたい

接続

前提条件

  • wslは使える前提
  • リモート先はAlmaLinux 8はインストール済み
  • VSCodeはインストール済み

リモート先のWSLで必要な設定

Install sshd

dnf install openssh-server openssh-clients

Install systemctl

ここを参考にWSL AlmaLinux 8でsystemctlを使えるようにする

うまく起動できないときはsudo systemctl reset-failedとかすると起動できたりできなかったり

set pub key

~/.ssh/authorized_keysに公開鍵を入れる

リモート先のWindowsで必要な設定

まずwindowsにopen sshを追加

そのあと
管理者権限で実行

netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=WINDOWS_PORT connectaddress=127.0.0.1 connectport=WSL_PORT
 New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd) for WSL' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort WINDOWS_PORT

vpnを使っているのでlinux側でfirewallなどは使っていませんが、基本使ったほうがいい…はず…

トラブルシューティング

「前回まで接続できてたのにkey_exchange~というエラーが出て接続できない!」というときはリモート先のsystemctlが生きているか以下のコマンドで確認

sudo systemctl status sshd

このコマンドが実行できなかったりsshdが死んでいた場合はsystemctlを起動しよう

Discussion