2014-10-28 131 views
7

我做了使用這個命令在我的服務器證書:我的SSL證書不被信任

sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/ssl/apache.key -out /etc/apache2/ssl/apache.crt 

,並配置好了一切正確的辯論,因爲我的網站是繳費時輸入https除了HTTP。但是,有一個問題。我的證書不受信任。

火狐提示:

sec_error_untrusted_issuer 

和Chrome:

NET::ERR_CERT_AUTHORITY_INVALID 

還有什麼能讓我的證書信任的方法嗎?所以錯誤不會發生?

因爲我可以接受風險並轉發到該網站,但那對於通過https訪問我的網站的人來說看起來並不好。

+1

您需要從信任的認證中心(CA)購買一個... – arco444 2014-10-28 17:44:58

回答

10

Firefox:導航到https頁面。底部有一個選項「我瞭解風險」。放大本節和「添加例外」。

Chrome:這有點困難。您必須將網絡服務器提供的證書保存在文件系統中,然後將證書導入Chrome。設置 - >高級設置 - > HTTPS/SSL - >管理證書 - >服務器 - >導入。

如果您希望外部人員能夠使用您的站點,您需要獲得證書頒發機構簽署的證書。然後你在你的web服務器上使用這個簽名證書。

+1

這仍然不適用於Chrome。 Chrome現在爲我的發展而死了。 – Amalgovinus 2015-08-05 22:25:09

3

證書頒發機構(頒發證書的人)需要被瀏覽器信任。自簽名證書默認情況下不受信任。因此,證書需要由用戶手動接受,這不是最重要的,而在Chrome中奇怪的是非常困難。

對於管理員區域,只處理專業用戶,這不是問題,但對於大衆來說,這是不可預料的。

如果你有自己的IP地址,這並不難,因爲像startssl這樣的地方有免費的證書,像gandi.net這樣的註冊商也提供1年的免費證書。

如果您與其他人共享IP地址,則會有多個客戶端無法有效導航(因爲IP上只有一個SSL偵聽器)。 Windows XP(所有瀏覽器),Android 2.x和Blackberry 7.x不支持包含域名的SSL協商擴展。

注意 - 現在是2017年8月,許多更少的設備不支持SNI,並且免費(並且相當容易使用)LetsEncrypt SSL certificates