博客 / 詳情

返回

什麼是 OpenSSL?OpenSSL 如何工作?

正確實施 SSL 對網站的安全和成功至關重要。而且,由於許多網站所有者都是第一次瞭解 SSL,因此為他們配備所有必要的工具和實用程序至關重要。OpenSSL 就是這樣一種工具。那麼,什麼是 OpenSSL?為什麼它如此重要?

以下指南涵蓋了此實用實用程序的各個方面,包括如何使用 OpenSSL和各種OpenSSL 命令進行輕鬆高效的 SSL 管理。

什麼是 OpenSSL?

OpenSSL是一個開源軟件庫和命令行工具,用於實現安全通信的SSL和TLS協議。它提供加密功能,例如生成密鑰和證書、加密數據和驗證證書,使其成為互聯網安全和服務器管理的必備工​​具。

OpenSSL 用於什麼?

OpenSSL 是一個開源命令行工具,用於生成 CSR和私鑰、安裝 SSL 文件、合併和轉換證書為不同的 SSL 格式、驗證證書詳細信息以及解決問題。它在管理和保護 SSL/TLS 實施方面發揮着至關重要的作用。

要在您的網站上安裝 SSL 證書,您必須遵循一些強制性步驟,這些步驟對於任何服務器或電子郵件客户端都是相同的。當您沒有 Web 控制面板或想要簡化整個過程時,OpenSSL 特別方便。

由於並非所有服務器都提供用於 SSL 管理的 Web 用户界面,因此在某些平台上,OpenSSL 是導入和配置證書的唯一解決方案。

如何使用 OpenSSL

OpenSSL 的全部內容都是命令行。您所要做的就是學習一些常用的 OpenSSL 命令,隨着每個新證書的出現,配置過程將變得更快、更輕鬆。

OpenSSL 於 1998 年首次發佈,適用於 Linux、Windows、macOS 和 BSD 系統。大多數 Linux 發行版都預編譯了 OpenSSL。

如何檢查 Linux 上是否安裝了 OpenSSL?

要檢查您的 Linux 系統上是否安裝了 OpenSSL,請使用以下命令。

對於使用 rpm 包的 GNU/Linux 發行版:

rpm -qa | grep -i openssl

對於使用 deb 包的 GNU/Linux 發行版:

dpkg -l | grep -i openssl

對於 Arch Linux 使用:

pacman -Q openssl

如何在 Windows 上使用 OpenSSL?

如果您使用的是 Windows 系統,您可以從這裏下載 OpenSSL。

默認安裝將在 C 盤上為該程序創建一個目錄 -C:\OpenSSL-Win32

要運行該程序,請轉到C:\OpenSSL-Win32\bin\目錄並雙擊openssl.exe文件。將打開一個帶有OpenSSL>提示符的文本窗口。

在此提示符下輸入您需要的 OpenSSL 命令。您生成的文件將位於同一目錄中。Windows 的 OpenSSL 命令與 Linux 服務器上使用的命令相同。

常用 OpenSSL 命令

下面我們為普通用户整理了一些常用的 OpenSSL 命令。您可以隨時使用它們來生成或管理證書。

檢查 OpenSSL 版本

瞭解您擁有的 OpenSSL 版本至關重要,因為它決定了您可以使用哪些加密算法和協議。您可以通過運行以下命令來檢查您的 OpenSSL 版本:

openssl version –a

使用 OpenSSL 生成 CSR

您可以使用 OpenSSL 創建CSR(證書籤名請求)代碼。運行以下命令生成 CSR:

openssl req -new -key yourdomain.key -out yourdomain.csr

您還可以藉助–subj開關在命令行內提交您的信息。

此命令將禁用問題提示:

openssl req -new -key yourdomain.key -out yourdomain.csr -subj "/C=US/ST=CA/L=San Francisco/O=Your Company, Inc./OU=IT/CN=yourdomain.com"

或者,您可以通過CSR 生成器工具創建 CSR 。

使用 OpenSSL 生成私鑰

要生成私鑰,您需要指定密鑰算法、密鑰大小和可選密碼。標準密鑰算法是 RSA,但您也可以針對特定情況選擇 ECDSA。選擇密鑰算法時,請確保不會遇到兼容性問題。在本文中,我們僅展示如何通過 RSA 算法生成私鑰。

對於密鑰大小,使用 RSA 密鑰算法時應選擇 2048 位,使用 ECDSA 算法時應選擇 256 位。任何低於 2048 的密鑰大小都不安全,而更高的值可能會降低性能。

最後,你應該決定是否需要為你的私鑰設置密碼。請注意,某些服務器不接受帶有密碼的私鑰。

準備好生成私鑰(使用 RSA 算法)後,運行以下命令:

openssl genrsa -out yourdomain.key 2048

此命令將在您的當前目錄中創建yourdomain.key文件。您的私鑰將採用PEM格式。

使用 OpenSSL 查看私鑰信息

您可以通過以下命令查看私鑰的編碼內容:

cat yourdomain.key

使用 OpenSSL 解碼私鑰

要解碼您的私鑰,請運行以下命令:

openssl rsa -text -in yourdomain.key -noout

使用 OpenSSL 提取公鑰

要從私鑰中提取公鑰,請使用以下命令:

openssl rsa -in yourdomain.key -pubout -out yourdomain_public.key

使用 OpenSSL 立即創建您的私鑰和 CSR

OpenSSL 功能非常多樣,還有一個命令可以生成私鑰和 CSR:

openssl req -out yourdomain.csr -new -newkey rsa:2048 -nodes -keyout yourdomain.key

此命令生成沒有密碼的私鑰(-keyout yourdomain.key)和 CSR 代碼(out yourdomain.csr)。

使用 OpenSSL 檢查 CSR 信息

為了確保在向 CA 提交 CSR 之前提供了正確的信息,請運行以下命令:

openssl req -text -in yourdomain.csr -noout –verify

將 CSR 發送給 CA

運行以下命令,查看並複製CSR的全部內容:

cat yourdomain.csr

確保包含—–BEGIN CERTIFICATE REQUEST—–和—–END CERTIFICATE REQUEST—標籤,並將所有內容粘貼到 SSL 供應商的訂單中。

在 OpenSSL 中檢查證書

在您的 CA 將 SSL 證書發送到您的收件箱後,請運行以下命令以確保證書的信息與您的私鑰匹配。

openssl x509 -text -in yourdomain.crt –noout

這就是我們常見的 OpenSSL 命令列表。如果您願意,可以研究所有 OpenSSL 命令。

user avatar
0 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.