8

腾讯云对象存储结合CDN进行合理的图床配置

 2 years ago
source link: https://kaopubear.top/blog/2022-03-26-tencent-cloud-cdn-setting/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

今天好几个小伙伴反馈gitee不能再当作图床使用了,问有没有更好的markdown图床替代方案。

我最早一直用GitHub当图床,从2019年中开始改用腾讯云,用到现在感觉腾讯云对象存储配合腾讯云自己的CDN就是一个还蛮不错的图床方案。

首先腾讯云国内访问的速度绝对是快的,之所以建议配合CDN主要是基于两方面的原因,一是购买流量包的价格整体更划算,首次使用一般还会送半年的流量包,非流量大户妥妥的够用;二是相比于对象存储本身,CDN有着更加丰富的访问权限控制设置,可以防盗链以免被白嫖流量。

我的云存储的使用情况

用到现在大概是有5个G的存储量。

平均每个月的费用就是七八块钱。

你可能注意到今年2月和3月出现了两次异常,原因是我的域名被一个IP盯上了,每天都会遍历一遍域名下的所有图片。所以直接一个月干掉了我60多G的流量。

对象存储防盗链设置规则

这里就需要提到腾讯云对象存储的防盗链设置规则。

腾讯云对象存储本身只支持设置黑白名单二选一,对于大多数人都是设置为白名单更加合适,同时为了能够在本地编辑器(比如typora、VScode和Obsidian)中正常显示图床图片还需要允许空的referer。这就带来了一个很大的问题,如果一个垃圾IP利用空referer规则疯狂读图单纯靠这个规则就招架不住了。

CDN 访问控制设置防盗链

为了更好的配置防盗链规则,这里就推荐云存储结合CDN的配置方案。这样一个通过CDN访问的图片链接首先会遵守CDN自己的访问控制规则,通过之后会再去匹配对象存储的防盗链规则。

推荐的配置方案如下:

首先使用白名单指定可以访问的http地址,然后允许空referer使得本地可以正常显示图片。如果有明确的垃圾IP地址持续攻击,还可以在IP黑名单设置中输入对应的IP段进行过滤。

最后,为了应对可能存在的恶意访问,还可以设置单节点IP每秒钟的访问次数(15或者30基本都可以)。用这个方式就可以杜绝大多数持续性无差别的恶意访问了。

CDN使用效果监控

腾讯云的CDN数据分析后台上基本的数据都可以看到。

比如你可以通过TOP1000 URL 看到那个文件(图片)被访问的此时最多,通过TOP100 Referer 可以看到自己哪篇博客文章被访问的此时最多,通过TOP100客户端IP还能看到哪个IP地址访问的最多。这几个信息都还是蛮有用的。

批量迁移图床

好了,最后一个问题就是如何能够尽可能方便的批量迁移图片。这里推荐一个我曾经使用过的方案供参考。

目前我在使用的本地图床工具是PicGO,软件本身有不少插件可以配套使用,其中有一个插件叫做pic migrater 就是用来批量迁移图片的。

这个插件支持设置需要迁移图片链接的匹配方式,还可以选择需要操作的文件或者文件夹。

OK,这篇就写到这里,下次再见👋


本文作者:思考问题的熊

版权声明:本博客所有文章除特别声明外,均采用 知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议 (CC BY-NC-ND 4.0) 进行许可。

· 分享链接 https://kaopubear.top/blog/2022-03-26-tencent-cloud-cdn-setting/


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK