当前位置:首页 > 系统教程 > 正文

手把手教你WSL安装SSH服务:Ubuntu配置SSH实现远程连接详解(从零开始搭建WSL远程开发环境)

在现代化的开发流程中,Windows Subsystem for Linux (WSL) 已成为连接Windows与Linux世界的桥梁。为了让你的Ubuntu配置SSH后,能够通过VS Code、Xshell等工具进行远程连接,本文将详尽展示在WSL的Ubuntu中安装和配置SSH服务的全过程。无论你是初学者还是资深开发者,都能跟随本教程实现高效的WSL远程连接

第一步:更新软件包并安装SSH服务器

首先,打开你的WSL Ubuntu终端。在开始WSL安装SSH之前,我们需要确保系统软件包是最新的,以避免依赖冲突。执行以下命令来更新源和软件包:

sudo apt update && sudo apt upgrade -y

更新完成后,我们就可以正式安装OpenSSH服务器了。这是实现SSH服务配置教程的核心步骤:

sudo apt install openssh-server -y

安装过程通常很快,等待提示完成即可-1-5-8。

第二步:修改关键SSH配置文件

为了让外部工具能够顺利连接到你的WSL Ubuntu,我们需要修改SSH的配置文件/etc/ssh/sshd_config。这里主要调整两个关键的SSH服务配置:允许密码登录和允许Root登录(请根据安全需求慎重考虑)。

使用vim或nano编辑配置文件:

sudo nano /etc/ssh/sshd_config

在文件中找到或添加以下几行,确保它们的值如下所示:

Port 22PasswordAuthentication yes# 如果你需要直接登录root账户,可以将下面的prohibit-password改为yes,强烈建议保持noPermitRootLogin no

修改完成后,按Ctrl+O保存,Ctrl+X退出nano编辑器-1-10。

手把手教你WSL安装SSH服务:Ubuntu配置SSH实现远程连接详解(从零开始搭建WSL远程开发环境) WSL安装SSH  Ubuntu配置SSH WSL远程连接 SSH服务配置教程 第1张

第三步:启动SSH服务并设置开机自启

配置完成后,我们需要启动SSH服务。在较新版本的WSL中(支持systemd),推荐使用以下命令:

sudo systemctl start sshsudo systemctl enable ssh

如果你的WSL版本较旧,可以使用service命令作为替代:

sudo service ssh startsudo service ssh restart

使用status命令检查服务是否正在运行:

sudo systemctl status ssh

如果看到绿色的“active (running)”字样,说明启动成功-1-8-10。

第四步:处理WSL特殊环境与自启动问题

在WSL中,由于子系统并非完全独立的内核,传统的开机自启概念有所不同。为了解决WSL远程连接在重启Windows后失效的问题,建议启用systemd支持。编辑/etc/wsl.conf文件:

sudo nano /etc/wsl.conf

填入以下内容以启用systemd:

[boot]systemd=true

保存文件后,需要在Windows PowerShell中执行以下命令重启WSL:

wsl --shutdown

然后重新打开WSL Ubuntu,再次运行sudo systemctl status ssh,你应该能看到SSH已经根据enable设置自动启动了-1-9。

第五步:防火墙与连接测试

如果你在Windows上启用了防火墙,可能需要添加一条入站规则允许TCP端口22(或你修改后的端口)。另外,如果你在WSL内部开启了ufw防火墙,也需要放行SSH:

sudo ufw allow 22/tcpsudo ufw reload

现在,你可以在Windows的命令提示符或PowerShell中测试连接:

ssh 你的WSL用户名@localhost

输入你的WSL用户密码后,你应该能成功登录。至此,你已经完成了完整的Ubuntu配置SSH任务,可以尽情享受WSL远程连接带来的便利-1-10。

进阶安全建议

为了确保你的环境更加安全,推荐使用密钥认证代替密码登录:

# 在Windows客户端生成密钥对(如果已有请忽略)ssh-keygen -t rsa -b 4096# 将公钥复制到WSL Ubuntu中ssh-copy-id 你的WSL用户名@localhost

然后编辑sshd_config,将密码认证关闭:PasswordAuthentication no,并重启服务-1。