WSL子系统环境下连接ssh的坑
描述
如何在本机电脑连接ssh
WSL环境下ssh连接的坑
原因 :连接不上ssh
解决
首先在linux中启动SSH连接支持:
#客户端
sudo apt-get install openssh-client
#服务器
sudo apt-get install openssh-server
#或
apt-get install ssh
#/etc/ssh/sshd_config件更改包括端口、是否允许root登录等设置
#默认是不允许root远程登录的
#开启:找到PermitRootLogin without-password 修改为PermitRootLogin yes
sudo vi /etc/ssh/sshd_config
#重启
sudo service ssh --full-restart
这个时候自己电脑上的xhell是可以连接的了, 但是想要在其他的计算机上访问, 就需要在windows系统作端口映射了。
# netsh interface portproxy add v4tov4 listenport=[win10端口] listenaddress=0.0.0.0 connectport=[虚拟机的端口] connectaddress=[虚拟机的ip]
netsh interface portproxy add v4tov4 listenport=22 listenaddress=0.0.0.0 connectport=22 connectaddress=172.22.22.22
#检测是否设置成功
netsh interface portproxy show all
#删除端口映射
netsh interface portproxy delete v4tov4 listenaddress=监听地址 listenport=监听端口
此时,即可在其他电脑上用windows的IP和配置的端口进行ssh连接了。
每次开机后如果连接不上ssh的做法:(起码我每次都是要重启)
当每次win10开机后必须在子系统里面执行 重启ssh
sudo service ssh --full-restart
wsl里面nginx的80端口被占用:
当wsl下nginx的80端口被占用的时候
在win10命令行运行 net stop http