一、重新安装SSH-server

# 删除原ssh-server
sudo apt purge openssh-server
# 重新安装
sudo apt install openssh-server

关闭WSL-ubuntu,重新打开

二、防止端口冲突

# 配置ssh
sudo vi /etc/ssh/sshd_config

# 配置如下,自己去找对应的选项

Port 2111 # 端口号 默认22
AddressFamily any
ListenAddress 0.0.0.0
ListenAddress ::
PasswordAuthentication yes

三、启动SSH

# 启动ssh
sudo service ssh start
# 检查是否启动成功
service ssh status
# 出现:Active: active (running)即成功

# 设置ssh为开机自启动
sudo systemctl enable ssh

四、设置台式机的相关配置

# 先查看WSL2-ubuntu的ip,运行如下:
ifconfig

# 在台式机的powershell(管理员模式)下配置端口映射,要关闭WSL2-ubuntu
netsh interface portproxy set v4tov4 listenport=2233 listenaddress=0.0.0.0 connectport=2111 connectaddress= 172.31.66.233
# listenport win10监听的端口号
# listenaddress win10监听的外网地址,0.0.0.0指所有地址
# connectport 映射的linux的端口 也就是ssh的开启端口
# connectaddress linux的ip
# 可以理解为,所有0.0.0.0的主机发往win10:2233端口的tcp信息都会转发到 172.31.66.233:2111 

 台式机的linux的ip填写如下:

然后还需要开启台式机的2233端口防火墙

进入防火墙,依次点击 高级设置 -> 入站规则 -> 新建规则

  • 依次点击 端口 -> 下一页 -> TCP -> 特定本地端口
  • 在 特定本地端口中输入咱们刚才设置的 2233 端口,点击 下一页
  • 点击 允许连接 -> 下一页 -> 下一页,最后填写 名称 -> 完成

最后查看台式机的ip地址 :ipconfig

五、xshell连接或者是VScode连接

演示vscode连接,先安装ssh插件

 点击设置配置文件:

 配置如下:

# Read more about SSH config files: https://linux.die.net/man/5/ssh_config
Host WSL2-ubantu20.04
    HostName 10.10.225.61
    User kuzmazs
    Port 2233

# Host:随便取名字
# HostName:台式机ip地址
# User:连接的ubantu用户名
# Port:前面设置的端口

连接即可:

 输入密码就行

更多推荐