需要重新安装一下SSH-Server
sudo apt remove ssh-server # 需要卸载自带版本
sudo apt-get install ssh-server
修改配置文件
sudo vim /etc/ssh/sshd_config
主要把以下几个设置给换了
port 22
ListenAddress 0.0.0.0
PermitRootLogin yes
PasswordAuthentication yes
ChallengeResponseAuthentication no
服务开和关
sudo service ssh start #开启服务
sudo service ssh stop #关闭服务
sudo service ssh restart #重启服务
有时候会启动不成功,提示hostkeys missing,此时需要生成Hostkeys
/etc/ssh/ssh-keygen -A
查看 linux ip ,在linux中输入
ifconfig
看eth0那项的inet的值就是wsl的ip地址,一般是1xx.xx.xx.xx(注意不是127.0.0.1)
先在windows terminal测试一下
ssh root@1xx.xx.xx.xx -p 22
成功了后再试从局域网内其他机器链接。先做端口映射
在windows以管理员身份打开powershell
netsh interface portproxy set v4tov4 listenport=22 listenaddress=0.0.0.0 connectport=22 connectaddress=1xx.xx.xx.xx
开启windows端口22的防火墙
--进入防火墙高级设置
--新建入站规则
--设置规则应用于TCP,且应用于特定本地端口 为22
--应用
或者powershell下执行以下命令
netsh advfirewall firewall add rule name=WSL2 dir=in action=allow protocol=TCP localport=22
查看windows本地IP,一般是192.168.x.xx
ipconfig
然后就可以远程连这个地址了!