通過4年的學習,咱們終於畢業了。代表咱們畢業的東西除了不少不少以外,其中一個就是咱們有了一個紅色的小本本-畢業證。在咱們面試工做的時候,咱們就會把畢業證展現給對方,並加上一句,你不相信個人能力,可是你應該相信這個學校吧。因而,他點點頭說,你畢業於這所名牌學校,應該能力能夠,那就接受你吧,因而咱們就開始工做了。另一個例子就是:還有許多我的和企業都信任合法的駕駛證或護照。這是由於他們都信任頒發這些證件的同一機構--政府,於是他們也就信任這些證件。web
現實生活中的證書就是這樣用的。面試
在計算機的世界裏,也存在這個相似的機制,服務器爲了告訴對方本身的合法身份,也會把本身的證書給對方看,對方由於信任給你證書的這個機構,從而也信任了服務器的身份。固然了計算機世界的證書的做用遠不止這些,咱們用得不少的還有什麼加密之類的東西,若是我在這裏提什麼一大堆的公鑰私鑰,估計大夥都要睡覺去了。咱們就通俗簡單一點來描述一下,由於搞清楚這些仍是比較重要的。算法
咱們先從給服務器證書的這個機構也成爲認證中心-CA,CA通常都是商業機構,他們只要給你們的服務器發發證書就能夠賺大錢,由於這樣的證書價格還不是很便宜的。爲何他們能夠這樣來賺錢,主要緣由仍是他們有一項核心技術,那就是加密算法。不少人都知道證書是能夠拿來加解密的,可是怎麼進行加解密還得從這個公鑰和私鑰提及來,顧名思義公鑰就是能夠公開的,私鑰就是不能公開的。咱們花了錢從CA那裏買來了裏面包含有公鑰和私鑰的證書,別人來訪問的時候,就會收到服務器發給它的數字證書,經過這個數字證書用戶就會收到公鑰,之後用戶發過來的數據就用剛纔得到的公鑰進行加密,當加密後的數據傳到服務器上的時候,服務器就會用對應的私鑰進行解密,從而才能看到真正的內容。經過這裏咱們就知道了,若是用公鑰加密,那麼就要用私鑰加密,反過來若是用私鑰加密,那麼就要用公鑰加密。shell
有的企業爲了省錢,採用Windows server上的CA功能來給服務器頒發證書,這個CA咱們叫作企業內部根CA,它所頒發的證書成爲爲內部證書,這些證書都有一個特色,就是它們都和這個根CA公鑰鏈接在一塊兒來辨識企業在管理證書的層級。爲了達到認識到這個證書的目的,咱們同時也須要把根CA的公鑰也到發送到相關的客戶機計算機上,這個過程也成爲導根證書。若是這個計算機在域裏面的話,就能夠不用進行根證書的導入工做了。服務器
在加密協議上你們之前熟知的由Netscape公司發明的SSL,如今有了一個更新成爲TLS。TLS是由RFC 5246所定義的。SSL和TLS倆都是工做在傳輸層之上,使用了異步加密算法。TLS的特色主要是:異步
上面說的這一整套系統有一個專門的術語:稱爲PKI-公鑰基礎設施。ide
關於證書,咱們就聊這麼多,下面咱們聊聊LYNC相關的證書問題。學習
微軟倡導一個可信賴的計算平臺,因此之前OCS的TCP登陸就沒有延續到LYNC,如今LYNC客戶端到LYNC服務器之間的通信所有采用了TLS的傳輸層加密的方式進行傳輸。按照上面所描述的,當一個客戶端開始登陸服務器的時候,LYNC服務器在把數字證書發個客戶端的時候,客戶端會檢查證書上的這個這個名字是否正確,若是正確,那麼纔會繼續,若是不正確,那就會彈出一個窗口上,提示用戶驗證證書錯誤。因此咱們須要爲LYNC服務器配置對正確的服務器證書。網站
須要說明的是在LYNC環境下,標準版和企業版是不同的,若是是標準版,那麼證書上的subject name就要是改服務器的FQDN,也就是計算機名+域名。若是是企業版,那麼就是池名+域名。this
咱們先說說怎麼爲服務器申請證書,申請證書有兩種方式,一種是經過圖形界面,這個比較直觀和簡單;另一個就是經過powershell了,這個操做起來相對複雜,可是功能比較強大。初次使用的話,建議使用圖形界面。
我下面的例子是企業版本的,其中池的名字是pool.lyncpbx.net
申請證書算是最後的步驟了,因此前面的安裝步驟須要完成。
經過展開Default certificate咱們能夠能夠看到,如今是三個對象須要證書,可是如今都尚未呢。咱們點擊Request開始
沒有什麼好說的,點擊NEXT
因爲咱們使用內部CA,而且LYNC服務器能夠直接訪問到,因此選擇當即發送,若是不能訪問的CA,那麼可使用下面的選項,這個選項會產生一個證書申請文件,咱們能夠copy到能夠訪問CA的計算機上進行提交。
LYNC服務器已經找到了CA,怎麼找到了,由於CA早就把本身的信息發佈到活動目錄中了。
若是當前用戶不能訪問CA,那麼須要提供能夠訪問CA的帳號。
缺省狀況下,LYNC將使用CA服務器上的webserver模板,若是你想用其它模板,那麼也能夠指定其它模板。
輸入一個友好名字,這個名字有什麼用,當證書不少的時候,咱們能夠容易的找到它。注意下面個「標記私鑰爲可導出」選項。
輸入相關信息,應該很容易。
這個惟一重要的就是國家了,其它就能夠隨意了。
這裏就會涉及到Subject Name 和Subect Altername Name(SAN),這個也是圖形界面方便的地方了,它會自動的幫咱們把這個值填好。
選擇好SIP域,而後下一步,若是AD的域名和SIP域名稱不同的話,這裏的選擇就會不同了。
上面的SAN名,已經夠了,因此這裏直接下一部。
一切就緒,下一步開始申請。
已經成功,下一步
點擊查看證書看看
這裏咱們看到的那個頒發給後面的值就是Subject Name了,並且有一個小鑰匙說明了咱們有一個私鑰哦。
這裏的這個CN值也是咱們的Subject Name
這裏的全部信息都是SAN名字。
提到TLS的時候,咱們說到客戶端可能回到CA去檢查這個證書知否有效,這裏就是它去檢查的路徑。具體的方法就是,從那裏下載一個CRL(證書撤銷列表),若是裏面有這個服務器的信息,那麼就說明了這個證書是無效的。
點擊完成,會彈出指派證書界面,經過這一步,咱們會把剛纔申請到證書指派到相應的LYNC角色上。
簡單瀏覽一下上面的信息,而後點擊下一步
點擊完成。
展開Default certificate,咱們看到三個角色都已經被指派上了證書,證書過程已經完成,是否是很簡單的方便。
下面咱們介紹一下命令行操做。
申請證書的命令:
Request-CSCertificate -New -Type Default,WebServicesInternal,WebServicesExternal -CA "DC.lyncpbx.net\LYNCPBX CA" -Country CN -State "Beijing" -City "Beijing" -FriendlyName "LYNC server Certificate" -KeySize 2048 -PrivateKeyExportable $False -Organization "LYNC CORP" -OU "IT Detp" -DomainName "sip.lyncpbx.net" -Verbose
申請道的證書,咱們須要記下Thumbprint值,而後填入到指派證書的命令中,若是忘記了?那就使用下面這個命令查看吧。
Get-ChildItem cert:\localmachine\my
指派證書:
Set-CSCertificate -Type Default,WebServicesInternal,WebServicesExternal -Thumbprint 01641FD63E665541E13727853C0E5DF76A11C988 -Verbose -Confirm:$false
要檢查一下指派好了沒有?使用Get-Cscertificate就搞定了
若是要刪除這個證書,直接用下面的命令就OK了。
Remove-CSCertificate -Type Default,WebServicesInternal,WebServicesExternal -Force –Verbose
這裏我留一個問題給你們,咱們看到剛纔的證書上面的有效期是2年,若是我想要一個3年的證書呢?你們能夠想一想怎麼弄。
TLS不能被破解?答案是NO。若是你們想破解TLS的話,也不是不可能的,只要有了服務器的證書,那麼破解TLS也是能夠的,利用WireSharK就能夠作到,不過這個已經超過本文的範圍了,你們能夠到Citrix網站上去看看方法,具體的地址是:http://support.citrix.com/article/CTX116557 之後要是有空,咱們也來弄一次看看。