File Share

文件共享功能允许 MikroTik 路由器通过 USB/NVME 驱动器提供可安全通过互联网访问的存储,使用自动生成的域名和证书,通过 HTTPS 共享文件并可选支持文件上传。

文件共享

文件共享功能允许你使用路由器的外部存储与互联网上的任何人共享文件。只需将 USB、nVME 或任何受支持的驱动器连接到你的设备,然后将整个目录路径添加到 fileshare 菜单即可。路由器将使用 MikroTik 云服务为你的路由器签发 HTTPS 证书和域名。随后你可以在 file-share 菜单中看到可分发给任何人的 URL。你还可以启用允许任何人向你的路由器上传文件的功能。该 URL 是随机生成的,因此虽然任何知道该链接的人都可以访问它,但只要你妥善保管,就只有拥有链接的人才能使用。

添加共享

首先,连接你的 USB 驱动器并确定要共享目录的文件路径:

[user@RouterOS] > /file/print
 # NAME                                                                           TYPE             SIZE LAST-MODIFIED
 0 web                                                                            directory             2025-01-23 09:29:42
 1 usb1                                                                           disk                  2025-01-22 09:45:57
 2 pub                                                                            directory             2025-01-23 09:24:41
 3 skins                                                                          directory             2024-12-10 08:19:27
 4 pub/index.html                                                                 .html file        670 2025-01-23 09:24:41
 5 skins/default.json                                                             .json file        151 2024-07-15 10:20:11
 6 usb1/Secret Files                                                        	  directory             2024-03-18 09:01:41
 7 usb1/forum                                                                     directory             2025-01-22 10:58:20
 8 usb1/Secret Files/Home Video.srt                 							                .srt file         267 2020-06-01 11:29:14
 9 usb1/Secret Files/Home Video.mp4                 							                .mp4 file   1584.4MiB 2020-06-01 11:34:33
10 usb1/forum/cat.jpeg                                                            .jpeg file  4307.7KiB 2025-01-22 09:38:55
11 usb1/forum/cat1.jpeg                                                           .jpeg file   231.8KiB 2025-01-22 10:58:20
12 usb1/forum/cat2.jpeg                                                           .jpeg file   129.6KiB 2025-01-22 10:58:20
13 usb1/forum/cat3.jpeg                                                           .jpeg file   263.8KiB 2025-01-22 10:58:20
14 usb1/forum/cat4.jpeg                                                           .jpeg file   438.4KiB 2025-01-22 10:58:20
15 web/index.html                                                                 .html file       1473 2025-01-23 09:29:42

导航到 /ip/cloud/back-to-home-file。共享目录时,必须指定路径和到期日期,还可以授予上传权限。共享文件时,仅需路径和到期日期。

[user@RouterOS] /ip/cloud/back-to-home-file> add path="usb1/Secret Files/" expires=never allow-uploads=yes
[user@RouterOS] /ip/cloud/back-to-home-file> add path="usb1/Secret Files/Home Video.mp4" expires=never
[user@RouterOS] /ip/cloud/back-to-home-file> print
Columns: PATH, URL, DIRECT-URL, EXPIRES, DOWNLOADS
# PATH                      URL                                                        DIRECT-URL                                                    EXPIRES  DOWNLOADS
0 /usb1/Secret Files  https://acf017skgys.routingthecloud.net/s/4MPgHbEZCZYGVtp  https://acf017skgys.routingthecloud.net/s/4MPgHbEZCZYGVtp?dl        never            5
1 /usb1/Secret Files/Home Video.mp4      https://acf017skgys.routingthecloud.net/s/K8zkh1UjKuqtEQ0  https://acf017skgys.routingthecloud.net/s/K8zkh1UjKuqtEQ0?dl         never            2
[user@RouterOS] /ip/cloud/back-to-home-file>

现在,如果你复制 "URL",就可以与他人共享,无论他们身处何地,也无论你的路由器是否有公网 IP。

当你将 URL 发送给朋友时,他们便可以看到共享目录中的所有文件并进行下载。如果你在创建共享时启用了上传,他们还可以向你的路由器上传文件。请妥善保管此 URL,或指定 "expires" 日期,以避免其他人访问这些文件。

属性描述
enable(默认)启用 File Share 功能。添加第一个共享时,File Share 服务将被激活。如果不存在任何共享,File Share 服务将保持禁用。
disabled(*yes | no;*默认:no)禁用 File share 功能。
allow-uploads(*yes | no;*默认:no)启用允许任何人向你的路由器上传文件的选项。
expires(默认:never)共享到期日期。格式:ISO 8601(2025-01-25 00:00:00)示例:/ip/cloud/back-to-home-file/set 0 expires="2025-01-25 07:15:00"
path设置要共享文件的路径。示例:"/ip/cloud/back-to-home-file/add path=mypath/myfile"

WinBox GUI

要共享文件,请访问位于 IP → Cloud "Configuration" 部分下的 "File Shares" 菜单。

要创建新共享,请设置 "Path"、"Expires" 和 "Auto uploads" 选项。

[admin@MikroTik] > /ip/cloud/back-to-home-file/print detail 
Flags: X - disabled; I - invalid 
 0    path=/mypath/myfile allow-uploads=no expires=2025-01-25 07:15:00 key="*********" 
      url="https://*********.routingthecloud.net/s/*********" direct-url="https://*********.routingthecloud.net/s/*********" 
      downloads=0

信息

安全警告

该 URL 是随机生成的,因此虽然任何知道该链接的人都可以访问它,但只要你妥善保管,就只有拥有链接的人才能使用。 File share 使用 HTTPS(TCP 端口 443),但如果你已手动配置 WebFig 也使用 HTTPS,那么 File Share 将自动仅通过我们的云中继服务工作,因为同一设备中不能有两个服务使用同一个端口。默认情况下 www-ssl 未启用,因此 File Share 默认直接工作,不会通过中继进行下载。启用文件共享绝不会影响你的 WebFig 配置,也不会将其开放给全世界。

在 File Share 功能中,当用户想与某人共享文件时,如果你的路由器可从互联网直接访问(由 Relay 服务器检查),操作顺序如下:

  • 路由器在本地生成私钥和证书。
  • 证书签名在路由器上使用标准 ACME 协议完成(使用 DNS-01 质询,后端为 LetsEncrypt)。
  • 通过临时添加一条 DNS TXT 记录,将 DNS-01 质询发送到 MikroTik 云 DNS 服务器(标准流程)。
  • DNS 名称解析到路由器。
  • 使用私有证书打开安全的 443 端口。

中继服务

如果设备无法从互联网直接访问,它将选择使用 MikroTik 托管的 Relay 服务。

  • 路由器检查其从互联网的可达性。
  • 如果需要中继连接,则将 DNS 更新为中继 IP。
  • 路由器根据延迟选择最近的中继。
  • 如果路由器使用中继,则与中继保持连接打开。yyyyyy.routingthecloud.net 解析到该中继。当客户端通过中继建立连接时,会解析 TLS Client Hello 以获取目标路由器,并将整个 HTTPS 请求直接转发到该路由器。
  • 中继无法解密你的数据,因为带有私钥的证书只存在于路由器上。

移除文件共享证书

添加第一个共享时,路由器会自动为文件共享服务生成证书和每个路由器的子域名。

可以在 /ip/cloud/back-to-home-file/settings 菜单中使用 remove-certificate 命令移除证书。

信息

只有在没有任何活动文件共享时,才能移除证书。