今天闲得慌(鸽了一个架构报告),来说说搭建AHdark Blog都用到了什么吧
服务器
服务器方面使用的阿里云ECS服务器(其实我更想用腾讯云但懒得把支付宝的钱换到微信里)
ECS 北京H区 2核 2GB内存 1Mbps带宽
当时花了300多买了一年的,凑活用没啥问题,就是扛不住暴力攻击(嘤嘤嘤)
比如你可以参照这一篇文章
在这次攻击以后我就学聪明了,加被扒到了源站IP,很难受,就想了点简单的解决措施:安全组(我没有装Firewalld)
应用了3个安全组呢!往后看你会看到本站的详细架构和层次,所以这里不多介绍原因。
这三次安全组使得只有本站使用的CDN节点(腾讯云CDN、CloudFront)才可访问本站的80、443端口,也就解决了知道源站ip打80端口的问题
而且,据统计,即使算入80、443端口,本站也只开放了3个入站端口
1/65533的概率我相信我没这么倒霉,就算倒霉一次我也有其他方法
至于SSH,跳板机万岁!
架构
Web:Apache
Apache 是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中
其支持模块多,性能稳定
不使用Nginx的原因是因为Nginx的证书模块有一个Bug会暴露源站IP
SQL:阿里云RDS云数据库
站库分离降低服务器压力,内网Mysql避免SQL注入攻击,三节点主备分离保证稳定使用
PHP:7.4
使用了以下扩展:
- fileinfo
- opcache
- redis
- imagemagick
- exif
- Swoole4
- 其他基础扩展
Redis 6.2.4
通过插件实现首页数据库零查询
Fail2ban
防止SSL爆破、CC攻击(虽然没多大用)
中国大陆CDN:腾讯云CDN
2800+节点覆盖国内移动、联通、电信及十几家中小型运营商,以及全球70+国家地区,全网带宽150Tbps+
速度快,延迟低,节点多,质量好,可扩展性强(搭配云函数)
海外CDN:CloudFlare
延迟低,速度快,节点多且全球分布,可扩展性强
质量我也不知道,等我出国再说(?)
媒体文件存储:腾讯云对象存储
安全稳定、便捷易用、低成本、无目录层次结构、无数据格式限制、可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务
兼容S3协议
中国大陆 媒体文件加速:腾讯云CDN
不说了,看上边
海外 媒体文件加速:CloudFlare
以色列国防军和圣城旅背后的反黑客网站,强大的反DDOS、反CC技术和Anycast全球分发技术
静态加速的首选,百度云加速的技术支持
反攻击:腾讯云云防火墙
多强不说了,一般的反DDOS和反CC还是可以的,而且是白嫖的(那肯定是很硬的关系)
暴力攻击是没效果的!
应用
WordPress
wordpress肯定很容易认出来,毕竟本博客完全基于Wordpress搭建
但凡有点脑子你都应该知道Wordpress,如果你实在蠢的话 你可以看看百度百科来了解Wordpress
WordPress扩展性好、开源、免费,所以很适合作为Blog使用,因此选中了Wordpress作为Blog,同时可以练习一下新学的PHP开发
主题:MDx
使用MDUI构建的Material Design 风格、适用于个人博客的轻量级WordPress主题,少有的可不依赖jQuery的主题。
- 完全的 Material Design 风格,每一个像素都赏心悦目,还可切换到 Material Design 2 风格
- 3 种首页样式,5 种文章列表样式,3 种页脚样式 & 3 种文章页样式随意切换,未来还可能增加更多
- 19 种主题颜色 & 16 种强调色随心搭配,还有夜间模式
- 不仅有黑暗主题,更有专为 OLED 屏幕优化过的黑暗主题可选
- SEO 友好,支持 Facebook / Twitter 结构化卡片分享
- 丰富的设置选项
- 一键生成分享图片,分享文章更美观
- 内置文章目录功能
- 内置 7 种短代码,与主题样式完美契合
- 独家功能 实时搜索,搜索栏会随用户输入实时反馈搜索结果
- 独家功能 不仅可以生成当前页面二维码,方便地转移到其他设备上阅读,还可以在转移时同步阅读进度
- 多语言支持(简体中文、土耳其语、英语)
- 完全响应式
- 自带简单的 ImgBox
- 支持小工具
插件:WPJAM Basic
用来优化的,效果很不错
插件:Code Syntax Block
代码高亮插件,效果很不错,可以自选语言,高亮很齐全,兼容MDx主题
AHdark对其进行了优化,使得其前端js调用jsDelivr资源以加速并降低本站服务器压力
插件:Crisp
网页在线客服系统,可前往 crisp.chat 获取
插件:Redis Object Cache
使用Redis缓存页面的数据库查询并在发布、评论等操作时自动刷新缓存,实现了首页数据库0查询
很实用,比Memcached性能好
插件:tencentcloud-cdn
在发布、评论等操作时自动刷新对应页面在腾讯云CDN的缓存,与本站使用的CDN配合实现实时更新内容
插件:tencentcloud-cos
将WordPress媒体库的资源上传至腾讯云COS,可实现直传
大幅降低本站服务器压力
插件:WP Alu2Button(MDx改版)
你也可以下载AHdark修正的使用jsDelivr加速的CDN版本
插件:自定义微信分享
在微信、QQ的分享中可以显示文章摘要和图片
需要已认证的微信服务号和操作权限
能具体说下 Nginx 证书模块漏洞所覆盖的版本范围吗
更新:
按 Stack Overflow 的说法,该漏洞在 Nginx 1.9 得到修复
原文 https://stackoverflow.com/questions/31621118/disable-sslv3-on-nginx