南琴浪博客

开始使用 LibreSSL

03/24/2018

本文介绍以 LibreSSL 作为 Nginx 加密库的配置方法。

本博客即日起使用 LibreSSL 替换掉了原有的 OpenSSL。当然,因为这个原因,失去了 TLS1.3、CT-module 等特性。

LibreSSL 是 OpenBSD 开发者从 OpenSSL 中抽出去单独发展的分支(话说 BoringSSL 也是从 OpenSSL 抽出去的呢)。目标是重构 OpenSSL 代码,以提供一个更安全的替代品。LibreSSL 复刻自 OpenSSL 1.0.1g 分支,它将遵循 OpenBSD 基金会在其他项目所使用的安全指导原则。

LibreSSL

和 BoringSSL 不一样,LibreSSL 不需要先编译自己,直接提供给 Nginx 就行:

# 下载 LibreSSL
wget https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-2.6.4.tar.gz && tar -zxf libressl-2.6.4.tar.gz

# Nginx Configure
./configure  ...  --with-openssl=.../libressl-2.6.4

Nginx

编译完成后,就是 cipher suite 的书写了,和以前用 openssl 时无差。这里以本站现在的配置为例:

# 本博客现仅使用 TLS1.2 + ECC 单证书
ssl_ciphers  'ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-ECDSA-CHACHA20-POLY1305 ECDHE-ECDSA-AES256-GCM-SHA384';