SSHFS-Win 保姆级教程:把 Linux 挂成 Windows 本地盘(密钥免密)
一、前言
本教程最终实现:
Windows 此电脑里多出一个本地盘(如 Z 盘)
打开就是 Linux 服务器文件,可直接复制、编辑、删除、保存
不用输密码、不用开 FTP、不用每次登录
支持开机自动连接
我的环境:
本地:Windows 10
远程:Linux(Ubuntu)
远程 IP:
192.168.8.144远程用户:
root
二、准备工作(Linux 端)
1. 安装 SSH + SFTP 服务(必须)
打开 Linux 终端,依次执行下面命令:
#更新软件源 apt update #下载ssh apt install openssh-server openssh-sftp-server -y #启动并设置开机自启: systemctl enable ssh systemctl start ssh #查看ssh状态 systemctl status ssh显示active (running)说明服务正常。
2. 配置 SSH 密钥免密登录(关键!)
(1)Windows生成密钥
查看本地公钥文件
进入路径 C:\Users\你的用户名\.ssh\,检查是否存在id_rsa.pub文件。
存在:直接跳转至步骤 (2)
不存在:继续执行后续操作
打开 PowerShell,执行:ssh-keygen -t rsa
一路回车,不要设置密码。
生成后密钥位置:C:\Users\你的用户名\.ssh\
里面有两个文件:
id_rsa(私钥,留在 Windows)
id_rsa.pub(公钥,传到 Linux)
(2)把公钥写入 Linux
先在 Linux 创建目录并设置权限:
mkdir -p /root/.ssh
chmod 700 /root/.ssh
打开windows的公钥文件,把全部内容复制下来,在 Linux 执行:
vim /root/.ssh/authorized_keys
粘贴进去,保存退出。
再设置权限:
chmod 600 /root/.ssh/authorized_keys
(3)修改 Linux SSH 配置
在 Linux 执行:
vim /etc/ssh/sshd_config
确保以下内容正确:
PermitRootLogin prohibit-password
PasswordAuthentication no
Subsystem sftp /usr/lib/openssh/sftp-server
重启 SSH:
systemctl restart ssh
验证成功方法:
Windows打开 PowerShell,执行:ssh root@192.168.8.144
不用输密码直接登录,说明密钥配置成功。
三、Windows 安装软件(必须按顺序)
1. 安装 WinFsp(核心驱动)
下载地址:https://github.com/winfsp/winfsp
(1)以管理员身份运行WinFsp安装包
找到下载好的WinFsp安装包,右键选择以管理员身份运行
如果右键菜单缺少管理员选项,可以通过命令提示符(CMD)强制管理员运行
找到你的 WinFsp 安装包,复制它的完整路径(比如:
D:\Downloads\winfsp-2025.msi)msiexec /i "D:\Downloads\winfsp-2025.msi"
(2) 安装向导
一路点击Next,来到组件选择界面,仅保留默认勾选的 Core 组件,其余选项无需勾选
✅Core(已勾选)这是 WinFsp 的核心运行库,必须安装。没有它,SSHFS-Win 完全无法工作。
❌Developer / Kernel Developer / FUSE for Cygwin(未勾选,默认就是不装)这些是给开发人员用的组件:
Developer:用户态开发工具
Kernel Developer:内核态驱动开发工具
FUSE for Cygwin:Cygwin 环境下的 FUSE 接口这些都和你 “挂载 Linux 目录到 Windows” 的场景无关,不安装完全不影响使用。
验证成功方法:
按下Win+R,输入services.msc打开服务列表,找到WinFsp,状态显示为正在运行即为正常。
2. 安装 SSHFS-Win
下载地址:https://github.com/winfsp/sshfs-win
页面内区分版本,选择 STABLE 稳定版。
(1) 运行下载好的 MSI 安装包,保持默认安装路径与组件,直接点击Next完成安装。![]()
(2) 安装完成后无需配置也无需重启电脑,会自动生效。
四、映射网络驱动器(最关键步骤)
1. 打开映射功能
打开「此电脑」,点击顶部导航栏的计算机→映射网络驱动器。
2. 设置盘符并填写映射路径
在弹出的窗口中,下拉选择一个未占用的盘符,示例选择Z:
✅ 挂载 Linux根目录 /
\\sshfs.k\root@192.168.8.144\..\..\
✅ 挂载 root 家目录 /root
\\sshfs.k\root@192.168.8.144
✅ 挂载指定目录(例如 /home)
\\sshfs.k\root@192.168.8.144\home
3. 选项勾选(重点)
✅ 勾选:登录时重新连接(开机自动挂载)
❌ 取消勾选:使用其他凭据连接(密钥登录无需此选项)
4. 点击完成
配置完毕后点击「完成」,等待 2~5 秒系统自动完成连接。
如此就配置成功了
五、常见问题
1. 连接提示「拒绝访问」
原因:Linux 禁止密码登录,使用了普通密码连接方式。
解决:路径必须以 *\sshfs.k*开头,强制使用密钥认证。
2. 命令行提示 Connection reset by peer
原因:Linux 未安装 / 未启动 SFTP 服务。
解决:Linux 终端执行以下命令,重启 SSH 服务:
apt install openssh-sftp-server -y
systemctl restart ssh
3. 映射目录不是 Linux 根目录
原因:SSHFS 默认进入 root 用户家目录/root。
解决:使用专用路径强制跳转至根目录:
4. 重启电脑后盘符消失
解决:映射驱动器时,务必勾选登录时重新连接选项。
