如何在企業內部建置Direct Access環境(2)-建置PKI環境

DirectAccess最主要的功能來自於CA憑證的驗證,因此在PKI架構的需求會有相當的大量設定值,這個部份可以直接透過下面的範例一步一步的完成。※PS. DirectAccess在DC上新增完成CA的安裝後,才可以將DirectAccess Server加入網域之下。看來本篇開太大了,至少要連載個n篇,不花個兩三個小時來試試看,恐怕很難處理了,當然,我們先把主要的DC環境建置好了之後…

DirectAccess最主要的功能來自於CA憑證的驗證,因此在PKI架構的需求會有相當的大量設定值,這個部份可以直接透過下面的範例一步一步的完成。 
※PS. DirectAccess在DC上新增完成CA的安裝後,才可以將DirectAccess Server加入網域之下。

建置步驟

看來本篇開太大了,至少要連載個n篇,不花個兩三個小時來試試看,恐怕很難處理了,當然,我們先把主要的DC環境建置好了之後,接下來就只需要把重心放在建置Direct Access Server之上,不過,在此之前,必須先,下面就是開始的三小時建置之路了,請各位看官準備看戲囉!!!

※PS.在設定DC加上DC CA之前,先設定好網路TCP/IP的DNS尾碼,而在本例中,是以 Jason.local為DNS尾碼。

DC的設定

 

建置企業Root CA(於CA伺服器)

 

首先必須先在DC上建置AD CS(Active Directory Certificate Services),主要的用意就是要建置PKI的主體架構,首先在DC的角色上,新增AD CS服務。
1

新增角色時會向你說明相關必須注意的部份,您可直接點選下一步即可。

 2

接下來請在DC伺服器上新增「Active Directory憑證服務」點選下一步。

3

說明事項很少人看吧!在AD CS角色中可以提供安全無線網路、VPN、IPSec、NAP…等,有看到了吧!還是瞄一下吧!不然連你自已在裝啥東西都不知道。

4

本步驟,只需要先選擇「憑證授權單位」,接下來要建置CA站台時,再來設定安裝CA WEB平台即可,當然,若您不想麻煩,可以安裝好IIS再來安裝CA伺服器即可。

5

本步驟主要是選擇是否透過AD架構來進行Client的管理,而比較重要的是接下來我們在Direct Access中可以透過GPO方便管理,因此選擇使用企業級的CA。

 6

CA有信賴的機制,如果是主AD下就選擇Root CA可以自行簽署發行憑證,當然我們如果是分公司的話,又是在子網域之下,要建置Direct Access就要選擇次級的CA。

7

如果之前曾經有建置過CA,而且已經有現成的架構,而且有備份私鑰的話,就可以選擇現有的私密金鑰,但若是一個乾淨的環境就選擇建立新的私密金鑰。

8

在公開金鑰的架構之下,私鑰與公鑰有著絕對的關連性,尤其是在加、解密的過程中,選擇一個好的加密法是很重要的,雖然說SHA只是雜湊演算法,但是還是有其密文長度,Jason在k書筆記本中有寫過SHA1(雜湊長度160Bits)與MD5(雜湊長度128Bits)相比,但是因為SHA1早就有工具可以達成僅知密文攻擊法,因此建議選擇使用SHA256以上的加密法,但考量到有效能的問題,因此Jason選擇SHA 256,並且選擇2048Bits的金鑰長度。(話說到加密演算法,最近的新聞是RSA 768也遭破解了!)

9

接下來在CA的名稱的部份,若沒有特別的需求,則直接以建議的名稱為主即可。

10

依照一般的CA有效期間5年即可。

 11

接下來是憑證的活動Log,一樣可以預設值即可,除非有考慮到C槽的空間不足,則會建議再另外存放。

 12

最後看一下總覽吧!其中有特別說明到,一但CA發佈出來,電腦名稱及網域名稱就不可以再變更了,不然會出現重大的錯誤。

 13

最後直接點選完成即可。

14

 

建置憑證範本(於CA伺服器)

完成以後,我們則必須再建置一個新的憑證範本,以供這些Direct Access的使用者使用,首先必須先在CA上建立一個憑證範本,首先於「執行」中輸入「MMC」,在啟動MMC主控台後,於工能列上的「檔案」->「移除/歃入式管理單元」,選擇「憑證範本」,並點下「新增」按鈕。

15

首先要先發佈的CA是屬於網頁伺服器憑證,因此直接於「網頁伺服器」上按右鍵「複製範本」。

16

並選擇範本的版本數為「Windows Server 2008 Enterprise」

 17

接下來請給這張憑證一個名字,在本例中,我是以「DAC Templates」做為顯示名稱。

18

接下來切換到安全性後,將Authenticated Users群組設定可註冊憑證的權限。

19

完成後,再加入使用權限,請直接於上圖中點選「Domain Computers」

20

接下來請在Domain computers指定權限具有註冊程序,並切換至「處理需求」,為了可被備份的目的,因此加入允許匯出秘密金鑰。

 21 22

 

設定憑證發佈的信任及屬性(於CA伺服器)

在上一個步驟中已經設定好了要指定給Direct Access伺服器的憑證,及設定好做為Direct Access發送憑證的私鑰,那麼現在這個階段,就要開始設定憑證發佈的信任,以及相關的設定了,首先在開始列中展開系統管理工具,選擇「憑證授權單位」。

 24

並且於「憑證範本」的區域中點選右鍵,選擇「新增」->「要發出的憑證範本」

25

在欲啟用的範本中選擇剛剛建立好的範本「DAC Templates」

26

完成後如下圖,會在憑證範本裡面看到這個我們所建置的範本。

未命名 - 1

接下來我們就開始設定憑證發佈點,為了使我們建置的Direct Access可以自動的發放憑證,

27

在憑證伺服器的內容中,點選新增,以增加憑證發放的站點,在此要先想好,在憑證的發放點中,必須考慮到最後我們在發放憑證的伺服器上要叫什麼網域名稱,以及發放憑證的伺服器透過內部網站做發佈等等的名稱。

未命名 - 2

在本例中,先建置乙組以網路芳鄰做為發散點(\\DA-Svr\crldist,為使資料夾不被其它使用者看見,因此我們在這個路徑中加上$以避免其它使用者直接可以檢視到),因此於位置處輸入電腦名稱部份輸入\\DA-Svr\Crldist$\,並且於變數中插入<CAName>. <CRLNameSuffix>, <DeltaCRLAllowed>,最後在路徑上加上”.crl”的附檔名,完成本項設定之後,按下確定。

30

完成上項設定後,必須再勾核「在這個位置發佈CRL」及「發佈Delta CRL到這個位置」,完成後即可按下確定以發佈相關的憑證廢止清冊設定。
※CRL是Certificate Revocation List的縮寫

31

接下來,請在新增乙組延伸設定,在本例中預設好外部的連結點http以http://crl.jason.com.tw/crld/為例, 在輸入完成前述網址後,於下列的變數中選擇插入<CAName>. <CRLNameSuffix>, <DeltaCRLAllowed>,完成插入變數後,可直接完成設定。

28

此部份請在延伸設定上勾核「包含在CRL中。用戶端用此來尋找Delta CRL的位置」及「包含在已發行憑證的CDP延伸中」完成後請按下確定。

29

設定好後會顯示下列視窗,此時會重新啟動憑證服務,重啟後,PKI架構於CA端才可算只是完成了伺服端的功能。

32

 

設定自動憑證要求的類型(於CA伺服器)

接下來,是設定自動將憑證散發至每一台用戶端上,這個部份我們可以透過GPO直接快速的發佈到每一個用戶端上,再透過群組的方式,將允許的使用者加入這個群組中,進而方便管理。

首先於系統工具中,啟動群組原則管理。

33

接下來在網域之下的Default Domain Policy上進行編輯。

34

請展開電腦設定->原則->windows設定->安全性設定->公開金鑰原則,在自動憑證要求設定值上按右鍵「新增」->「自動憑證要求」

35 

在啟動自動要求安裝精靈時,直接點選下一步以啟動憑證精靈。

36

憑證範本中選擇為「電腦」,直接點選下一步

37 

完成後,直接點選完成即可。

38

 

建置Direct Access憑證散播架構

接下來要開始設定設定Direct Access的憑證散發點前,在您安裝好OS後,在對外的網路卡上設定好兩組IP,及在對內的網卡上,指定好一個內部的IP,並且在這兩隻網卡均帶上DNS尾碼,內部的就以網域名稱為尾碼,外部的,則必須看你在Nslookup上所解析到的對映名稱為尾碼。在完成前面的一個步驟後才把DA-Svr做join AD的動作喔!不然,你的憑證散發點會有私鑰發不出來的問題,如果在這之前你就加入了,那麼只需要退出網域之後再重新加入網域即可。

要做憑證的散發站就要先安裝好IIS後,再加入AD,即可完成DA-Svr的前置步驟。

設定Direct Access的憑證散發網站(於DA伺服器)

在安裝憑證的轉發站時,必須先建立上面憑證CRL相關的設定值,這個設定值很重要喔!必須與上面的設定值設定相同,在CRL的設定值中我們是指定以Crlt目錄為http站點的發佈站,因此我們在IIS中直接加入一個虛擬目錄,請直接在預設目錄上按右鍵,選擇「新增虛擬目錄」

 69 

接下來必須在本機裝置之下建立這個憑證的存取點,本例是直接於Inetpub下建立一個名為crldist的目錄,亦必須與CRL的網芳路徑相同的命名,因此盡量將名稱與CRL的名稱相同。

70 

而設定的目錄名稱可對映為虛擬目錄的crld,於IIS的功能檢視中,選擇開啟「設定編輯器」

71 

在上面的「區段」中,選擇「system.webServer\security\requestFiltering」

72

並且在allowDoubleEscaping將值由False設定為True,接下來請按下右手邊的動作「套用」

73 

完成後,即完成憑證散播站的設定。

74

 

設定CA發佈憑證至DA上(於DA伺服器)

上面的步驟完成的是在http端點的CRL設定,但是網芳部份的設定尚未完成,所以我們先在C:\inetpub\CRLDist目錄中將該目錄分享出來,但是又不要讓其它使用者可以輕易的查找到,因此必須將該目錄的權限及顯示做個良好的設定。

在c:\inetpub\CRLDist目錄中,按右鍵選擇「內容」。

75 

切換至「共用」頁籤後,點選「進階共用」,並勾核「共用此資料夾」共用名稱在本例中為”CRLDist$”,記得加$符號喔,因為我們在網芳上不希望被查找到,因此在該部份我們設定加上$以隱匿該目錄,所以在CRL的設定中,網芳的設定亦必須與CRL相同設定為CRLDist$,點選擇「權限」

76

在編輯畫面中,選擇「物件類型」

77

只要勾核電腦即可

 78

接下來將DC-Svr加入到清單中。

79

並且核選為「完全控制」。若欲安全一點,可將everyone刪除權限。

 80 

接下來,再將安全性設定頁籤中,選擇將上述的步驟設定乙次,將DC-Svr的內容設定為「完全控制」,此時即完成本階段的設定。

83 

測試發放憑證(於CA伺服器上設定,至DA伺服器上驗證)

完成上述設定後,即將進入最後一個階段了,就是測試著將憑證做發出的測試。

首先在CA伺服器上開啟憑證授權單位中在已「廢除的憑證」上按右鍵選擇「所有工作」並指定為「發佈」,在點選完成後,可切換至DA-Svr之中。

84 

此時,在DA-Svr的c:\inetpub\CRLDist目錄中會看到下列圖所示的兩張憑證,到此如果沒有任何錯誤的話,您已完成了PKI的設置。

85

 

完成設定PKI了,呼~~!真是累人,Jason光是做lab就花了快六個小時(+截圖的時間),因為PKI架構是整個Direct access極重要的核心架構,若本步驟未能達成的話,那麼接下來的Direct Access可能就沒辦法順利的達成,尤其是在於整備檢查的時侯,就會被檢測到相關的問題未被處理,那麼,請大家期待接下來的Direct Access的主要設定囉!!!


Anything keeps Availability.
Anywhere keeps Integrity.
Anytime keeps Confidentiality.
keep A.I.C. = Information Security