2012年11月3日 星期六

離線加入Active Directory網域 (Offline Active Directory Domain Joining)

Windows 7 或 Windows Server 2008 R2 後的作業系統開始支援離線網域加入(Offline domain join)的功能,讓電腦即使沒有連線至網域控制站也能夠順利加入Active Directory網域,這項功能讓一部目前暫時或尚未連線到公司網域的電腦可以順利加入網域成為成員,不過只有Windows 7/8/2008R2/2012等較新版本的作業系統電腦可以透過執行djoin命令來離線加入網域。

下圖說明了離線網域加入的情境,一部尚未能連上企業網路的電腦計劃加入網域,首先由網域內的佈建電腦建立電腦帳戶,並將產生的佈建資料檔案以安全可靠方式或傳送或拷貝到離線用戶端電腦上,再由離線電腦利用佈建資料檔案執行要求離線加入網域。

offlinjoin

離線加入網域實務步驟與說明

執行離線網域加入只須要二個步驟:

  1. 建立電腦帳戶 (執行於網域內的Windows 7版本後電腦)
  2. 要求加入網域 (離線電腦本身或可存取其檔案統的主機)

一. 建立電腦帳戶中繼資料(佈建電腦)

首先,您需要在執行 djoin.exe /provision 命令以建立目的地電腦 (想要加入到網域的電腦) 的電腦帳戶(Computer Account)中繼資料,這個過程又稱為佈建(Provision)電腦帳戶,此命令的結果會產生一個base-64編碼的文字檔,而佈建電腦戶的指令語法格式為:

djoin /provision /domain <即將加入的網域> /machine <將加入網域的電腦名稱> /machineou <組織單位DN> /savefile <文字檔案名稱>

完整個做法、步驟與說明如下:

  1. 利用具有『將工作站新增至網域』使用者權限的帳戶登入一部已經是網域成員的Windows 7/2008 R2以上的電腦。
  2. 執行 djoin.exe命令以產生一個電腦帳戶加入網域訊息的文字檔(blog),如下圖所示的命令,在lij.local網域內的MIS組織單位建立了ws1的電腦帳戶並產生中繼資料文字檔ws1join.txt。
    djoin7
    這個ws1join.txt為一個base-64編碼的ASCII文字檔,您如果使用文編輯器編輯它,會得到如下的編碼顯示資料,筆者將其解碼後,雖然仍有些編碼資訊,不過大抵上可看出此產生的文字檔案內存有想要加入的網域名稱、即將加入的電腦名稱、網域控制站的名稱和IP位址以及站台名稱等:
    blob
    一旦執行了佈建電腦命令成功之後,Active Directory就已經在Active Directory建立了這個電腦帳戶,您可以由【Active Directory使用者和電腦】工具內的『Computers』容區或加入的組織單位看到這個電腦帳戶,另一項值得留意的是上述的指令將連接Windows Server 2008 R2以上版本的網域控制站,所以假若您並沒有Windows Server 2008 R2或Windows Server 2012的網域控制站,則您需要在上面佈建的電腦上使用額外的參數 /downlevel。

二. 要求離線加入網域

接下來第步驟,您需要將上述的檔案匯入到即將加入的離線電腦上以離線加入網域,做法如下:

  1. 請將第一個步驟產生的檔案傳送或拷貝到執行要求加入網域命令的電腦上。
  2. 接下來需執行 如下的 djoin /requestodj 命令將離線電腦加入網域,不過離線的電腦要求加入網域時可能有二種常見的不同情況,其所需使用的選項稍有不同,第一種情況是啟動離線的電腦,並在命令提示字元下輸入如下的命令:
    djoin /requestODJ /loadfile blob.txt /windowspath %SystemRoot% /localos
    djoin3
    然後依照畫面提示重新開機即可。
    第二種情況是您建立了一部Windows 7的虛擬機器,您希望它下回開機時自動離線加入網域,則您可以尚未開機時,利用主機的【磁碟管理】工具連結此虛擬機器的虛擬磁碟(.vhd檔)成為一磁碟代號,接下來拷貝檔案步驟一所產生的文字檔至主機上,然後再執行下列的djoin /requestodj指令 (h: 為連接虛擬磁碟vhd檔後所使用的磁碟代號):
    djoin9
    完成上面命令後請中斷連結vhd,然後啟動這部虛擬機器時,它就能夠成的功的離線加入網域。
  3. 最後,您可以透過『系統』對話方塊確認電腦已經是網域成員,下回一旦可以連上網域網路時就可順利登入網域並存取網域資源。
    join

Windows Server 2012 則擴充了這項離線網域加入的功能,允許設定DirectAccess原則讓Windows Server 2012或Windows 8的電腦離線加入網域。