V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
lichifeng

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

  •  
  •   lichifeng · Dec 25, 2016 · 12969 views
    This topic created in 3411 days ago, the information mentioned may be changed or developed.

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

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

    @BXIA SQL 注入、 XSS
    taresky
        13
    taresky  
       Dec 25, 2016 via iPhone
    不错
    cjjia
        14
    cjjia  
       Dec 25, 2016
    放 Jekyll 、 hexo ,岂不是完美了。
    sparanoid
        15
    sparanoid  
       Dec 25, 2016
    我也干过类似的事情,不过是用 CloudFlare 的 API 写了个脚本直接更新本机的公网地址到 A 记录,但是在国内的话 CloudFlare 到本地的回源会很慢
    ilay1678
        16
    ilay1678  
       Dec 25, 2016 via Android
    @sparanoid 为啥你也有 mod ,不是 Livid 专属吗(๑• . •๑)
    29EtwXn6t5wgM3fD
        17
    29EtwXn6t5wgM3fD  
       Dec 25, 2016 via iPhone
    楼主可以试试 verycloud 可以自定义源站端口,支持 https ,每月有 50G 额度.
    29EtwXn6t5wgM3fD
        18
    29EtwXn6t5wgM3fD  
       Dec 25, 2016 via iPhone
    @ifwangs 人家是管理员啊
    ilay1678
        19
    ilay1678  
       Dec 26, 2016 via Android
    @shengyu 搜噶
    iCyMind
        20
    iCyMind  
       Dec 26, 2016 via Android
    广州电信,速度还可以。
    在用群晖哪款 nas ?
    RqPS6rhmP3Nyn3Tm
        21
    RqPS6rhmP3Nyn3Tm  
       Dec 26, 2016 via iPhone
    @lhbc 做内网隔离的话,至少可以保证家里其他的设备安全?
    lichifeng
        22
    lichifeng  
    OP
       Dec 26, 2016 via iPhone
    @iCyMind DS216+
    snsd
        23
    snsd  
       Dec 26, 2016 via iPhone
    已经打不开了
    lichifeng
        24
    lichifeng  
    OP
       Dec 26, 2016
    @snsd 可以啊,我试了下运行正常
    dailiip
        25
    dailiip  
       Dec 26, 2016
    如果想自己用,随便,如果想让别人访问,这个不靠谱。
    第一次等了好多秒,第二次 525~
    lhbc
        26
    lhbc  
       Dec 26, 2016   ❤️ 1
    @BXIA 可以,对外的服务做虚拟机和网络隔离,保证对外服务的业务无法访问管理端口和其他内网。
    snsd
        27
    snsd  
       Dec 26, 2016 via iPhone
    @lichifeng 之前不行, cloudflare 报错
    wdc63
        28
    wdc63  
       Dec 27, 2016
    过两天不给你分配公网 IP 了怎么办
    wdc63
        29
    wdc63  
       Dec 27, 2016
    我之前试过 Cloudflare ,但是过了一段时间发现被墙了,国内 IP 无法访问,国外可以访问,换回百度云加速。
    29EtwXn6t5wgM3fD
        30
    29EtwXn6t5wgM3fD  
       Dec 27, 2016 via iPhone
    403
    zi
        31
    zi  
       Dec 28, 2016
    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  
       Jan 4, 2017
    用 DNS 方式签发证书
    mortal
        33
    mortal  
       Jan 18, 2017
    谢谢 LZ ,使用相同的方法架起了一个网站(虽然并不知道放什么好
    ak47947
        34
    ak47947  
       Jan 20, 2017
    这个办法好, mark 下
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5540 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 101ms · UTC 06:00 · PVG 14:00 · LAX 23:00 · JFK 02:00
    ♥ Do have faith in what you're doing.