成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何在 Ubuntu 20.04 上使用 Let's Encrypt 保護(hù) Nginx

系統(tǒng) Linux
在本教程中,您將使用 Certbot 在 Ubuntu 20.04 上為 Nginx 獲取免費(fèi)的 SSL 證書,并將您的證書設(shè)置為自動(dòng)續(xù)訂。

介紹

Let's Encrypt 是一個(gè)證書頒發(fā)機(jī)構(gòu) (CA),它提供了一種簡單的方法來獲取和安裝免費(fèi)的TLS/SSL 證書,從而在 Web 服務(wù)器上啟用加密的 HTTPS。它通過提供軟件客戶端 Certbot 來簡化流程,該客戶端嘗試自動(dòng)執(zhí)行大部分(如果不是全部)所需步驟。目前,獲取和安裝證書的整個(gè)過程在 Apache 和 Nginx 上都是完全自動(dòng)化的。

在本教程中,您將使用 Certbot 在 Ubuntu 20.04 上為 Nginx 獲取免費(fèi)的 SSL 證書,并將您的證書設(shè)置為自動(dòng)續(xù)訂。

本教程將使用單獨(dú)的 Nginx 服務(wù)器配置文件而不是默認(rèn)文件。我們建議為每個(gè)域創(chuàng)建新的 Nginx 服務(wù)器塊文件,因?yàn)樗兄诒苊獬R婂e(cuò)誤并維護(hù)默認(rèn)文件作為后備配置。

[[441191]]

先決條件

要學(xué)習(xí)本教程,您需要:

  •  設(shè)置一個(gè) Ubuntu 20.04 服務(wù)器,包括啟用 sudo 的非root用戶和防火墻。
  •  一個(gè)注冊的域名。本教程將example.com貫穿始終。
  •  為您的服務(wù)器設(shè)置的以下兩個(gè) DNS 記錄。
  •      example.com指向您服務(wù)器的公共 IP 地址的 A 記錄。
  •      指向您服務(wù)器的公共 IP 地址的 A 記錄。www.example.com
  •  按照如何在 Ubuntu 20.04 上安裝 Nginx 安裝 Nginx。確保您的域有一個(gè)服務(wù)器塊。本教程將用作示例。/etc/nginx/sites-available/example.com

步驟 1 - 安裝 Certbot

使用 Let's Encrypt 獲取 SSL 證書的第一步是在您的服務(wù)器上安裝 Certbot 軟件。

安裝 Certbot 和它的 Nginx 插件apt:

  • sudo apt install certbot python3-certbot-nginx

Certbot 現(xiàn)在可以使用了,但是為了讓它自動(dòng)為 Nginx 配置 SSL,我們需要驗(yàn)證 Nginx 的一些配置。

步驟 2 — 確認(rèn) Nginx 的配置

Certbot 需要能夠server在您的 Nginx 配置中找到正確的塊才能自動(dòng)配置 SSL。具體來說,它通過查找server_name與您為其申請證書的域匹配的指令來實(shí)現(xiàn)這一點(diǎn)。

如果您按照Nginx 安裝教程中的服務(wù)器塊設(shè)置步驟進(jìn)行操作,則您的域中應(yīng)該有一個(gè)服務(wù)器塊,并且已正確設(shè)置了指令。/etc/nginx/sites-available/example.comserver_name

要檢查,請使用nano或您喜歡的文本編輯器打開您的域的配置文件:

  •  sudo nano /etc/nginx/sites-available/example.com

找到現(xiàn)有的server_name行。它應(yīng)該是這樣的:

/etc/nginx/sites-available/example.com 

  1. ...  
  2. server_name example.com www.example.com;  
  3. ... 

如果是,請退出編輯器并繼續(xù)下一步。

如果不是,請更新它以匹配。然后保存文件,退出編輯器,并驗(yàn)證配置編輯的語法:

  •  sudo nginx -t

如果出現(xiàn)錯(cuò)誤,請重新打開服務(wù)器塊文件并檢查是否有任何拼寫錯(cuò)誤或缺失字符。配置文件的語法正確后,重新加載 Nginx 以加載新配置:

  • sudo systemctl reload nginx

Certbot 現(xiàn)在可以找到正確的server塊并自動(dòng)更新它。

接下來,讓我們更新防火墻以允許 HTTPS 流量。

步驟 3 — 允許 HTTPS 通過防火墻

如果您ufw按照先決條件指南的建議啟用了防火墻,則需要調(diào)整設(shè)置以允許 HTTPS 流量。幸運(yùn)的是,Nginxufw在安裝時(shí)注冊了一些配置文件。

您可以通過鍵入以下內(nèi)容查看當(dāng)前設(shè)置:

  •  sudo ufw status

它可能看起來像這樣,這意味著 Web 服務(wù)器只允許 HTTP 流量: 

  1. Status: active  
  2. To                         Action      From  
  3. --                         ------      ----  
  4. OpenSSH                    ALLOW       Anywhere                  
  5. Nginx HTTP                 ALLOW       Anywhere                
  6. OpenSSH (v6)               ALLOW       Anywhere (v6)          
  7. Nginx HTTP (v6)            ALLOW       Anywhere (v6)  

要額外允許 HTTPS 流量,請?jiān)试S Nginx 完整配置文件并刪除冗余的 Nginx HTTP 配置文件限額:

  •  sudo ufw allow 'Nginx Full'
  •  sudo ufw delete allow 'Nginx HTTP'

您現(xiàn)在的狀態(tài)應(yīng)如下所示:

  •  sudo ufw status 
  1. Status: active  
  2. To                         Action      From  
  3. --                         ------      ----  
  4. OpenSSH                    ALLOW       Anywhere  
  5. Nginx Full                 ALLOW       Anywhere  
  6. OpenSSH (v6)               ALLOW       Anywhere (v6)  
  7. Nginx Full (v6)            ALLOW       Anywhere (v6) 

接下來,讓我們運(yùn)行 Certbot 并獲取我們的證書。

步驟 4 - 獲取 SSL 證書

Certbot 提供了多種通過插件獲取 SSL 證書的方式。Nginx 插件將負(fù)責(zé)重新配置 Nginx 并在必要時(shí)重新加載配置。要使用此插件,請鍵入以下內(nèi)容:

  •  sudo certbot --nginx -d example.com -d www.example.com

這certbot與--nginx插件一起運(yùn)行,-d用于指定我們希望證書有效的域名。

如果這是您第一次運(yùn)行certbot,系統(tǒng)會(huì)提示您輸入電子郵件地址并同意服務(wù)條款。執(zhí)行此操作后,certbot將與 Let's Encrypt 服務(wù)器通信,然后運(yùn)行質(zhì)詢以驗(yàn)證您是否控制要為其申請證書的域。

如果成功,certbot將詢問您希望如何配置 HTTPS 設(shè)置。 

  1. Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.  
  2. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -  
  3. 1: No redirect - Make no further changes to the webserver configuration.  
  4. 2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for  
  5. new sites, or if you're confident your site works on HTTPS. You can undo this  
  6. change by editing your web server's configuration.  
  7. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -  
  8. Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 

選擇您的選擇,然后點(diǎn)擊ENTER。配置將被更新,Nginx 將重新加載以獲取新設(shè)置。certbot將以一條消息結(jié)束,告訴您該過程已成功以及您的證書的存儲(chǔ)位置: 

  1. IMPORTANT NOTES:  
  2.  - Congratulations! Your certificate and chain have been saved at:  
  3.    /etc/letsencrypt/live/example.com/fullchain.pem  
  4.    Your key file has been saved at:  
  5.    /etc/letsencrypt/live/example.com/privkey.pem  
  6.    Your cert will expire on 2020-08-18. To obtain a new or tweaked  
  7.    version of this certificate in the future, simply run certbot again  
  8.    with the "certonly" option. To non-interactively renew *all* of  
  9.    your certificates, run "certbot renew"  
  10.  - If you like Certbot, please consider supporting our work by:  
  11.    Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate  
  12.    Donating to EFF:                    https://eff.org/donate-le 

您的證書已下載、安裝和加載。嘗試使用重新加載您的網(wǎng)站https://并注意瀏覽器的安全指示器。它應(yīng)該表明該站點(diǎn)已得到適當(dāng)保護(hù),通常帶有鎖定圖標(biāo)。如果您使用SSL Labs Server Test測試您的服務(wù)器,它將獲得A級。

讓我們通過測試更新過程來結(jié)束。

步驟 5 - 驗(yàn)證 Certbot 自動(dòng)續(xù)訂

Let's Encrypt 的證書有效期只有九十天。這是為了鼓勵(lì)用戶自動(dòng)化他們的證書更新過程。certbot我們安裝的軟件包通過添加一個(gè)每天運(yùn)行兩次的 systemd 計(jì)時(shí)器來為我們處理這個(gè)問題,并自動(dòng)更新任何在到期后三十天內(nèi)的證書。

您可以使用以下命令查詢計(jì)時(shí)器的狀態(tài)systemctl:

  •  sudo systemctl status certbot.timer 
  1. ● certbot.timer - Run certbot twice daily 
  2.      Loaded: loaded (/lib/systemd/system/certbot.timer; enabled; vendor preset: enabled)  
  3.      Active: active (waiting) since Mon 2020-05-04 20:04:36 UTC; 2 weeks 1 days ago  
  4.     Trigger: Thu 2020-05-21 05:22:32 UTC; 9h left  
  5.    Triggers: ● certbot.service 

要測試更新過程,您可以使用以下命令進(jìn)行試運(yùn)行certbot:

  •   sudo certbot renew --dry-run

如果您沒有看到任何錯(cuò)誤,則說明一切就緒。必要時(shí),Certbot 將更新您的證書并重新加載 Nginx 以獲取更改。如果自動(dòng)續(xù)訂過程失敗,Let's Encrypt 將向您指定的電子郵件發(fā)送一條消息,在您的證書即將到期時(shí)向您發(fā)出警告。

結(jié)論

在本教程中,您安裝了 Let's Encrypt 客戶端certbot,為您的域下載了 SSL 證書,將 Nginx 配置為使用這些證書,并設(shè)置了自動(dòng)證書續(xù)訂。如果您對 Certbot的使用還有其他疑問,可以從官方文檔開始。 

 

責(zé)任編輯:龐桂玉 來源: Linux公社
相關(guān)推薦

2021-12-15 11:46:46

HTTP2Nginx

2022-05-29 17:37:39

LinuxUbuntuPHP

2018-04-08 09:00:00

Let's Encry加密解密

2020-07-14 20:25:46

UbuntuLinux桌面應(yīng)用

2020-08-14 07:00:00

RudderIT工具

2022-03-17 14:56:26

KubernetesMinikubeLinux

2021-09-18 08:00:00

Python系統(tǒng)開發(fā)

2023-05-27 16:27:25

2020-10-17 13:04:35

UbuntuDeepin桌面環(huán)境

2022-09-01 08:37:50

Ubuntu發(fā)行版

2015-12-31 10:35:53

HTTPS 證書HTTPS網(wǎng)絡(luò)協(xié)議

2021-12-16 16:50:47

NginxSSLLinux

2016-11-03 20:06:53

UbuntuGrafanaDocker

2016-01-15 09:56:44

LinuxUbuntuGlances

2021-07-20 08:00:00

集群Elasticsear工具

2017-08-03 10:36:08

UbuntuCertbotNGINX

2019-09-11 14:30:45

UbuntuLinuxR語言

2018-02-25 09:48:36

LinuxUbuntu文件系統(tǒng)

2018-02-25 11:03:00

LinuxUbuntuEncryptpad

2017-02-27 18:26:45

UbuntuADBAndroid
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 成年男女免费视频网站 | 欧美一级大片 | 日韩欧美三级在线 | 午夜爽爽爽男女免费观看 | 最新国产精品 | 国产精品久久久久久久午夜 | 国产一区欧美 | 黑人巨大精品欧美一区二区免费 | 黑人一级黄色大片 | 久久久久久国产免费视网址 | 一区二区三区国产精品 | 亚洲三区视频 | 久久久久久久一区 | 日韩视频一区在线观看 | 国产精品视频97 | 三级欧美 | 浴室洗澡偷拍一区二区 | 精品亚洲91| av天空| 欧美成人精品一区二区男人看 | 欧美日韩中文字幕在线 | 国产亚洲精品成人av久久ww | 欧美综合久久久 | 成人亚洲在线 | 中文字幕一区在线 | 欧美激情久久久 | 国产一区二区在线免费观看 | 久久九| 一区中文字幕 | 久久视频免费观看 | 日日欧美| 一区二区亚洲 | 日韩精品视频中文字幕 | 国产jizz女人多喷水99 | 亚洲欧美激情四射 | 99re国产视频| 国产91 在线播放 | 天堂一区二区三区 | 日韩二三区 | 九九热re| 伊人狼人影院 |