使用Let’s Encrypt生成免費的SSL證書

SSL(安全套接層,Secure Sockets Layer),及其繼任者 TLS (傳輸層安全,Transport Layer Security)是爲網絡通訊提供安全及數據完整性的一種安全協議。TLS 與 SSL 會在傳輸層對網絡鏈接進行加密。

使用 Let’s Encrypt 生成免費的 SSL 證書使用 Let’s Encrypt 生成免費的 SSL 證書

SSL的用處

經過 SSL 加密,網站與用戶之間的數據交互會更加安全,可以避免大多數的網絡竊聽問題。一般在登陸以及涉及交易等安全要求比較高的狀況下,應該要求強制 SSL 加密。linux

實際上,僅僅在登陸頁面提供 SSL 並不能真正解決安全問題,在公共 Wi-Fi 等公開環境下,攻擊者依舊可以得到用戶的登陸 cookie 從而假冒用戶身份,所以對網站進行全站加密是頗有必要的。centos

2015 年,豆瓣、百度等衆多網站終於在難以忍受運營商劫持以及嵌入廣告等問題後,開啓了全站 HTTPS,是國內 HTTPS 應用的一大里程碑。安全

Let's Encrypt 是什麼?

Let's Encrypt 是由互聯網安全研究小組(ISRG,一個公益組織)於 2015 年底推出的數字證書認證機構,將經過旨在消除當前手動建立和安裝證書的複雜過程的自動化流程,爲安全網站提供免費的 SSL/TLS 證書。cookie

Let's Encrypt 的使用相對簡單,而且徹底免費,是不少中小網站的首先。網絡

certbot 是什麼?

根據官方介紹,Certbot 是一個簡單易用的 SSL 證書部署工具,由 EFF 開發,前身即 Let’s Encrypt 官方(Python)客戶端。Certbot 同時也支持其它支持 ACME 協議的 CA。工具

簡單來講,cerbot 就是一個簡化 Let's Encrypt 部署,和管理 Let's Encrypt 證書的工具。網站

安裝和使用
安裝

cerbot/Let's Encrypt 支持衆多 Linux 發行版,也支持 BSD 平臺,可直接使用相應的包管理工具進行安裝:ui

Ubuntu 16.04
sudo apt-get install letsencrypt -t jessie-backports # Debian 8
sudo apt-get install letsencrypt # Debian testing/unstable
sudo dnf install letsencrypt # Fedora
sudo pacman -S letsencrypt # Arch

Ubuntu 14.0四、CentOS、BSD 以及 Mac 下能夠經過腳本安裝:加密

wget https://dl.eff.org/certbot-auto
chmod a+x certbot-auto
獲取證書

certbot-auto certonly # 若是安裝的是 letsencrypt 把 certbot-auto 替換成 letsencrypt 便可spa

自動續期
certbot-auto renew --quiet # CentOS/RHEL
部署 Nginx
# 將全部 HTTP 請求指向 HTTPS
server {
server_name example.com;
listen 80;
return 301 https://$server_name$request_uri;
}

# 監聽 HTTPS 請求
server {
server_name example.com;
listen 443 ssl;

# TLS 基本設置
ssl_certificate /path/to/your/fullchain.pem;
ssl_certificate_key /path/to/your/privkey.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

# 網站的其它設置不變
# [...]
}
相關文章
相關標籤/搜索