前提

  • nas需要有动态公网ip

  • 购买一个域名

  • 提前申请好通配符SSL证书(可以用这个 joyssl.com

  • 一台云服务器(最低配即可,主要使用该服务器的80和443端口)

目标

访问 nas.vvhz.com 即可访问DSM ddns.vvhz.com:15001

DDNS配置

首先nas需要有动态公网ip,然后进行ddns配置(如下图)

nas_port_1.png配置好ddns之后,当前DMS的登录地址为:ddns.vvhz.com:15001 (DMS端口根据自己配置填写)

确保带端口的地址可以正常访问之后,再进行下一步操作。

DNS配置

nas.vvhz.com 解析到我们的云服务器的ip

nas_port_2.png

DSM配置

在DSM中上传我们提前申请好的SSL证书。
nas_no_port_11.jpg

因为我们是使用html嵌套来完成无端口访问,因此需要在DSM中配置允许IFrame嵌套。

html嵌套这种方式实现无端口访问不会占用云服务器带宽。

nas_port_3.png

Nginx配置

我们目的是去掉端口,通过 nas.vvhz.com 访问 ddns.vvhz.com:15001,这里我们使用nginx进行代理

访问流程:浏览器输入 nas.vvhz.com 经过dns解析会访问到我们的nginx服务器指定的那个index.html,该html页面内嵌了我们DSM的带端口的地址。因此就实现了无端口访问。

nas.vvhz.com 内嵌 ddns.vvhz.com:15001,因此如果需要使用https,需要一个通配符证书*.vvhz.com。生成完的SSL证书需要上传到DSM和云服务器上。

在我们购买的云服务器上安装nginx,安装好之后添加如下配置:

server {
    listen 80; # 监听80端口
    server_name nas.vvhz.com;  # 自己的域名
    #把http的域名请求转成https
    return 301 https://$host$request_uri;
}

server {
        listen 443;
        server_name nas.vvhz.com;
        ## SSL证书路径
        ssl_certificate /home/soft/nginx/cert/vvhz.com/vvhz.com_bundle.crt;
        ssl_certificate_key /home/soft/nginx/cert/vvhz.com/vvhz.com.key;
        location / {
            ## 指向html路径
            root /home/soft/nginx/web/nas;
            index index.html;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
}

在上面 root 指定的目录下新建一个index.html文件,内容如下:

<html lang="zh_CN">
    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=2">
        <link rel="icon" href="favicon.ico" type ="image/x-icon">
        <title>NAS</title>
    </head>
    <frameset rows="100%">
        <frame src="https://ddns.vvhz.com:15001"></frame>
    </frameset>
</html>

nginx修改完配置之后记得重启。

验证

浏览器输入 nas.vvhz.com 可以正常访问。

使用同样的方法,拷贝nginx和html文件,其他服务也一样可以无端口访问。

文章作者: 黄振
版权声明: 本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 黄振的博客
Nas
喜欢就支持一下吧