🟢使用 SSH 连接远程计算机 WSL2 的最简单方法
无需设置端口转发,从 Windows 10 开始,系统自身就已经可以安装 SSH 服务了。因此,远程计算机可以直接使用 SSH 连接 Windows。默认情况下,Windows 使用 PowerShell 作为 shell 工具。但是,我们可以将默认的 PowerShell 替换成 WSL2 的 Bash,从而更加简便地解决远程连接 WSL 的问题。
检查并安装 OpenSSH Server
在 WSL2 所在的计算机上,打开 Windows 环境中的 PowerShell,并以管理员身份执行以下命令,查看 OpenSSH Server 是否被安装:
Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'输出示例:
Name : OpenSSH.Client~~~~0.0.1.0
State : Installed
Name : OpenSSH.Server~~~~0.0.1.0
State : NotPresent如果 OpenSSH.Server 显示未安装(NotPresent),则执行以下命令进行安装:
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0启动 SSHD 服务
安装完成后,启动 sshd 服务,可以手动启动,也可以设置成自动启动:
手动启动
Start-Service sshd设置成自动启动
Set-Service -Name sshd -StartupType 'Automatic'查看服务状态
替换默认 Shell 为 WSL2 的 Bash
使用以下命令替换掉 SSH 服务默认的 Shell:
如此一来,就可以使用 SSH 直接远程连接这台计算机了。用户名密码登录成功后直接进入 WSL2 的 Bash 界面。
注意:由于这里是直接连接 Windows 下的 SSH Server,所以 SSH 使用的用户名和密码也是 Windows 的用户名和密码。
配置 WSL 默认用户
第一步
在 WSL 的 root 用户下,用 vim 打开 /etc/wsl.conf 文件:
第二步
在文件中添加以下代码,仅需将 user_name 替换成你原来 WSL 的用户名即可:
例如:
重启 WSL
在 PowerShell 下输入:
这样就完成了配置,可以使用 SSH 连接到 WSL2 了。
Last updated