
太香了群晖NAS FTP外网访问不用再折腾路由器最近有个朋友在群里喊FTP外网访问到底怎么弄路由器快被我折腾烂了。底下一圈用过群晖的纷纷回复这题我会方法却五花八门有让人改光猫桥接的有让人刷固件的还有直接丢一个端口转发教学链接的。说实话这些方案都没错但对大多数用户来说太重了。我自己从DSM 6用到DSM 7中间换过三台路由器FTP外网访问前后配了不下十次最后固定下来的方案其实很简单利用群晖自带的QuickConnect、DDNS和路由器自动端口映射只需要在DSM后台点几个按钮路由器基本不用单独碰。这篇文章就把这套配置流程完整捋一遍适合没有固定公网IP、不想折腾路由器、或者出差在外需要用自己的FTP工具访问家里NAS的朋友。1. 为什么FTP外网访问总被路由器卡脖子1.1 三大拦路虎公网IP、端口转发、DDNS先说公网IP。家用宽带在这件事上的贫富差距非常大。有的地区运营商默认下发公网IPv4光猫拨号拿到的是100.x.x.x或者220.x.x.x这种公网地址这就好办有的地区则统一下发192.168.x.x之类的私网地址你的外网IP其实是运营商网关的内网地址这种情况下任何端口转发都是转发给空气。判断方法很简单登录路由器看好WAN口拿到的IP再去浏览器查一下本机IP两个一致就说明有公网地址如果路由器WAN口是192.168开头的私网段那就是大内网端口转发这条路基本被堵死了。第二个是端口转发。家用路由器默认策略是入站拒绝外网主动连进来的流量会被防火墙拦掉。要在路由器上把公网端口的流量映射给内网NAS就需要手动配置端口转发规则。不同品牌路由器界面千奇百怪有的叫端口转发、有的叫虚拟服务器、有的叫端口映射、还有的叫NAT规则新手很容易迷路。更麻烦的是很多光猫自带路由功能你还要先搞清楚到底是光猫在做NAT还是路由器在做NAT一旦端口配置到了错误的设备上怎么测都不通。第三个是DDNS。家庭宽带拿到的公网IP绝大多数是动态的可能几小时就变一次。你不光要让FTP服务在公网暴露还得让客户端永远能找到最新的IP这就得靠DDNS把动态IP绑定到一个固定域名上。所以传统方案下你需要公网IP检测 路由器端口转发 DDNS三件事全部搞定路由器怎么可能不被折腾而且这三件事是串联的任何一个环节出错整个链路就废掉排查起来特别费神。1.2 FTP协议天生的多通道问题即便上面三关全过了很多人还是栽在FTP本身的特殊性上。FTP跟HTTP、SSH这种单一端口的协议完全不同它用21端口做控制连接实际传数据时还要另开一条数据连接。外网访问FTP时一般用被动模式PASV特点是服务器也就是NAS会主动开放一个数据端口等客户端来连。问题就出在这儿如果NAS把数据端口打在随机范围1024到65535之间路由器上的端口映射很难覆盖全客户端能登录却列不出目录、传不了文件就是典型的被动模式数据端口没放行。群晖NAS在DSM里提供了被动模式端口范围设置可以在控制面板 - 文件服务 - FTP - 高级设置里指定一段端口比如55536-55600。这个设置配合端口映射才有意义否则就算你在路由器上把21端口转发得明明白白数据通道还是不通。很多教程忽略了这个细节导致用户照着配置之后依然失败回头又去折腾路由器其实锅根本不在路由器上。1.3 先想清楚你需要的到底是FTP还是远程取文件我在帮人排查时发现一个很有意思的现象大多数人嘴上说要FTP外网访问实际需求只是在外面能下载NAS里的文件出差时能给NAS传个文档家里人能远程备份照片。这些需求用FTP能实现但用File Station、Synology Drive甚至WebDAV也能实现有些还更方便。FTP的优势是通用性强任何平台都有FTP客户端配合FileZilla这种工具用起来很顺手在Windows资源管理器里直接输入ftp://地址就能访问对非技术用户特别友好。它的劣势是明文传输、被动模式配置繁琐、对NAT环境不友好。所以在动手配置之前建议先想清楚你是需要标准FTP工具连接这个能力还是只要外部能存取文件这个结果。这个判断直接决定后面走哪条技术路线。2. 群晖免折腾方案的核心思路2.1 三个功能各干各的活群晖这套免折腾方案核心是三个功能各司其职互不冲突QuickConnect解决找不到NAS的问题。不需要公网IP不需要端口映射只要NAS能主动连上群晖的QuickConnect服务器你就能通过quickconnect.to/mynas访问DSM、File Station这些应用。原理是NAS主动维护一条到群晖中继服务器的长连接客户端访问时由中继服务器撮合能直连就直连NAT穿透不能直连就中继转发。这个主动出站的设计非常巧妙出站连接不经过路由器入站NAT所以路由器基本拦不住它。路由器自动配置解决端口转发设置麻烦的问题。DSM支持调用路由器的UPnP协议让NAS自己跟路由器申请端口映射。你只需要确保路由器开了UPnP剩下的事情NAS帮你办。这就好比你不用亲自去物业登记访客信息了家里的智能门禁自己就跟物业系统对接好了你在APP上按个授权就完事。DDNS解决IP动态变化的问题。群晖官方提供免费的xxx.synology.me域名NAS检测到公网IP变化后会自动更新DNS记录客户端始终用一个固定域名就能找到你。很多人以为DDNS要花钱其实群晖内置这个服务完全免费注册个群晖账号就行。2.2 怎样选择适合自己的链路根据公网IP的实际情况可以分成两条链路第一条有公网IP哪怕动态。这是最理想的情况用DDNS加自动端口映射把FTP或FTPS服务暴露到公网然后用FileZilla、WinSCP等客户端访问。这种方案连接稳定、速度上限高、兼容性最好。配置过程中路由器只需要开一个UPnP开关其他全部交给DSM自动完成。第二条没有公网IP运营商大内网。这时候FTP外网访问基本别想了运营商那层NAT你控制不了DDNS解析出来的IP也不是你家的。替代方案是用QuickConnect访问File Station或WebDAV再或者用Synology Drive做文件同步。体验上不如标准FTP流畅但能满足绝大多数远程存取需求。很多人死活搞不定FTP外网访问其实是走错了路方向不对再怎么折腾路由器都是白费力气。2.3 方案对比传统手动配置 vs DSM自动组网环节传统方案群晖免折腾方案公网IP要求必须有有的话最好没有就用QuickConnect兜底端口转发手动登录路由器找到对应菜单逐条配置DSM通过UPnP自动创建规则动态IP处理自己注册DDNS域名手动配置更新内置免费synology.me域名自动更新记录FTP数据端口需要手动映射指定端口范围设定端口范围后由自动映射一并处理故障排查范围路由器、光猫、NAS、公网IP多头排查基本集中在DSM后台界面统一从这个对比能看出来群晖这套组合拳把传统方案里最折腾人的两个环节自动掉了。剩下的QuickConnect和DDNS都是DSM原生功能界面清晰不会出什么幺蛾子。这也是为什么我后来给朋友推荐时都会强调一句别一上来就翻路由器后台先在DSM里把这两个功能打开。3. 实操配置全程记录3.1 开启QuickConnect两分钟登录DSM打开控制面板 - 外部访问 - QuickConnect登录群晖账号没有就现场注册一个。开启QuickConnect后在地址栏填一个自己容易记的ID比如mynas2024。启用后会得到一个访问地址类似quickconnect.to/mynas2024。这个地址不仅能访问DSM管理界面也能填在DS file、Synology Drive等App里。这里有个细节QuickConnect的高级设置里会列出可以走QuickConnect的应用程序默认File Station这些是勾选状态。如果远程访问时报连接错误可以先去高级设置里确认需要的应用服务已经勾选。另外QuickConnect默认会尝试自动创建端口转发规则来提升连接速度这个建议保留因为它会帮助你后面的FTP端口映射更快生效。需要注意的是QuickConnect并不直接支持第三方FTP客户端的连接。它主要服务于群晖自家的应用和HTTP(S)服务。但它的价值不在于替代FTP而在于提供了兜底的远程访问入口。即便没有公网IP你也至少能通过DSM的File Station或者Synology Drive这些工具远程取文件。有了这层保障外网访问这篇文章就至少有80分打底了。3.2 让DSM自动配置路由器端口映射这是不用折腾路由器最关键的一步。打开控制面板 - 外部访问 - 路由器配置会看到当前路由器状态。点击设置路由器DSM会自动检测路由器探出UPnP协议是否可用然后自动帮你创建端口转发规则。需要说明的是这台路由器必须支持UPnP并且开启了这个功能。绝大多数家用路由器默认是开启的但有些游戏路由、企业路由默认会关。如果检测失败DSM会明确告诉你路由器配置失败并给出原因。这时候你去路由器后台找一下UPnP开关打开后回到DSM点测试连接状态变成正常就行了。DSM自动配置的端口转发规则包括常用服务如HTTP(5000/5001)、HTTPS、FTP(21)、WebDAV等。等状态变成正常你再去路由器后台看一眼会发现多了好几条规则全是由NAS自动添加的。这个时候你会真切感受到什么叫不用再折腾路由器——之前手动配置半个小时的活现在DSM几秒钟就干完了。3.3 开启FTP并优化被动模式打开控制面板 - 文件服务 - FTP勾选启用FTP服务。如果外网要连强烈建议用FTPS也就是FTP over SSL/TLS勾选启用FTP over SSL/TLS服务后客户端连接时可以选择需要显式TLS或者隐式TLS。这样可以避免账号密码在公网上明文传输安全系数完全不一样。再去高级设置里勾选启用FTP被动模式连接并指定一个端口范围。我习惯用55536-55600一共65个端口不算多但足够应付一般家庭场景的并发传输。设置好保存后DSM在自动端口映射时会把21端口和这个范围一起映射出去。这个过程不需要去路由器手动加规则DSM的路由器配置功能会自动处理。还有一个容易被忽略的点NAS的内网IP最好固定。可以在路由器后台给NAS做一个IP/MAC绑定也可以在DSM的网络 - 网络接口里手动指定IP。我建议做路由器绑定这样就算NAS重置或者换网口路由器分配的IP还是同一个不会因为IP变化导致端口映射失效。别小看这一步很多人配置完过几天就失联查到最后就是IP变了映射指向了空气。3.4 绑定DDNS域名打开控制面板 - 外部访问 - DDNS点新增供应商选择Synology注册一个类似mynas.synology.me的免费域名填好信息保存状态会变成正常。NAS会定期检测公网IP变化域名始终指向最新IP。如果这一步检测到的IP和路由器WAN口IP不一致那基本可以断定是运营商大内网环境没有公网IPv4。这时候DDNS域名解析到的是一个公网地址但那个地址不是你家的FTP还是连不上。这种情况下QuickConnect才是你的真正出路DDNS这条路暂时不用想了。另外提醒一句如果路由器WAN口IP是动态的而且路由器重启后会变DDNS会自动更新但DNS解析有缓存可能有几分钟到十几分钟的延迟。刚配置完测试不通不要急着下结论等个几分钟再试。这个细节经常被忽略导致用户以为配置有误又把路由器翻了个底朝天。3.5 外网客户端连接验证配置完成后在外面找一台电脑或者直接用手机流量测试。尽量不要连家里的WiFi测那走的是内网测不出外网效果。FileZilla客户端配置方法打开站点管理器新建站点主机填mynas.synology.me端口填21。加密方式根据你开的FTPS类型来选如果只启用了普通FTP选只在可用时使用普通FTP如果启用了显式FTP over TLS选需要显式FTP over TLS如果启用隐式TLS选对应的隐式选项。登录类型选正常用户名填NAS上的账户密码照填。连接后注意看日志出现230 Login successful基本就成了。能登录但列不出目录多半是数据端口问题回到3.3检查被动模式范围是否映射完整。Windows资源管理器用法更简单在地址栏直接输入ftp://mynas.synology.me会弹出凭据框输入NAS账户和密码就能看到共享文件夹。Windows对FTP协议支持比较基础速度一般但胜在原生支持、不用装额外软件适合偶尔用一下的场景。手机端建议用DS file或者第三方的FTP客户端App。DS file里服务器地址直接填QuickConnect ID就行走的是QuickConnect通道不用管DDNS和端口映射如果坚持用标准FTP工具那就要填DDNS域名和账户密码了。实际体验下来手机的4G/5G网络访问NAS瓶颈往往在运营商上行带宽能达到3MB/s到4MB/s已经很不错了再高要看线路给不给力。4. 常见问题与踩坑实录4.1 没有公网IP用户的补救方案这是目前最普遍的情况很多宽带运营商默认就不给公网IPv4。用前面说的判断方法发现自己在大内网里DDNS也解析不通那就老老实实接受标准FTP软件连NAS这条路走不通。别灰心还有替代方案。QuickConnect加File Station是最直接的替代。移动端体验不差在外面翻个文件、下个照片完全够用。如果要做文件同步Synology Drive可以设置自动同步文件夹效果类似网盘客户端的体验。另外WebDAV走的是HTTP(S)协议QuickConnect能中继WebDAV流量所以你还可以用支持WebDAV的客户端比如WinSCP、RaiDrive来访问NAS体验比FTP更稳。有些场景下比如你要把Linux服务器上的文件备份到NAS或者从NAS还原数据到服务器——这个需求根本不需要外网访问。内网环境里直接用rsync、SMB或者WebDAV就能做定时备份NAS做目标端Linux服务器做源端脚本一写定时任务一挂妥妥的。这类内网运维场景和技术方案关系不大关键是需求要分清。4.2 FTP客户端连不上的通用排查如果外网FTP连不上别急着重启路由器按顺序排查先用内网地址试。电脑连家里的WiFi再用NAS内网IP连FTP。内网都不通说明FTP服务、防火墙或账户权限有问题和外网环境无关。确认DSM的路由器配置状态是不是正常。状态异常就重新设置路由器顺便看看路由器UPnP是否被关了。确认客户端用的是被动模式。主动模式下NAS回头连客户端的数据端口在NAT环境下很容易失败。FileZilla默认是被动模式Windows资源管理器也用被动但如果用了某些命令行FTP工具要手动设置。如果用了FTPS检查TLS版本兼容性。有些老的FTP客户端或低版本Android设备只支持较低TLS版本导致握手失败。这种情况可以降低加密强度或者改用WebDAV方案。还有一种情况日志显示425 Unable to build data connection: Connection refused这基本就是被动模式端口范围没有完整映射出去。回到3.3确认55536-55600这段端口被映射到NAS的IP上。如果用的是DSM自动端口映射把范围设定后重新运行一次路由器配置即可。4.3 传大文件速度慢/断流的优化FTP本身没有加密速度相对快一旦开启FTPSCPU要做加解密速度会略微下降5%到10%这是正常代价。真正影响外网速度的是运营商上行带宽。家用宽带上传一般只有30Mbps到50Mbps换算下来最多3MB/s到5MB/s就算NAS和路由器都是千兆口也突破不了这个物理上限。有朋友问要不要换万兆路由器我的回答是先看看你宽带套餐的上行速率再说。断流的一个常见原因是FTP连接超时太短。DSM在文件服务 - FTP - 高级设置里可以调FTP连接超时时间默认值可能只有300秒。如果你习惯挂机传大文件建议把这个值调大比如改成3600秒避免传着传着就断连。另一个原因是被动模式端口范围设得太窄如果同时开多个FTP连接端口不够用就会出现连接失败。建议日常用265个端口上下空间充裕也不影响安全。还有一点如果路由器开启了会话数限制或者流控功能也可能导致FTP连接不稳定。这类设置在游戏路由、企业路由上比较常见遇到诡异断流时可以登录路由器后台检查一下相关策略。实在排查不出来就先把路由器重置为默认配置再让DSM自动配置一次。4.4 安全建议把FTP暴露到公网等于给NAS开了一扇门这扇门一定要上锁。最基础的一条能开FTPS就开FTPS别用明文FTP传账号密码。第二在DSM的控制面板 - 安全性 - 防护里开启自动封锁设置成密码连续错误5次就封锁IP能挡住大部分暴力破解。第三给FTP访问单独建一个低权限账户不要用admin这种高权限账户到处连。比如建一个ftp_user只给它需要访问的共享文件夹的读写权限其他目录一律不给权限。从路由器侧看如果支持改端口建议把FTP端口从默认21改成非常用端口比如2121。改了之后客户端连接时填对应端口就行能减少被黑客扫描的概率。配合自动封锁机制安全性会上一个台阶。这些安全配置我都踩过坑。早些年图省事开了明文FTP密码又是默认的admin结果被扫到之后NAS里被塞了一堆挖矿程序CPU整天跑满折腾了一整天才清理干净。从那之后凡是涉及公网访问的服务一律TLS加密加防火墙策略双重保障。结语做这些配置的时候最大的感慨是群晖这套生态其实已经把99%的折腾封装好了很多用户还停留在必须去路由器上敲命令、开端口映射的固有印象里。个人体会是登录DSM后台之前先做两件事确认宽带到底有没有公网IP确认路由器UPnP开着这两个前提决定了后面走哪条路。配置完之后再遇到FTP连不上的情况我的排查顺序也基本固定为内网通不通 - 路由器映射在不在 - 被动模式端口全不全这三步绝大多数问题都能在这三步里找到答案。这套方法分享出来希望能帮大家省下那些花在路由器上的冤枉时间。