选择SSH应用程序
Visual Studio Code
这是目前为止最强大的SSH应用,只需下载VScode并安装Remote-ssh插件,写好配置文件后就能连接。
全程免费,而且附带端口转发、文件编辑、下载等功能,绝对好用!
Tabby
Tabby是一款现代的终端应用,界面简洁。
ServerBox
ServerBox是一款国产的远程服务器监控和操作应用,支持Windows、Linux、Android、MacOS等操作系统。优点是可以监测服务器实时运行状态(包括CPU、内存、温度、网络、硬盘等)。

注意,Serverbox自带的脚本只支持监控Linux系统的运行数据,对于WSL系统,只能监控部分数据。
以下是各ssh应用程序的功能比较:
| 应用 | 特点 | 平台 |
|---|---|---|
| VScode | 功能最强大 | Windows/Linux/MacOs |
| Tabby | 界面简洁美观 | Windows/Linux/MacOS |
| Serverbox | 可以监控服务端的运行 | Windows/Android |
配置 SSH
连接到远程主机的原理与连接MC服务器类似,关键在于确定远程主机的IP地址和端口。
Windows系统
- 安装 SSH 服务
首先在要连接的主机上打开设置,搜索“可选功能”,在“添加可选功能”中搜索“OpenSSH服务器”,下载该功能。
- 启动并配置 SSH 服务
管理员权限打开Powershell,输入:
1Start-Service sshd
2Set-Service -Name sshd -StartupType 'Automatic'
然后开放防火墙端口(默认22):
1New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22
2
3# 其中'OpenSSH Server'是协议的名称,可自行修改
4# 这样默认同时开启IPV4和IPV6的端口,即“127.0.0.1:22”和“[0:0:0:0]:22”
还可以通过以下方法实现:
① 打开防火墙高级设置:控制面板 > Windows Defender 防火墙 > 高级设置(或win+R输入wf.msc)。
② 新建入站规则:右键“入站规则” > 新建规则。
③ 选择规则类型:选择“端口” > 下一步。
④ 指定端口和协议:协议类型:选择 TCP(或 UDP,视应用而定);特定本地端口:输入 22 > 下一步。
⑤ 选择操作:选择“允许连接” > 下一步。
⑥ 选择配置文件:默认全选(域、专用、公用)> 下一步。
⑦ 指定规则名称:如“允许 IPv6 22222 端口” > 完成。
- 注意事项
如果有时开放了防火墙但仍无法连接,可尝试重启电脑(我就是这样解决的……)
Linux系统
- 安装 OpenSSH Server
如果尚未安装,运行:
1sudo apt update
2sudo apt install openssh-server
- 启动 SSH 服务
1sudo systemctl start ssh
2sudo systemctl enable ssh # 开机自启
确认服务正在运行:
1sudo systemctl status ssh
输出中应显示 active (running)。
- 配置防火墙 允许 SSH 默认端口(22):
1sudo ufw enable # 如果防火墙未启用
2sudo ufw allow ssh
- 获取服务器的IP地址
1ip a # 或 hostname -I
找到类似 192.168.x.x 的局域网 IP 或公网 IP(如果适用)。
WSL系统
- 安装 OpenSSH Server 打开 WSL 中的 Ubuntu 终端,执行:
1sudo apt update
2sudo apt install openssh-server
- 配置 SSH 编辑配置文件:
1sudo nano /etc/ssh/sshd_config
确保以下配置项存在且未被注释:
1...
2Port 22
3...
4PasswordAuthentication yes
5PermitRootLogin yes
如果要启用IPV6的SSH连接,还应该保持以下内容未被注释:
1Port 22
2AddressFamily any
3ListenAddress 0.0.0.0
4ListenAddress ::
- 启动 SSH 服务
在 WSL 中,不能使用 systemctl,请使用:
1sudo service ssh start
验证服务是否运行:
1sudo service ssh status
2# 或使用
3ps aux | grep sshd
- 使用WSL的注意事项
① 必须保证Windows防火墙的22端口已被放行;
② WSL系统是Windows的子系统,在Windows开机时,WSL的ssh功能默认并不能开启,此时需要将WSL的ssh注册为系统服务实现Windows开机时启用WSL的ssh功能。
下面给出使用任务计划程序(无需第三方程序)的方法:点击展开
打开任务计划程序
Win+R → taskschd.msc
创建任务:
| 选项 | 操作 |
|---|---|
| 名称 | StartWSL |
| 触发器 | 选择「计算机启动时」 |
| 操作 | 新建 →程序/脚本:wsl.exe,参数:-d Ubuntu-22.04 -u root /usr/sbin/service ssh start(或 -d Ubuntu-22.04 true 单纯启动实例) |
| 设置 | 勾选「允许任务按需运行」 |
保存时输入管理员密码。重启测试即可。
Termux
连接 SSH
- 在 Windows 本地测试:
1ssh 用户名@localhost
- 从局域网其他设备连接:
1ssh 用户名@<Windows主机IP>
- VScode的SSH配置文件:
1Host xxxx # Host的名称,可自定义
2 HostName xxx.xxx.xxx.xxx # SSH服务端的IP地址
3 User xxxxx # 登录的用户名
4 Port xxxxx # SSH服务端的IP端口
注意:VScode的Host名会绑定远程主机的操作系统(Windows、Linux、MacOS)。如果使用同一个Host名连接不同操作系统的主机,需要在设置中修改,否则会报错。(就因为这个,让我花了近1小时)
修改方法:打开
设置→ 搜索Remote Platform→ 修改相应项的值