29日下午正好有时间例行网站应用代码升级维护,正好发现nginx HTTP3模块进行了更新,一直关注HTTP3的发展,网站一开始使用的是Cloudflare开发的HTTP3扩展,等nginx官方有了HTTP3支持后也是第一时间升级了,由于本站架构运行在Docker之上,所以这次升级也就改一下nginx代码库commit id,然后重新编译Docker镜像,一直都是这么升级,结果今天翻车了。 由于编译一次Docker镜像需要耗费较长时间,所以我会习惯性把一些该升级的组件进行一次升级:例如更新频率比较高的BoringSSL。这次还发现了ngx_brotli这个很长时间没有更新的扩展也有了更新记录,顺带也升级到最新commit。 完成编译后便直接将这个最新版本的nginx镜像推送至registry,然后服务器同步拉取(pull)完成更新容器更新,由于没有测试直接更新容器,结果炸了。受问题镜像同步 …

nginx作为反向代理服务器一直以轻巧高效著称,在日常实践中我将其作为项目的反向代理应用前端并取得了不错的效果,这里记录nginx其中利用njs模块的脚本支持读取ipset黑名单(白名单)从而实现访问控制列表(Access Control List)的方法,做法仅供参考,如有想法欢迎评论提出。 1 主要背景 1.1 问题的提出 互联网环境日益复杂和危险,对于新上线的服务器主机来说,每天都将面临大量的漏洞扫描、DDoS攻击,对于配置不当或者存在安全漏洞的主机,很容易就会沦为跳板机或者挖矿机,继而攻击网络中其他主机或者白白消耗宝贵的计算资源,对于互联网威胁我认为有必要采取积极的防御策略。 1.2 基本的防御策略 主要有这几种手段:① 关注安全公告并及时打补丁避免漏洞;② 复杂的身份认证策略,避免弱口令存在于SSH或者数据库系统中,建议采取证书或者key方式完成认证流程;③ 最小权限划分原则,避 …


Some archived posts that were written in Simplified Chinese before the year 2021 were moved to and it may never update.