Linux WEB服务器部署信息

本文最后更新于:2021年9月19日 晚上

前言

新博客已部署完成,与旧博客相比,提高了维护效率,同时也降低了运营成本,特此记录下旧博客更新配置信息。

Linux WEB服务器部署信息(2018年3月20日)

由于家里宽带升级,接入方式变更,服务器无法放在家里了,今网站正式入驻CVM,更换操作系统至 Debian 9.0 64位,Web Server Nginx 升级至 1.12.2,将 Mysql 数据库更换为 MariaDB 以下列出本站服务器配置与应用部署信息,提供参考。(变更处加以颜色标注

Server 应用

  • OS:Debian 9.0 64位
  • web server:nginx 1.12.2
  • product: PHP 7.1.5
  • 数据库: MariaDB 10.1.31
  • 博客系统: Z-BlogPHP 1.5 Zero

    Network

  • 本站采用 com 顶级域名 + www 二级域名双域名组合
  • www 二级域名实行301重定向到顶级域名

    Security

  • 全站实行 HTTP/2 超文本传输协议 2.0
  • 全站强制实行 HTTPS 协议
  • 实行 HTTP 协议301重定向到 HTTPS 协议
  • 开启 HSTS 严格安全传输协议
  • 域名已加入谷歌预加载列表,并已同步到 Chrome Edge Firefox IE 等主流浏览器中
  • 双证书均已部署 HPKP 公钥固定(公钥钉扎)
  • 开启 Certificate Transparency(证书透明度)
  • 开启 OCSP Stapling(OCSP 装订)
  • 开启 TLS 1.0、TLS 1.1、TLS 1.2、TLS 1.3(支持更多客户端),采用支持 TLS_FALLBACK_SCSV 的方式来避免降级漏洞
  • 使用 TrustAsia 颁发的两张证书,主证书加密算法 ECC 256,副证书加密算法 RSA 2048
  • 主证书使用 ECDHE_ECDSA 密钥交换机制,副证书使用 ECDHE_RSA 密钥交换机制。
  • 优先使用 Google 的 CHACHA20-POLY1305 新式加密算法
  • ECC曲线顺序 x25519 secp256r1
  • 禁止与不支持 Perfect Forward Secrecy(完全正向保密)的客户端建立连接
  • 开启 ALPN
  • 开启 NPN
  • 开启防盗链功能
  • 禁止加载外部资源
  • 禁止加载恶意跨站脚本
  • 禁止浏览器尝试 MIME 嗅探内容类型,并强制其遵守已声明的内容类型
  • 部署内容安全策略,保护网站免受 XSS 攻击,防止浏览器加载恶意资源
  • 部署在发生跨域访问时发送只包含 host 的 Referrer 避免泄露安全信息

    Performance

  • 采用 Brotli 和 Gzip 双压缩格式,支持 Brotli 的浏览器优先使用 Brotli 压缩格式
  • 部署全站静态文件缓存策略
  • 部署全站伪静态规则
  • 所有图片均已做离线压缩处理

    历史更新

  • 2017年6月1日
    加入新式加密算法 CHACHA20-POLY1305
  • 2017年6月2日
    增加对 Brotli 压缩格式的支持,支持 Brotli 的浏览器优先使用 Brotli 压缩格式
  • 2017年6月3日
    静态文件部署 CDN(内容分发网络) 该CDN部署已取消。
  • 2017年6月10日
    添加图片延时加载功能,不加载看不到的图片,待向下滚动到该图片处再建立连接加载
  • 2017年7月2日
    升级 Nginx 至 1.12.0
    升级 openssl 至 1.1.0e
    开启 TLS 1.3 draft 18 ( 现阶段 Firefox 和 Chrome 支持的最高版本)
  • 2018年3月20日
    服务器入驻 CVM
    升级操作系统至 Debian 9.0 64位
    升级Nginx至 10.12.2
    数据库更换为 MariaDB 10.1.31
  • 2018年3月24日
    更换 TrustAsia 颁发的两张证书,主证书加密算法 ECC 256,副证书加密算法 RSA 2048
  • 2018年3月26日
    开启 DNS CAA 策略
  • 2018年3月31日
    全站图片部署 WebP+png双格式,支持WebP图片格式的浏览器优先使用WebP格式,配合延时加载首页大小缩小到15KB以下
    更换 Let’s Encrypt 颁发的两张通配符证书,主证书加密算法 ECC 256,副证书加密算法 RSA 2048
    部署 HPKPRO(公钥固定报告)
  • 2018年4月15日
    增加 OCSP Must Staple(必须装订)策略
  • 2018年4月18日
    重新编译Nginx 更新至1.14.0
    升级openssl至1.1.1 pre2 支持 TLS 1.3 draft 23 ( 现阶段 Firefox 和 Chrome 支持的最高版本)
  • 2018年6月15日
    为符合 PCI DSS 标准,今日起彻底关闭 TLS1.0 协议
  • 2018年7月21日
    重新编译安装 nginx 更新 openssl 至1.1.1 pre7 支持 TLS 1.3 draft 28
  • 2018年11月27日
    重新编译安装 nginx 更新 openssl 至1.1.1 正式版 支持 TLS 1.3 (RFC 8446)
  • 2019年1月13日
    添加新的安全响应头 Feature-Policy ( 使用 Chrome 测试正常,其他浏览器目前还不支持所以在开发人员工具里会报错 )
    由于TLS1.1协议已无用,今日起彻底关闭

本博客所有文章仅供学习和交流所用,未经作者允许,均禁止转载!