【原创脚本】一键安装配置高性能的CDN节点

今天来介绍一下这几天我自己写的一个一键脚本。使用该一键脚本,您可以在自己的VPS上一键安装部署CDN, 方便地为您的网站提速。

本文及程序作者为香菇肥牛,原文链接https://qing.su/article/oneclick-cdn.html, 转载需注明原文链接。谢谢!

Github项目地址:https://github.com/Har-Kuun/OneClickCDN 欢迎大家加星星加叉叉

1, 系统环境要求

目前支持Ubuntu 20.04 LTS, Debian 10, Debian 11, CentOS 7/8操作系统。

CDN服务器正常运行时仅需要系统有500MB的内存。但是,程序第一次编译安装的时候需要1500MB左右的内存。若您的VPS内存不够,可以加一些Swap.

需要注意的是,该脚本需要安装在新装的操作系统中。该程序和其他面板(比如宝塔,cPanel, Directadmin)等不兼容。毕竟,装CDN程序的节点上也不应该搭建其他程序的。

 

2, 使用方法

因为是一键脚本,所以使用起来非常简单,只需要一行命令就可以啦!

原版(英文界面):

1
wget https://raw.githubusercontent.com/Har-Kuun/OneClickCDN/master/OneClickCDN.sh && sudo bash OneClickCDN.sh

中文版:

1
wget https://raw.githubusercontent.com/Har-Kuun/OneClickCDN/master/translation/translated_scripts/OneClickCDN_zh-CN.sh && sudo bash OneClickCDN_zh-CN.sh

第一次运行时,程序会提示自动编译安装Traffic Server.  安装完毕后,程序会引导新建CDN网站,自动签发SSL, 等等。您需要将您网站的域名设置A记录解析到这台VPS的IP地址上。

您也可以随时重新运行该脚本,用来管理您的服务器上部署的CDN网站,查看网站统计,等等。

 

3, 管理面板

脚本执行后拥有功能丰富但简单易用的后台管理界面。

 

4, 实现的功能

首先,最基本的功能就是CDN.  安装后,程序就会将您的VPS变成一个高性能CDN节点,用来加速和缓存您的网站。

同时,脚本支持一键设置SSL, 您可以提供您自己的SSL证书,或者也可以一键签发免费的Let’s Encrypt证书,并且开启OCSP装订。

脚本还支持随时增添新的CDN网站。您只需要根据脚本引导,输入网址和源站IP地址,即可分分钟添加CDN网址。您可以使用脚本管理CDN网站,查看网站数据,清除缓存,等等。

2021年12月12日新增:目前已支持配置与SSL证书导入导出,可以快速在多个CDN节点中实现同步配置网站。

小彩蛋:稍微修改一下脚本(脚本开头有说明,可以开启反代模式)可以一键反代hostloc哦 ^.^

 

如果您有任何疑问,或者提议,欢迎在这里留言!如果您能在Github项目中加星星叉叉,我将万分感谢~

本文及程序作者为香菇肥牛,原文链接https://qing.su/article/oneclick-cdn.html, 转载需注明原文链接。谢谢!

128 thoughts on “【原创脚本】一键安装配置高性能的CDN节点”

    • 如果只是IP地址填错了,可以直接用面板的修改IP功能。如果其他信息填错了,可以分别找到下面这三个文件,在文件末尾找到并删除对应的行。

      1
      2
      3
      /etc/trafficserver/ssl_multicert.config
      /etc/trafficserver/hostsavailable.sun
      /etc/trafficserver/remap.config

      删除完了以后重启traffic server

      1
      trafficserver restart

      过两天我会给脚本添加一个删除网站的功能,这样方便一点

      Reply
      • 谢谢 不过现在添加站点有问题,在选择https和http的时候,在最后生成的 remap.config里面,选择 2 选项会自动跳转至 https.

        Reply
    • 如果你需要源站多服务器之间的均衡负载,可以修改实现。如果你需要CDN节点的均衡负载,这个功能你可以在DNS服务提供商那里实现…

      Reply
  1. 大佬,请教一下,如果您这边有更新,服务器是需要重新安装的对吧?

    如何删除已经安装好的 OneClickCDN呢? 如何删除这个服务呢?

    Reply
    • 首先感谢大佬写出这么好用的cdn脚本辛苦啦,我新白一枚不懂就问,不知道是我没了解功能还是没有域名回源cname方式,源站只能用ip吗?
      要是有控制面板真的就完美了,谢谢大佬!

      Reply
  2. 请问自己添加ssl证书怎么添加 请输入您的私钥地址 (e.g., /etc/certs/qing.su.key):添加时需要带e.g., 吗
    自动签发SSL证书失败

    Reply
  3. 大佬 本来想用香港服务器做为cdn加速国内服务器,结果直接域名直接被拦截跳转到提示备案的页面,用Nginx反代没这个问题啊,有没有办法解决?能不能添加自定义回源域名设置?谢谢!

    Reply
  4. 请教一下大佬:配置这一步时,能填域名吗?

    请输入源站IP地址。如果源站有多个IP地址,可以填任意一个。

    Reply
  5. 安装好了, 似乎没生效,不知道哪里出了问题。
    源地址:https://s3.us-west-1.wasabisys.com/888/20180605.ts
    CDN地址:https://cdn.yy88.ru/888/20180605.ts

    Reply
  6. Domain Type(CDN/RevProxy) OriginIP
    cdn.yy88.ru CDN 76.191.80.11:443

    是缓存的端口错了吗?怎么显示的源IP:443端口

    Reply
  7. 我24号发的找出原因了,是因为源地址是域名,并且需要修改请求头。
    请教一下哪里修改呢?

    Reply
  8. 大佬,按照您的教程安装好了,挺好用。。现在有些问题,1.如何设置http强制跳转https?2.如何设置防盗链?3.动态内容能不能将用户IP传递给后端?。。

    Reply
  9. 配置HTTP加速,很正常,但是如果源站是https的话(且源IP为域名)一直出错。大佬能否指点下,

    Reply
      • 可以了,谢谢
        另外问一下,如何自定义修改名称,目前可以从页面中看到ATS 8.0.8,想修改掉这个自定义的,是哪个文件

        Reply
          • 可以手动修改么,如果重新配置一次之前的配置又没了又要重新来一遍,因为我已经手动修改了很多的默认配置,不想再来一次。。。

          • /etc/trafficserver/header_rewrite.so里面加上:

            1
            2
            3
            cond %{SEND_RESPONSE_HDR_HOOK} [AND]
            cond %{HEADER:server} =ATS/8.0.8
                set-header server "NewServerName"

            然后重启ATS

    • Fikker和ATS, Nginx, Varnish根本没得比,Fikker能实现的功能这些全都可以实现。但是我这个脚本只包含了最基本最常用的CDN功能,其他的功能需要自己手动配置了。

      Reply
      • 期待大佬整合一下,以后如果功能强大可以考虑收费(便宜点相信大家都会支持的,fikker实在是太贵,一年300多比vps都贵)

        Reply
  10. OneClickCDN.log
    奶牛https://cowtransfer.com/s/cfec38c576a841取件码9ycsp6
    大佬帮忙看看吧

    Reply
    • 日志上没有任何报错,我也不知道为什么会失败,需要的话可以加我QQ694082200然后设置一个临时root密码发给我,帮你看看吧

      Reply
  11. 大佬你好,请问有设置缓存过期时间或禁止缓存目录或文件的功能吗?
    我用在wordpress上全站加速,但登录状态无法刷新。

    Reply
  12. 两台vps,CentOS 7系统配置系统都一样,使用的trafficserver配置也是一样,一台可以缓存可以使用,另外一台配置完成缓存都正常,但过几个小时后就不能缓存了via: http/1.1 223251.38809.sys.ipv4.io (ATS [cMsNf ])查询是未缓存,sftp这些也出现无法连接到,ssh可以连接使用,系统已经更换过也是不行一样存在,过几个小时就不能缓存了

    Reply
  13. 请问,怎么再次把中文面板调出来,,,关闭了,,,不知道添加cdn域名的命令

    Reply
  14. 点赞大佬

    请问debian 9还做适配吗

    自己很多服务都是在debian 9 兼容性最好

    debian 9 使用率和centos 7差不多吧!

    Reply
    • 在一个节点上续期,然后把证书复制到其他机器上,目前只能这样了,后续如果有空的话会考虑出一个多节点续期的功能

      Reply
  15. 只能这样了,用sftp复制到其它,大佬啥时候出个自动续期,我看别的可以用txt记录申请不用解析指向,这也是一个思路。

    Reply
  16. 使用正常,就是使用后谷歌浏览器打开显示的是手机端,其他的浏览器打开的都是电脑端,这是什么原因啊.

    Reply
  17. 我站访问量比较大,上了大佬的cdn脚本做测试。cdn服务器是4核心的,top后台就看到一个线程cpu跑满了,不能多个cpu线程一起运作么?

    Reply

Leave a Comment