如何使用 RockyLinux8 加密 SSL 證書和 Apache Web 服務器


在網絡威脅不斷變化的世界中,保護您的 Web 服務器必須是重中之重。 提高 Web 服務器安全性的最簡單方法之一是使用 SSL 證書保護服務器。 它對網絡服務器和用戶瀏覽器之間交換的流量進行加密,防止黑客竊聽或攔截用戶名和密碼等敏感信息。

Let’s Encrypt 是一個免費的自動證書頒發機構,可幫助您使用免費 SSL 證書設置安全的 HTTPS 服務器,該證書的保留期約為 90 天。本指南介紹了使用 Let’s Encrypt SSL 證書保護 Web 服務器的過程。

我需要

在啟動時,我們假設 Apache Web 服務器堆棧已經安裝在 RockyLinux8 上。如果沒有,請查看我們的指南,了解如何在 Rocky Linux 8 上安裝 LAMP 服務器。第一步是關於如何安裝 Apache HTTP Web 服務器的演練。

此外,請確保您擁有指向服務器公共 IP 地址的有效域名。本指南使用域名 linuxtechgeek.info。

第 1 步:安裝 EPEL 存儲庫

現在開始安裝 EPEL(Enterprise 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 

第三步:創建虛擬主機文件

接下來,配置 Apache 虛擬主機文件。這是一個為您的域提供 Web 內容的配置,certbot 使用它來促進 Let’s Encrypt 的安裝。

因此,為您的網站創建一個文件夾。在這種情況下,創建一個目錄 linuxtechgeek.info 這是我的域名,指向我的網絡服務器的 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 實驗室中運行 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’sEncrypt SSL 證書保護您的 Apache Web 服務器。



Source link