關于自簽署SSL證書的那些事
在第三方提供的SSL證書出現問題后,我們會不解為什么自己對這些供應商如此信任。我們允許他們為我們的網站處理和生成受信任證書,但***即便是谷歌,微軟這樣的巨頭都不幸淪為受害者。
我們通常都被告知SSL證書只有在受信任機構發布和簽署的情況下才是安全的,而且我們不應該使用自簽署證書,除非是有限制的內部使用或是用于測試。我們會對在產品環境中部署自簽署證書而瘋狂。
這是這個逐利行業所酷愛的事情嗎?考慮一下:如果你了解發布安全密鑰的個人或實體,你會更相信他們嗎?通常答案是肯定的,或至少是比較有可能的。現在,如果你是發布證書的人,你會信任一個不熟悉的人嗎?如果是你一點都不了解的人呢?
既然如此,如果證書的部署恰當且安全,那為什么還要懷疑自簽署證書呢?如果部署不當,自簽署證書就會帶來更大威脅,但是,如果部署得當,就會帶來更多安全性。
受信任證書機構(CA)發布的證書之所以被認為是受信任是從幾個標準來衡量的。首先,他們為了瀏覽器供應商來驗證所簽署證書的機會。這意味著如果你的證書是由這些受信任CA簽署,那么你的瀏覽器就不會在使用它的網頁上停止,只要包含在證書中的信息是準確且與所訪問站點是匹配的,這個證書的安裝就是起保護作用。
通常個人和企業利用SSL證書來保護網頁或Web應用中的信息。這些應用都指向內部和外部用戶,主要取決于證書所在網站的屬性。如果你打算遵循自簽署證書的使用之道,那么***件必須做的事情就是確保架構本身是安全的。如果你不能保護內部CA服務器的安全,那就比別人強不了多少。這就像是建造一座地基不牢的房子一樣。如果你的地基不穩,那么房子可能隨時會倒。
下一步,不要用其他任何功能重新定位你的證書服務器。還必須對要簽發SSL證書的服務器進行保護,這樣你才不會淪為統計員。對要在環境中簽署所有SSL證書的CA根證書進行合適部署也至關重要,因為這樣可以確保SSL部署的安全性。如果有人想盜取你的CA根證書,那么你的部署就形同虛設。
所以要確保你的服務器處于最安全的位置。推薦你講服務器放在有視頻監控的地方,而且要鎖在服務器箱子里。對服務器所在地的要進行最嚴格的準入制度。而且不使用的時候,也建議關閉服務器電源。
現在,來看看最難的部分:客戶端的合理部署。你需要為所有要連接到你網站的用戶部署公共根證書,這樣他們才不會接收到證書不被信任的信息。可以在大多數瀏覽器中手動完成此操作,某些瀏覽器中還可以自動完成。
為了讓你發布的證書受信任,你需要把根服務器的公共證書部署到要對你的安全站點進行訪問的工作基站瀏覽器中。這樣一來,當用戶試圖訪問使用根CA簽署的SSL證書的站點時,瀏覽器會信任它們。
有知名度的SSL供應商可能希望你將這些操作看做是很難的。雖然這一進程是乏味而單調的,但它并非像腦科手術那樣復雜。它是完全可以實現的,例如,在IE中通過ActiveDirectory中的群策略對象,Firefox和Safari系統需要更多工作,但是仍然是可以完成的。你只需要計劃好每三到五年進行一次更新。與安全相比這種代價其實不大。
在終端保留CA服務器和SSL證書的管理間接費用要高一些,但是換種思維方式:這種模式可以讓你完全控制自己的環境。你可以提前撤銷可疑證書。你可以隨時重新發布新證書。在較大的環境中,其優勢明顯大于劣勢。
***,你要規劃出企業或個人需求,而且要了解你需要從SSL部署中獲得什么。列出正式SSL的安全需求以及架構的加密計劃。確保所有的操作都與目標一致,確保你能承擔所選項帶來的風險。畢竟,作為個人或公司,我們不能只是抗議和抱怨,因為我們選擇了讓陌生人持有CA,***只會將自己暴露給不法之徒。