威联通nas的ipv4+ipv6双栈https证书ddns折腾记录

背景

起因

  1. 家用宽带下发了IPV6地址,加上本身的公网IPV4地址,达成了公网双栈的网络环境。
  2. 之前配置的的DDNS仅限于http的无加密访问,暴露在公网且不支持IPV6解析。

目标

  1. 配置IPV6网络,实现各支持IPV6的终端均可以进行IPV6的使用。
  2. 为光猫的出口IPV4地址和nas的IPV6地址配置DDNS解析。
  3. 对DDNS的域名解析配置https证书认证,仅涉及到nas管理后台页面,transmission web control。
  4. 实现免端口号访问。

方案

  1. 配置光猫和路由器就可以简单实现。
  2. 搭配自动同步动态IP脚本实现动态DDNS,米发提供301永久重定向实现免端口号访问。(我看看能不能贴一个推广链接,啊这,没有推广链接,那没事了)
  3. 申请免费的Let’s Encrypt证书实现https证书认证。

效果为:
主域名(进行301重定向)
----->前缀.域名:端口号(对应泛域名证书)
----->A解析记录解析到IPV4/AAAA解析记录解析到IPV6
----->通过端口转发到nas上

过程

光猫配置

设备:电信光猫ZXHN F650
网络->网络设置->网络名称选择5_INTERNET_R_VID_41

	ipv6地址获取方式: DHCPv6
	获取前缀(选中)
	前缀获取方式: DCHPV6-PD
	DNS获取方式: DHCPv6

这里我选择过自动配置,出现了PC设备获取的IPV6地址无法在路由器上查看到的问题,修改后问题解决。

网络->用户侧管理->IPv6设置

	DNS来源: 网络连接
	接口: 5_INTERNET_R_VID_41
	前缀来源: WAN侧代理
	启动DHCPv6服务器(选中)
	起始地址(我没有改默认配置)
	结束地址(我没有改默认配置)
	地址信息是否通过DHCP获取	(选中)
	其他信息是否通过DHCP获取	(选中)
	RA使能(选中)
	RA报文最大自动发送时间(我没有改默认配置)
	RA报文最小自动发送时间(我没有改默认配置)

路由器配置

设备:Asus AC86U

基本设置

联机类型:Passthrough
Release prefix on exit:启用 

IPv6 DNS 设置

自动接上 DNS 服务器:启用 

Let’s Encrypt证书申请

  • 参考https://github.com/acmesh-official/acme.sh项目进行证书的申请

  • 我则直接使用DNSPOD的ID和key的API方式进行申请(ID和key获取对于不同域名供应商有所不同)

  • 也可以使用Koolshare软件中心的Let’s Encrypt自动申请SSL证书(也是采用的acme)

  • 最终申请了泛域名证书用于同一域名不同前缀的认证。

获得材料:

  1. fullchain.crt (证书)
  2. *.域名.key(密钥)

备份待用

DDNS配置

vim /etc/config/crontab

* */1 * * * /share/Public/dnspod/ddns -c /share/Public/dnspod/config.json > /share/Public/dnspod/run.log #添加这一行后保存,这里是每小时执行一次#

crontab /etc/config/crontab #套用設定#
/etc/init.d/crond.sh restart #重启crontab#

301永久重定向

参考https://www.mfpad.com/blog/how-to-redirect-a-domain进行301重定向的设置

证书文件使用

  1. qnap取代证书
    /mnt/HDA_ROOT/.config/stunnel
  2. nginx反代证书

nginx反向代理

nginx反向代理证书使用是为了让transmission实现https的访问,不通过代理未找到合适的方法实现https访问。(nginx有各种安装方法,我采用了在qnap上安装Qnginx的方式)

下载后的Qnginx文件通过qnap的APP Center安装,然后进行配置。
配置文件是/share/CACHEDEV1_DATA/.qpkg/QNginx/etc/nginx/nginx.conf
根据你选择安装的位置对应配置文件的所在,然后进行证书和反向代理的配置。(配置方法参考了挺多,就不附上原文链接了)以下是我新增的反向代理的配置部分

server {
    listen <监听的端口> ssl;
    server_name  <监听的域名>;
    ssl_certificate /share/CACHEDEV1_DATA/.qpkg/QNginx/etc/ssl.crt; #证书复制到自定义位置#
    ssl_certificate_key /share/CACHEDEV1_DATA/.qpkg/QNginx/etc/ssl.key; #密钥复制到自定义位置#     
    location / {
    	root html;
    	index index.php index.html index.htm;
        proxy_pass  <transsmission的http连接及端口>;
               }   
      }

重启nginx后生效
这样外部网络访问transmission的方式就是https域名和自定义端口,通过反向代理转发到内部的http连接和transsmission的访问端口。

QA

413 Request Entity Too Large报错

修改/share/CACHEDEV1_DATA/.qpkg/QNginx/etc/php.ini
upload_max_filesize = 20M (原2M)
post_max_size = 80M (原8M)
(实际上可能并不需要修改)

主要修改/share/CACHEDEV1_DATA/.qpkg/QNginx/etc/nginx/nginx.conf
server {

client_max_body_size 20M;

}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值