V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
lichifeng
V2EX  ›  宽带症候群

Cloudflare + NAS 方案搭建的网站,来测试下

  •  
  •   lichifeng · 2016-12-25 23:01:48 +08:00 · 12027 次点击
    这是一个创建于 2927 天前的主题,其中的信息可能已经有所发展或是发生改变。

    群晖的 NAS ,本来苦于宽带端口问题一直不能较好的实现在 NAS 上搭建网站的想法,前两天偶然想到这个方案。

    运行了两天,自己测试了下效果还可以,偶尔会出现 523 错误( CF 从 NAS 读取数据失败,出现了 2-3 次这种情况),感觉明年可以把美团云上的 VPS 停掉了,放到 NAS 上,访问量小问题不大,访问速度上应该不输国外 VPS

    地址: https://m14.cc
    (有 CF 护体,应该不怕你们 DDOS 吧)

    实现的方法是在 Cloudflare 中把域名做一个 CNAME 指向 NAS 的 DDNS 地址

    因为家用宽带的 80 端口不开放,所以只能用 HTTPS 访问

    HTTPS 有两个问题:

    • 自签证书不被认可(虽然群晖自带 LETSENCRYPT 功能,但是没有 80 端口申请不下来),影响访问体验
    • 用户访问非 HTTP 地址时还是会返回 404 页面

    Cloudflare 完美地解决了这两个问题:

    • Cloudflare 的 Full SSL 模式只要求服务器能通过 HTTPS 连接,不需要验证 NAS 端证书有效性,但是用户端和 Cloudflare 之间用的证书是有效的
    • Cloudflare 后台可以直接设置 HTTP -> HTTPS 的跳转,完美解决了 80 端口无法访问的问题

    另外 CF 的缓存功能还可以在 NAS 离线的情况下保持部分可访问性,对于静态页面为主的网站非常实用。

    34 条回复    2017-01-20 10:15:58 +08:00
    lhbc
        1
    lhbc  
       2016-12-25 23:05:12 +08:00
    如果被入侵,很可能就直接拿到 NAS 的权限了,可以继续入侵你的网关等设备
    还可以潜伏在你家里网络,进行钓鱼等
    lichifeng
        2
    lichifeng  
    OP
       2016-12-25 23:06:37 +08:00
    @lhbc NAS 暴露在公网确实存在安全问题,这个无可否认
    xfspace
        3
    xfspace  
       2016-12-25 23:09:04 +08:00 via Android
    @lhbc 做个蜜罐放 DMZ 。
    d7101120120
        4
    d7101120120  
       2016-12-25 23:10:22 +08:00
    速度竟然还不错, 6s
    lichifeng
        5
    lichifeng  
    OP
       2016-12-25 23:11:38 +08:00
    @d7101120120 我用联通 4G 和移动宽带试了下,速度不输国外 VPS ,但是电信很难打开
    t123yh
        6
    t123yh  
       2016-12-25 23:12:23 +08:00 via Android
    我的网站也搭在我家, Let's Encrypt 只需 443 端口便能工作,无需 80 端口。
    rhen
        7
    rhen  
       2016-12-25 23:13:51 +08:00 via Android
    福州电信 3 秒内打开
    lichifeng
        8
    lichifeng  
    OP
       2016-12-25 23:14:05 +08:00
    @t123yh 申请 LETSENCRYPT 的时候要用 80 端口做验证啊,另外你怎么解决 HTTP-》 HTTPS 的跳转问题
    t123yh
        9
    t123yh  
       2016-12-25 23:34:13 +08:00 via Android
    @lichifeng 使用 certbot 的 TLS 验证方式不需要 80 端口。亲测。我用的 Ubuntu apt 库里的。跳转没做,需要手动输入 https 。
    chromee
        10
    chromee  
       2016-12-25 23:38:43 +08:00
    LE 有 TLS 验证 也支持 DNS 验证
    腾讯云 阿里云的免费证书也可以使用 DNS 验证签发
    RqPS6rhmP3Nyn3Tm
        11
    RqPS6rhmP3Nyn3Tm  
       2016-12-25 23:41:37 +08:00
    @lhbc 请问,如果用了 Cloudflare 套了一层,还会被入侵吗?讲道理应该不会暴露 IP 地址了啊

    @lichifeng 开启 HSTS 即可
    lhbc
        12
    lhbc  
       2016-12-25 23:46:06 +08:00
    @xfspace 并没有用,上了 CDN ,一般入侵手段就是 Web ,比如 SQL 注入、 XSS 等。
    另外,如果楼主的服务有提供一些邮件提醒、第三方请求等等,也可能通过这些方式拿到源站 IP 。
    拿源站 IP 还可以通过钓鱼,比如在楼主博客留言,通过某些手段拿源站 DDNS 域名等等。

    @BXIA SQL 注入、 XSS
    taresky
        13
    taresky  
       2016-12-25 23:46:22 +08:00 via iPhone
    不错
    cjjia
        14
    cjjia  
       2016-12-25 23:48:02 +08:00
    放 Jekyll 、 hexo ,岂不是完美了。
    sparanoid
        15
    sparanoid  
    MOD
       2016-12-25 23:48:47 +08:00
    我也干过类似的事情,不过是用 CloudFlare 的 API 写了个脚本直接更新本机的公网地址到 A 记录,但是在国内的话 CloudFlare 到本地的回源会很慢
    ifwangs
        16
    ifwangs  
       2016-12-25 23:52:58 +08:00 via Android
    @sparanoid 为啥你也有 mod ,不是 Livid 专属吗(๑• . •๑)
    29EtwXn6t5wgM3fD
        17
    29EtwXn6t5wgM3fD  
       2016-12-25 23:57:40 +08:00 via iPhone
    楼主可以试试 verycloud 可以自定义源站端口,支持 https ,每月有 50G 额度.
    29EtwXn6t5wgM3fD
        18
    29EtwXn6t5wgM3fD  
       2016-12-25 23:58:55 +08:00 via iPhone
    @ifwangs 人家是管理员啊
    ifwangs
        19
    ifwangs  
       2016-12-26 00:00:42 +08:00 via Android
    @shengyu 搜噶
    iCyMind
        20
    iCyMind  
       2016-12-26 00:15:01 +08:00 via Android
    广州电信,速度还可以。
    在用群晖哪款 nas ?
    RqPS6rhmP3Nyn3Tm
        21
    RqPS6rhmP3Nyn3Tm  
       2016-12-26 02:09:50 +08:00 via iPhone
    @lhbc 做内网隔离的话,至少可以保证家里其他的设备安全?
    lichifeng
        22
    lichifeng  
    OP
       2016-12-26 06:31:58 +08:00 via iPhone
    @iCyMind DS216+
    snsd
        23
    snsd  
       2016-12-26 13:14:53 +08:00 via iPhone
    已经打不开了
    lichifeng
        24
    lichifeng  
    OP
       2016-12-26 15:21:07 +08:00
    @snsd 可以啊,我试了下运行正常
    hqfzone
        25
    hqfzone  
       2016-12-26 18:56:59 +08:00
    如果想自己用,随便,如果想让别人访问,这个不靠谱。
    第一次等了好多秒,第二次 525~
    lhbc
        26
    lhbc  
       2016-12-26 21:42:18 +08:00   ❤️ 1
    @BXIA 可以,对外的服务做虚拟机和网络隔离,保证对外服务的业务无法访问管理端口和其他内网。
    snsd
        27
    snsd  
       2016-12-26 23:42:02 +08:00 via iPhone
    @lichifeng 之前不行, cloudflare 报错
    wdc63
        28
    wdc63  
       2016-12-27 17:52:01 +08:00
    过两天不给你分配公网 IP 了怎么办
    wdc63
        29
    wdc63  
       2016-12-27 17:52:57 +08:00
    我之前试过 Cloudflare ,但是过了一段时间发现被墙了,国内 IP 无法访问,国外可以访问,换回百度云加速。
    29EtwXn6t5wgM3fD
        30
    29EtwXn6t5wgM3fD  
       2016-12-27 23:59:04 +08:00 via iPhone
    403
    zi
        31
    zi  
       2016-12-28 14:09:20 +08:00
    Forbidden

    You don't have permission to access / on this server.
    Apache/2.4.18 (Ubuntu) Server at m14.cc Port 443
    lslqtz
        32
    lslqtz  
       2017-01-04 16:46:08 +08:00
    用 DNS 方式签发证书
    mortal
        33
    mortal  
       2017-01-18 13:37:26 +08:00
    谢谢 LZ ,使用相同的方法架起了一个网站(虽然并不知道放什么好
    ak47947
        34
    ak47947  
       2017-01-20 10:15:58 +08:00
    这个办法好, mark 下
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   982 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 20:54 · PVG 04:54 · LAX 12:54 · JFK 15:54
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.