在不斷變化的網絡威脅世界中,保護您的 Web 服務器是重中之重。 加固 Web 服務器的最簡單方法之一是使用 SSL 證書保護它。 它對網絡服務器和用戶瀏覽器之間交換的流量進行加密,以防止黑客嗅探或攔截用戶名和密碼等敏感信息。
Let’s Encrypt 是一個免費的自動證書頒發機構,可幫助您使用有效期約為 90 天的免費 SSL 證書設置安全的 HTTPS 服務器。本指南將引導您完成使用 Let’s Encrypt SSL 證書保護 Web 服務器的過程。
我需要
首先,我假設您已經在 Rocky Linux 8 上安裝了 Apache Web 服務器堆棧。如果沒有,請查看我們的指南,了解如何在 Rocky Linux 8 上安裝 LAMP 服務器。第一步是如何安裝 Apache HTTP Web 服務器的演練。
此外,請確保您有一個指向服務器公共 IP 地址的有效域名。本指南使用一個名為 linuxtechgeek.info。
第 1 步:安裝 EPEL 存儲庫
現在開始安裝 EPEL(企業 Linux 的額外軟件包)。這是 Fedora 為基於 RHEL 的系統提供的附加軟件包。
所以運行命令 show 。
$ sudo dnf install epel-release
第 2 步:安裝 Certbot
安裝EPEL後,繼續安裝 證書機器人 certbot 的 apache 模塊, 和 mod_ssl 這是一個提供加密功能的 Apache 模塊。
$ sudo dnf install certbot python3-certbot-apache mod_ssl
安裝軟件包後,重新啟動 Apache HTTP Web 服務器。
$ sudo systemctl restart httpd
此外,請確保 Web 服務器正在運行。
$ sudo systemctl status httpd
第 3 步:創建虛擬主機文件
接下來,配置 Apache 虛擬主機文件。這是為域的 Web 內容提供服務的配置,certbot 使用它來促進 Let’s Encrypt 的安裝。
因此,為您的網站創建一個文件夾。在這種情況下,創建目錄 linuxtechgeek.info 這是指向您的 Web 服務器 IP 的域名。
$ sudo mkdir -p /var/www/linuxtechgeek.info
將目錄所有權分配給 Apache 用戶。
$ sudo chown -R apache:apache /var/www/linuxtechgeek.info
接下來,在目錄中創建一個虛擬主機文件。 /etc/httpd/conf.d 目錄。
$ sudo vim /etc/httpd/conf.d/linuxtechgeek.info.conf
粘貼您看到的配置並確保替換 linuxtechgeek.info 使用自己的域名
<virtualhost *:80> ServerName linuxtechgeek.info ServerAlias www.linuxtechgeek.info DocumentRoot /var/www/linuxtechgeek.info ErrorLog /var/log/httpd/linuxtechgeek.info-error.log CustomLog /var/log/httpd/linuxtechgeek.info-access.log combined </virtualhost>
保存配置文件並退出。然後重新啟動 Apache Web 服務器。
$ sudo systemctl restart httpd
現在讓我們獲取 SSL 證書。
第 4 步:獲取 SSL 證書
最後,要使用 Certbot 安裝 Let’s Encrypt,請運行以下命令:
$ sudo certbot --apache
這將引導您完成一系列步驟來配置 SSL 證書、輸入您的電子郵件地址、閱讀並接受使用條款,並選擇一個名稱以啟用 HTTPS。
Certbot 檢測虛擬主機配置並為所有配置請求 Let’s Encrypt SSL 證書。
在 certbot 完成將 SSL 證書應用到您的 Web 服務器後,通過在 SSL Labs 中運行 SSL 服務器測試來測試您的 SSL 設置。這是一個在線平台,可對您網站的 Web 服務器進行深入分析。
步驟 5:配置自動證書續訂
如上所述,Let’s Encrypt 證書的有效期僅為 90 天,之後必須續訂。您可以使用以下命令在到期前一天手動更新證書:
$ certbot renew
更好的方法是設置一個 cron 作業來自動執行證書更新過程。所以打開 crontab 文件。
$ crontab -e
將此行添加到文件末尾並保存更改。
0 0 * * * /usr/bin/certbot renew > /dev/null 2>&1
這是一個包。 我們希望您可以使用 Let’s Encrypt SSL 證書保護您的 Apache Web 服務器。