为了建立个人NAS,起初是想折腾黑群晖,结果黑群晖没法利用我的硬件Raid磁盘阵列卡,于是就用了开源的OpenMediaVault/omv,现在是越走越远了,本篇文章就来带大家实现远程访问OpenMediaVault/omv共享文件夹,折腾使我快乐!

原理:利用RouteROS(以下简称ROS)软路由,建立SSTP服务器,OMV就在这个路由器下面的局域网中,外网电脑通过这个VPN通道访问局域网中的OMV共享文件夹。

SSTP又称安全套接字隧道协议,是一种应用于互联网的协议。它可以创建一个在HTTPS上传送的VPN隧道,从而消除与基于PPTP(点对点隧道协议)或L2TP(第2层隧道协议)VPN连接有关的诸多问题。

现在,家里的OpenMediaVault/omv,已经可以在局域网应用;以下是在ROS路由器上建立SSTP服务器的方法:

适用于电信宽带,有动态的公网IP ,否则建议使用内网穿透

一、申请一个域名,利用DDNS动态域名解析,为这个域名申请一个SSL证书

一般大家用ROS拨号,在加个OpenWrt路由,用来装一些插件,可以装一个DDNS动态域名解析插件,很方便的绑定一个域名,再做个端口映射,就可以远程访问OMV的Web管理页面。要想远程访问OMV共享的,就是本文介绍的方法,相信动态域名解析,你已经搞定,这个相对很简单,网上的资料也多,这里就不介绍了。

为这个域名申请一个SSL证书,我的域名是在阿里云,那就在阿里上申请ssl证书好了,这样申请的比较快,基本上提交申请就能用了;

申请过程很简单,基本上按照步骤往下进行即可:

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(1)

上图:进入阿里ssl证书申请页,选择个人免费版,点击右下角0元购买,接下来有几个网页都是0元付款过程,到达付款成功页面,点击“证书控制台”进入控制台申请ssl证书,如下图:

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(2)

点击证书申请,进入申请页,填写相应的个人信息,申请证书的域名,我的域名sstp.z****.net (*代替部分字母),利用自动DNS验证,因为域名在阿里云解析,自动验证省事很多:

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(3)

填完,点击下一步,进入验证页,直接点击“验证”即可,会看到验证成功信息,最后点击“提交”,就会有提示,证书成功的信息,此时找到下载证书按钮,点击下载相应的证书,如下图:

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(4)

其中,Apache的证书可以用于ROS路由器,IIS可用于Windows电脑,下载相应证书,其中Apache的证书包含以下三个文件。

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(5)

二、为ROS路由系统导入证书certificate

利用Winbox导入证书,也可以使用命令,目前我还不太会命令操作,这里就用winbox吧,图形界面,也方便。

1、通过winbox files把下面三个文件上传到ROS,(域名信息用*代替)

3717466_sstp.z***.net_chain.crt

3717466_sstp.z***.net_public.crt

3717466_sstp.z***.net.key

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(6)

上图:Files > Upload.. 再弹出对话框,选中三个文件,上传到ROS系统,接下来就是导入证书:

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(7)

上图:System > Certificates 调出证书设置窗口,弹出Certificates选项卡,如下图;

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(8)

上图:点击“Import”,弹出窗口,Only File选择3717466_sstp.z***.net_chain.crt,Passphrase填入申请SSL时的密码(当时没填就留空,我建立时就没有密码,直接留空),点击Import,导入后会看到一个LT 3717466_sstp.zjzb.net_chain.crt_0的证书。继续导入另外一个证书文件,最后导入key文件,key导入之后,会看到另外一个证书文件前面变成“KT”(PS:收费泛域名证书会显示KLT),如下图:

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(9)

至此,证书导入完毕!

三、配置VPN连接设置,账号、IP地址池

1、VPN IP地址池,Winbox点击 IP > Pool,打开 IP Pool 配置窗口,如下图:

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(10)

IP Pool配置窗口,点击“ ”添加,

Name:比如VPN-SSTP

Address:比如192.168.1.1-192.168.1.254

Next Pool:none

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(11)

2、配置PPP Profiles,Winbox点击 PPP 调出配置窗口,选择 Profiles 选项卡,点击“ ”,弹出“PPP Profile”添加框,

在General选项卡填入以下信息:

Name:比如VPN-SSTP

Local Address:ros网关地址即可,我的ros网关192.168.0.1

Romte Address:VPN-SSTP(上面创建的VPN地址池)

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(12)

在Protlcols选项卡填入以下信息:

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(13)

在Rate Limit选项卡填入以下信息:(rx/tx)表示为上行和下行速度,单位bps,Only one表示账号是否唯一性。

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(14)

3、配置PPP Secrets,也即是账号信息,Winbox点击 PPP 调出配置窗口,选择Secrets选项卡,点击“ ”,弹出PPP Secret 配置窗口,填入以下信息:

Name表示VPN的用户名,我的是ROSSSTP

Password表示VPN的密码

Service选择any表示多协议支持

Profile选择上一步创建的VPN(PPP Profile)

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(15)

四、建立SSTP服务器

Winbox点击 PPP 调出配置窗口,选择Interface选项卡,点击SSTP Server,打开配置窗口,勾上Enable,Port默认端口为443,我们修改为4433(国庆形式所定,大部分可能被封,想都不要想),Certificate选择刚才添加的证书,如3717466_sstp.z***.net_public.crt_0,点击OK。

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(16)

至此,SSTP服务器是配置完成了!

五、配置NAT地址伪装

Winbox点击 IP > Firewall 调出配置窗口,选择NAT选项卡,点击“ ”添加新规则,General中Chain选择srcnat,Action中的Action选择masquerade即可。

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(17)

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(18)

到这里,ROS路由器已经设置ok。

六、Windows系统导入证书

上面下载的IIS证书“3717466_sstp.z***.net.pfx”(域名信息用*代替),就是给Windows系统用的。

1、双击证书文件,系统弹出对话框,存储位置选择“本地计算机”,然后下一步:

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(19)

2、文件名路径,如果直接双击的证书文件,路径时自动填充的,点击下一步:

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(20)

3、这一步要求输入密码,申请证书时候,我没有添加密码,我下载的证书文件里面,有一个密码文档,估计是自动生成的,直接填入即可,点击下一步。

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(21)

4、这一步中,选择将所有证书都放入下列存储器,点击浏览,弹出对话框,选择“受信任的根证书颁发机构”,点击确定,之后再点击下一步,显示完成即可。

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(22)

七、Windows建立SSTP(VPN)连接

1、Windows10系统,直接进入设置页面,在搜索框输入“VPN”,找到“添加VPN连接”即可。

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(23)

2、进入VPN页面,点击“ ”添加VPN连接

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(24)

3、在弹出的对话框中,填入如下信息,

给连接名称命个名“ROSsstp连接”

服务器名称或地址填写你申请证书的那个域名,然后加上端口号,

填写在ROS上创建的SSTP服务器的用户名和密码即可,

最后点击保存。

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(25)

4、此时返回到VPN设置页面,会看到多出来一个ROSsstp连接,点击连接,

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(26)

5、当出现如下截图信息时,就证明VPN连接成功。

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(27)

至此,就完成了所有配置,此时,在你这个Windows电脑中,打开一个文件夹,在地址栏输入你OMV的地址,即可访问,比如我的\\192.168.0.123,回车,即可打开共享文件,有密码的输入用户名和密码即可访问。

利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹(利用ROS搭建SSTP协议的VPN实现远程访问OpenMedia共享文件夹)(28)

,