软件心得 · 2018/04/27 0

黑群晖+Lede路由的外网访问方案

江湖行话“黑裙”,即是通过DIY硬件后安装群晖的DSM的OS实现NAS的功能,由于不是正版,因此无法使用“白裙”(也就是正版 群晖)的QuickConnect功能。

因此,各种为了访问外网的方案络绎不绝,大体有下面几种。

一、“洗白”

通过技术手段,让官方认为这是一台正版的群晖,从而可以使用QuickConnect方式从外网访问。但此招费事费力:

  1. QuickConnect通过群晖台湾的服务器中转,速度很慢
  2. 毕竟是盗版用户,占用正版用户资源不太好
  3. 群晖目前封号厉害,洗白的机器很容易被查到封号

二、端口映射

  1. 有公网IP下,通过端口映射来实现外网访问内网机器,最便捷也相对最安全的方式
  2. 无公网IP(运营商不提供,或者无法路由器拨号导致路由器无法获取公网IP)下,只能通过ngrok,frps或者花生壳(内网版)进行穿透映射。这种情况下的弊端是要么自己架设vps,要么服务商给的流量和带宽很小。始终很不方便。

所以,本文关注的其实就是有公网IP的情况下,如果配置家里的网络设备,实现安全的从外网访问群晖(白裙晖也适用,很多白裙用户无法忍受QuickConnect的龟速,都还是使用了下面的DDNS教程来访问)。

======================

  1. 宽带情况
  2. K3刷Lede固件
  3. 光猫改桥接,路由器PPPoE拨号
  4. 路由器插件配合DDNS解析(适用有公网IP用户)
  5. 路由器设置端口转发
  6. 群晖安全设置

=====================

1. 宽带情况

如果是和我一样的是上海电信的光纤宽带的话,默认都是电信光猫进行PPPoe拨号,然后家里还会有个主路由器通过有线连接光猫LAN口动态获取IP上网,家里设备通过wifi连接到这个主路由器进行上网,而IPTV 4K 电视盒则通过网线直接连到光猫的LAN3/4口(电信光猫定义的IPTV 4K端口)。

这个方案很稳定,大部分人可能好几年或者终身都是用的这种模式上网。而我直到组建NAS后才开始考虑变化这种情况。

这里有几点提醒大家:

  1. 现在电信大部分地区都是200M带宽,更厉害的有500M带宽了。那么相应的购买主路由器的时候,务必要注意路由器的LAN口和WAN口都要买千兆的,不然测速的时候永远无法达到200M或者500M。另外,网线也要至少5类(5类其实是跑不满千兆的,但跑200M一般没问题)
  2. 200M(200Mb/S)的理论最大下载速度是 25MB/S。

我本人家庭经过一番改造后,实际的网络布局是如下图所示,因此后面的教程也是基于如下网络结构。不过应该适用于99%的家庭用户。

2. K3刷论坛Lede固件

选择K3倒不是因为K3有多强大,其实AC66U什么的刷梅林固件也很不错。K3因为是之前斐讯送的路由器,免费的,所以用户也很多,基于K3的固件因此也众多。关于K3的固件,可以去恩山论坛寻找。比如下面这个帖子的LEDE固件可以一刷。

http://www.right.com.cn/forum/forum.php?mod=viewthread&tid=257677

K3刷LEDE固件,也不太难。对于260以前的官方固件,直接进入后台后选择升级即可。对于260固件的话,则需要先刷官改固件或者root之后,在刷LEDE固件。刷固件过程中切不可断电,否则容易变砖)。具体的关于如何刷固件,固件的功能,请去恩山论坛仔细研究下各种帖子。

3. 光猫改桥接,路由器PPPoE拨号

如#1所讲,由电信的光猫负责拨号上网并兼路由功能,而路由器是做获取动态IP上网,这样子到时候组NAS时设置外网访问的话,非常麻烦,得自己做两层端口转发(光猫转发到路由器,路由器在转发到NAS),同时还不能方便地使用DDNS(光猫里的DDNS可能无法适用)。所以还是要改造!具体改造方法,我已经在之前的一篇文章中有详细教程。请点击下面的文章阅读。

上海电信4K iptv LEDE单路由实现桥接

4. 路由器插件配合DDNS解析(适用有公网IP用户)

接下来我们就可以做动态解析了。所谓动态解析,就是根据输入的域名,自动连接到我们的拨号路由器的IP上(每一次拨号IP都可能变化,这就是动态解析的目的:让变化的IP能跟和我们指定的域名关联,而无需用户去知道IP的具体值)。

首先你需要一个可以做解析的顶级域名,很多地方都可以购买。没必要买com/net这种,因为贵。可以买xyz, mobi 等小众便宜的域名。买了域名后还得根据路由里的插件,决定使用哪家的DDNS服务。LEDE里内建了阿里云,dnspod的DDNS服务。所以本文是以DNSPOD家的DDNS服务作为教程的。

  1. 在DNSPOD直接购买了一个便宜的域名,然后去“域名解析”-“域名”选中新购买的域名,确认其NS对应的服务器是f1g1ns1.dnspod.net和f1g1ns2.dnspod.net。如下图方框选中所示

  2. 添加一条A记录,主机名根据你想以后访问的地址定。比如你的域名是aaa.xyz。而你以后想访问NAS的时候输入的网址是cc.aaa.xyz的话,那么主机名就填“cc”,记录类型是“A”,记录值随意填写。如上图红色线标示。
  3. 去DNSPOD的-用户中心-安全设置中,开启API Token,并复制给到你的Token。如下图

  4. 然后请回到主路由器上,登陆路由器后,通过“服务”-“Koolddns”,选择“添加”,然后在添加的界面,按照下面第二张图设置。 要点:启用!主域名仅填写aaa.xyz,子域名填写刚才dnspod设置的主机“cc”。DDNS服务商选择DNSPOD。API token请粘帖之前复制的(注意有两块内容,注意逗号)。接口务必选择拨号PPPoe的那个WAN口。

  5. DNS生效时间大约在10到30分钟左右。因此如果在重启路由器或者重新拨号导致外网IP变化的,请稍微等一段时间让DNS记录生效后再次访问。这次添加完之后,可以等10分钟后,尝试ping cc.aaa.xyz看ip地址是否更新到了路由器拨号拿到的IP,如果是,那我们就几乎大功搞成了。

5. 路由器设置端口转发

首先要去路由器的防火墙那边,启用wan口的转发功能,如下图

然后去防火墙的“端口转发”标签,添加合适的端口。举例

群晖web浏览器的访问端口是5000(http)和5001(https),内网内群晖的IP地址是192.168.2.2。

那么添加一条规则如下:允许从WAN口过来的所有主机,源端口是5001的,则转发到内网192.168.2.2的5001端口。最后填好且启用的规则大致如下图所示:

请注意5000和5001是群晖web的默认访问端口,而群晖的photo station使用的默认端口是80和443。由于电信封了80端口,因此设置转发的时候注意,源端口可以使用82,83或者其他更大的自定义端口,然后转发至192.168.2.2的80或者443端口即可。

6. 群晖安全设置

由于群晖可以外部访问之后,必定加大了信息泄漏的风险,因此下面还有些小tips供参考和参照修改。

1. 尽量使用HTTPs访问,避免中间人攻击。设置方法是:首先禁用掉黑群晖的HTTP访问,并把所有HTTP访问重定向到HTTPS上来,开启HTTP/2加速访问。进入黑群晖的控制面板->网络->DSM设置:

2. 修改DSM以及套件的端口。DSM的端口见上图,套件的端口在控制面板->Synology 应用程序门户中进行一一修改:

3. 启用DSM防火墙,这个我本人没有启用,因为我移动设备/笔记本没有固定IP,所以无法应用防火墙规则。路径在安全性-防火墙。

4. 启用2部验证,对于新设备的登陆,要求用户提供一个动态的OTP码(通过安装google的Authenticator获得OTP)。我本人启用了这个。比较安全。

=============

最后,就在外网下,使用IE或者客户端里输入cc.aaa.xyz:5001登陆使用DSM吧。

 

 

 

 

最后,放下我的公众号,有兴趣的朋友可以关注。