在Linux上生成SSL證書(shū)的步驟
海外云服務(wù)器 40個(gè)地區可選 亞太云服務(wù)器 香港 日本 韓國
云虛擬主機 個(gè)人和企業(yè)網(wǎng)站的理想選擇 俄羅斯電商外貿虛擬主機 贈送SSL證書(shū)
美國云虛擬主機 助力出海企業(yè)低成本上云 WAF網(wǎng)站防火墻 為您的業(yè)務(wù)網(wǎng)站保駕護航
要在Linux系統上生成SSL證書(shū),首先需要安裝OpenSSL。然后使用openssl req -new -newkey rsa:2048 -nodes -out cert.csr
命令來(lái)創(chuàng )建一個(gè)CSR(證書(shū)簽名請求)。通過(guò)發(fā)送CSR到CA(認證機構)以獲取CA簽發(fā)的證書(shū)。將CA簽發(fā)的證書(shū)和私鑰組合成最終的SSL證書(shū)文件。確保遵循安全的最佳實(shí)踐,并妥善管理您的證書(shū)密鑰。
在現代互聯(lián)網(wǎng)環(huán)境中,HTTPS(HTTP over SSL)已成為標準的通信協(xié)議,為了確保數據的安全傳輸和保護用戶(hù)隱私,網(wǎng)站需要一個(gè)有效的SSL證書(shū),本文將介紹如何在Linux系統上生成SSL證書(shū),包括自簽名證書(shū)和經(jīng)過(guò)受信任CA簽發(fā)的證書(shū)。
一、生成自簽名證書(shū)
自簽名證書(shū)是由服務(wù)器自己創(chuàng )建,并由其私鑰簽署的,這種方式的優(yōu)點(diǎn)在于不需要依賴(lài)外部CA,但缺點(diǎn)是不被瀏覽器和大多數軟件所接受,在生產(chǎn)環(huán)境中通常不會(huì )推薦使用自簽名證書(shū),除非你是在進(jìn)行內部測試或臨時(shí)環(huán)境下的開(kāi)發(fā)。
步驟1: 安裝必要的工具
我們需要安裝一些用于SSL證書(shū)管理的工具,如openssl
和letsencrypt-cli
。
sudo apt-get update sudo apt-get install openssl letsencrypt
步驟2: 創(chuàng )建SSL配置文件
在當前目錄下創(chuàng )建一個(gè)新的目錄來(lái)存放SSL證書(shū)和密鑰文件。
mkdir sslcerts cd sslcerts
創(chuàng )建兩個(gè)文件:private.key
和fullchain.pem
。
touch private.key echo "Your server's public key goes here" > fullchain.pem chmod 400 private.key chmod 444 fullchain.pem
步驟3: 生成SSL證書(shū)
現在我們可以使用openssl
命令生成SSL證書(shū)。
openssl req -newkey rsa:4096 -nodes -out private.key -keyout private.key -x509 -days 365 -subj "/C=US/ST=California/L=San Francisco/O=Example Inc/CN=localhost"
解釋?zhuān)?/p>
-newkey rsa:4096
: 生成一個(gè)RSA密鑰對,大小為4096位。
-nodes
: 不包含密碼。
-out private.key
: 輸出私鑰到private.key
文件中。
-keyout private.key
: 指定輸出私鑰的位置。
-x509
: 生成X.509格式的證書(shū)。
-days 365
: 有效期為一年。
-subj "/C=US/ST=California/L=San Francisco/O=Example Inc/CN=localhost"
: 設置證書(shū)的公共名稱(chēng)(CN)為本地主機名。
執行上述命令后,你會(huì )得到一個(gè)私鑰文件和一個(gè)完整的證書(shū)文件,這個(gè)過(guò)程也被稱(chēng)為“手工”生成,因為沒(méi)有依賴(lài)任何外部CA。
二、使用Let’s Encrypt生成SSL證書(shū)
Let’s Encrypt是一個(gè)開(kāi)源的項目,提供免費且自動(dòng)化的SSL/TLS證書(shū)服務(wù),這使得在大多數Linux系統上部署SSL證書(shū)變得更加容易。
步驟1: 配置Let’s Encrypt
你需要獲取Let’s Encrypt的客戶(hù)端證書(shū)和密鑰。
sudo mkdir /etc/letsencrypt sudo chmod 700 /etc/letsencrypt sudo cp /usr/share/doc/letsencrypt/examples/acme.sh /etc/
步驟2: 運行acme.sh腳本
編輯acme.sh腳本以添加你的域名。
nano /etc/acme.sh/config.sample.yaml
在config.yaml
文件中添加你的域名:
domains: example.com pathspec: - /.well-known/acme-challenge/<your_challenge_file>
替換example.com
為你想要使用的域名,然后保存并退出編輯器。
步驟3: 啟動(dòng)Let’s Encrypt代理
使用以下命令啟動(dòng)Let’s Encrypt代理:
sudo acme.sh --issue -d yourdomain.com
其中yourdomain.com
是你之前在config.yaml
文件中的域名。
步驟4: 更新DNS記錄
讓Let’s Encrypt知道你的域已啟用。
sudo acme.sh --installcert -d yourdomain.com --dns dnsimple --force
這里假設你使用的是DNSimple作為DNS提供商,根據你的DNS提供商的不同,可能需要調整命令參數。
步驟5: 檢查證書(shū)狀態(tài)
檢查你的證書(shū)是否已經(jīng)成功安裝:
sudo acme.sh --status -d yourdomain.com
如果一切順利,你應該會(huì )看到一條消息表示證書(shū)安裝成功。
通過(guò)以上步驟,你可以在Linux系統上輕松生成和安裝SSL證書(shū),無(wú)論你是出于測試目的還是生產(chǎn)環(huán)境需求,Let’s Encrypt都提供了簡(jiǎn)單易用的方法來(lái)確保你的網(wǎng)站安全可靠地運行。
掃描二維碼推送至手機訪(fǎng)問(wèn)。
版權聲明:本文由特網(wǎng)科技發(fā)布,如需轉載請注明出處。