为Windows10的WSL Ubuntu启动sshd服务并使用Trae远程连接

发布于:2025-03-27 ⋅ 阅读:(27) ⋅ 点赞:(0)

Windows10的WSL Ubuntu,使用起来非常方便,但是美中不足的是,无法从Windows主机ssh到Ubuntu 。

解决的方法是在Ubuntu安装sshd服务

Ubuntu安装sshd服务

执行命令

sudo apt install openssh-server

安装好后,先本地测试:

ssh 127.0.0.1

测试通过后,查看Ubuntu的ip地址,使用命令

ifconfig

查看到ip地址是:172.25.183.186

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.25.183.186  netmask 255.255.240.0  broadcast 172.25.191.255
        inet6 fe80::215:5dff:fe75:1e47  prefixlen 64  scopeid 0x20<link>
        ether 00:15:5d:75:1e:47  txqueuelen 1000  (Ethernet)
        RX packets 3095207  bytes 4536934402 (4.5 GB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1590487  bytes 113010617 (113.0 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

拿到ip地址后,就可以在Windows 10 ssh登录Ubuntu

ssh 172.25.183.186

测试登录成功。有了ssh服务,就可以:

使用Trae连接远程主机

打开Trae编辑器,

1 连接远程主机,写入ssh xxx@172.25.183.186 -A

2 点击SSH连接目标:172.25.183.186

好了,现在我们就可以远程编辑项目了!

下一次启动sshd服务

wsl的Ubuntu关闭后,再次启动,sshd服务不会跟着启动,需要手工运行一下:

sudo /etc/init.d/ssh start

sudo systemctl start ssh

当然也可以设置自动启动,但是有点麻烦

据说要这样做,先在WSL的Linux系统终端中输入以下命令来切换到systemd管理方式:

[-f /etc/wsl.conf] && sudo touch /etc/wsl.conf
sudo echo "[boot]" >> /etc/wsl.conf
sudo echo "systemd=true" >> /etc/wsl.conf
  • 然后需要重启WSL服务,以管理员身份打开PowerShell输入命令wsl --shutdown,然后重新打开WSL的终端‌34。
  • 切换到systemd后,通常不需要额外操作,因为openssh-server安装后默认会开机启动sshd服务。如果没有成功,可以尝试卸载并重新安装openssh-server,然后手动设置开机自动启动sshd服务:
     
    sudo apt remove -purge openssh-server
    sudo apt install openssh-server
    sudo systemctl enable sshd