濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > CentOS下生成自簽名的證書的方法詳解

CentOS下生成自簽名的證書的方法詳解

熱門標(biāo)簽:怎樣在北斗地圖標(biāo)注商戶 辦理400電話的好處都有哪些 仙桃外呼系統(tǒng) 貴港便宜外呼系統(tǒng)報(bào)價(jià) 400外呼系統(tǒng) 配置要求 廣州點(diǎn)撥外呼系統(tǒng)多少錢一個(gè)月 電話外呼系統(tǒng)解決方案 日立hgp外呼線路圖 太原外呼電銷機(jī)器人軟件

1. 生成自簽名的證書

通常要配置 https 的服務(wù)器,都需要一個(gè)由正式的 CA 機(jī)構(gòu)認(rèn)證的 X509 證書。當(dāng)客戶端連接 https 服務(wù)器時(shí),會(huì)通過(guò) CA 的共鑰來(lái)檢查這個(gè)證書的正確性。但要獲得 CA 的證書是一件很麻煩的事情,而且還要花費(fèi)一定的費(fèi)用。因此通常一些小的機(jī)構(gòu)會(huì)是使用自簽名的證書。也就是自己做 CA,給自己的服務(wù)器證書簽名。

這個(gè)過(guò)程有兩個(gè)主要的步驟,首先是生成自己的 CA 證書,然后再生成各個(gè)服務(wù)器的證書并為它們簽名。 我是用 OpenSSL 來(lái)生成自簽名證書的。

第一步是制作 CA 的證書:

openssl genrsa -des3 -out my-ca.key 2048

openssl req -new -x509 -days 3650 -key my-ca.key -out my-ca.crt

這會(huì)生成 my-ca.key 和 my-ca.crt 文件,前者存放著使用 my-ca.crt 制作簽名時(shí)必須的密鑰,應(yīng)當(dāng)妥善保管。而后者是可以公開的。上面的命令為 my-ca.key 設(shè)定的有效期為 10 年。

用命令

openssl x509 -in my-ca.crt -text -noout

可以查看 my-ca.crt 文件的內(nèi)容。

有了 CA 證書之后,就可以為自己的服務(wù)器生成證書了:

openssl genrsa -des3 -out mars-server.key 1024

openssl req -new -key mars-server.key -out mars-server.csr

openssl x509 -req -in mars-server.csr -out mars-server.crt -sha1 -CA my-ca.crt -CAkey my-ca.key -CAcreateserial -days 3650

前兩個(gè)命令會(huì)生成 key、csr 文件,最后一個(gè)命令則通過(guò) my-ca.crt 為 mars-server.csr 制作了 x509 的簽名證書。

需要注意的是,在執(zhí)行上述第二個(gè)命令時(shí),Common Name 選項(xiàng)應(yīng)當(dāng)輸入的是服務(wù)器的域名,否則在用戶通過(guò) https 協(xié)議訪問(wèn)時(shí)每次都會(huì)有額外的提示信息。

用命令

openssl x509 -in mars-server.crt -text -noout

可以查看 mars-server.crt 文件的內(nèi)容。

2. 配置 Apache 服務(wù)器

首先,創(chuàng)建 /etc/apache2/ssl 目錄,將剛剛制作的 my-ca.crt、mars-server.key 和 mars-server.crt 文件拷貝到這個(gè)目錄中。

接著執(zhí)行命令

a2emod ssl

激活 Apache 的 SSL 模塊,然后在 /etc/apache2/sites-enable/ 中添加虛擬主機(jī),這個(gè)過(guò)程與添加普通的虛擬主機(jī)類似,不同點(diǎn)在于該主機(jī)的端口應(yīng)為 443。配置如下:

NameVirtualHost *:443

VirtualHost *:443>

ServerName localhost

DocumentRoot /var/www

SSLEngine On

SSLCipherSuite HIGH:MEDIUM

SSLProtocol all -SSLv2

SSLCertificateFile /etc/apache2/ssl/mars-server.crt

SSLCertificateKeyFile /etc/apache2/ssl/mars-server.key

SSLCACertificateFile /etc/apache2/ssl/my-ca.crt

Directory /var/www>

   Order deny,allow

   Allow from localhost

/Directory>

/VirtualHost>

VirtualHost *:80>

ServerName localhost

DocumentRoot /var/www

Directory /var/www>    Order deny,allow

   Allow from localhost

/Directory>

/VirtualHost>

以上配置保證了用戶在訪問(wèn) 443 和 80 端口時(shí)可以看到相同的內(nèi)容,而僅僅是使用的協(xié)議不同。修改好配置后,便可以重啟 Apache 服務(wù)器,這時(shí)需要輸入 mars-server.key 的密碼。用瀏覽器訪問(wèn)

https://localhost/

這時(shí)應(yīng)當(dāng)看到一個(gè)彈出對(duì)話框,讓你確認(rèn)是否信任該站點(diǎn)的證書,選擇信任后,便可以查看該站點(diǎn)的內(nèi)容了。

由于大多數(shù) Apache 服務(wù)器都是在服務(wù)器啟動(dòng)時(shí)自動(dòng)啟動(dòng),為了避免在啟動(dòng) Apache 時(shí)輸入密碼,可以用以下命令生成不加密的 mars-server.key 文件:

openssl rsa -in mars-server.key -out mars-server.key.insecure

用新生成的 mars-server.key.insecure 代替原有的 key 文件即可。

標(biāo)簽:雅安 六盤水 河源 公主嶺 商丘 青島 麗水 廣安

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《CentOS下生成自簽名的證書的方法詳解》,本文關(guān)鍵詞  CentOS,下,生成,自,簽名,的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《CentOS下生成自簽名的證書的方法詳解》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于CentOS下生成自簽名的證書的方法詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    新宁县| 虎林市| 伊宁市| 永川市| 灵石县| 外汇| 尤溪县| 辽中县| 师宗县| 北宁市| 陇西县| 盐池县| 隆尧县| 平泉县| 万载县| 济源市| 汝城县| 大余县| 郁南县| 无为县| 海伦市| 阳城县| 虎林市| 遂平县| 莲花县| 青神县| 固安县| 伊金霍洛旗| 郎溪县| 浏阳市| 无为县| 榆树市| 成武县| 宜黄县| 岳普湖县| 景谷| 木兰县| 石棉县| 文山县| 周宁县| 林甸县|