最佳作法

  • 在適當的網域控制站上安裝密碼同步化 若要確保網域密碼與 UNIX 密碼之間的同步處理能夠一致,密碼同步化就必須安裝在網域主控站上,而且,若使用的是 Windows 2000 網域,則密碼同步化還需安裝在該網域中的所有網域控制站上。

    • 如果您新增網域控制站至網域,則應該盡快將密碼同步化安裝到新的網域控制站,並加以設定以符合其他的網域控制站。

    • 如果您需要從任何網域控制站移除密碼同步化,則應先將此伺服器降級為成員伺服器,然後再解除安裝密碼同步化。

  • 確定密碼原則一致 如果您只提供單向密碼同步化,請確定同步處理來源電腦上的密碼原則,跟同步處理目標電腦上的密碼原則在各區域的限制至少要一樣。例如,如果您設定 Windows 至 UNIX 的同步處理,則 Windows 的密碼原則就必須至少與它要同步處理密碼之 UNIX 電腦的原則限制一樣。如果您支援雙向同步處理,則兩個系統上的密碼原則必須限制相同。在密碼原則不一致的情況下,如果使用者變更了限制較少之系統上的密碼,可能會造成同步處理失敗;或者,限制較多系統上的密碼也有可能變更 (即使該變更不符合系統原則)。

    務必讓 Windows 使用者清楚知道要同步密碼之 UNIX 系統上的任何特殊密碼限制。例如,某些 UNIX 版本支援的最大密碼長度只有八個字元。為了讓預設 Windows 密碼原則能與這些 UNIX 限制達到最佳相容性,密碼應設為七或八個字元長,除非您確定所有的 UNIX 系統都支援更長的密碼長度。

  • 設定密碼同步化以提供使用者密碼最大的保護

    請遵循下列建議,以維護最佳安全性:

    • 明確列出哪些使用者的密碼要被同步處理 為了最佳掌控哪些使用者能同步密碼,請勿對 UNIX 主機上 sso.conf 中的 SYNC_USERS 清單,使用 ALL 關鍵字。請改為明確地列出每個獲允許或遭封鎖進行同步密碼的使用者。在執行密碼同步化的 Windows 電腦上,建立 PasswordPropAllow 群組,然後加入您想要同步處理其密碼的使用者帳戶。如需相關資訊,請參閱控制使用者帳戶的密碼同步化

    • 不要同步處理已停用 UNIX 帳戶的密碼 在某些 UNIX 版本中,變更已停用之使用者帳戶的密碼,會啟用該帳戶。結果是,如果某個使用者在 UNIX 電腦上擁有已停用帳戶,而此帳戶被設定為與 Windows 電腦同步密碼,那麼使用者或系統管理員可以透過變更該使用者的 Windows 密碼,來啟用這個 UNIX 帳戶。為了防止這種情形發生,請使用 PasswordPropDeny 群組來封鎖已停用 UNIX 帳戶的同步處理。

      同樣地,當系統管理員停用 UNIX 帳戶時,該系統管理員也應使用 sso.conf 中的 SYNC_USERS 項目來封鎖這個帳戶的密碼同步化。

    • 避免同步處理系統管理員的密碼 請勿同步處理 Windows Administrators 群組成員的密碼,或 UNIX superuser 或 root 帳戶的密碼。

    • 執行 Windows Server 2003 Service Pack 1 (SP1) 相容性檢查 當您在 [密碼同步化內容] 對話方塊的 [設定] 索引標籤中啟用 [Windows 至 NIS (Active Directory) 密碼同步化] 時。為了保護企業中使用者帳戶密碼的安全性,強烈建議您將密碼同步化設為能夠識別樹系中所有不是執行 Windows Server 2003 SP1 或更新版本的網域控制站。

      當您選取 [Windows 至 NIS (Active Directory) 密碼同步化] 區域中的 [啟用] 時,密碼同步化就會提示您允許進行相容性檢查。若樹系中所有網域控制站都安裝了 Windows Server 2003 SP1 或更新版本,將能大幅降低使用者密碼雜湊暴露給未授權檢視者的風險。當 Windows Server 2003 SP1 不是樹系中所有網域控制站的最小運作等級時,針對已移轉到 Active Directory 網域服務 (AD DS) 的 UNIX 使用者,網域中的任何已驗證使用者都可能可以檢視這些使用者的密碼雜湊。

      若是發生未授權使用者侵入 AD DS 中 UNIX 使用者帳戶之密碼雜湊的情形,該帳戶的 Windows 密碼也就不再安全。

安裝密碼同步化時,本機 Administrators 群組或 Domain Administrators 群組的成員便會加入 PasswordPropDeny 群組,這樣可防止他們的密碼遭到同步處理。如果您將使用者加入 Administrators 或 Domain Administrators 群組,請確定也會將該使用者加入 PasswordPropDeny 群組。

修改所有 UNIX 系統上 sso.conf 檔案中的 SYNC_USERS 陳述式,防止 superuser 的密碼遭到同步處理。

  • 不要使用預設的連接埠號碼和加密金鑰 保留預設的連接埠號碼和加密金鑰,可能會讓攻擊者設定偽造 UNIX 主機來擷取密碼。除了密碼本身,用來同步處理密碼的連接埠號碼和加密金鑰也應該一樣小心地防護。

  • 保護 sso.conf 檔案 每個 UNIX 主機上的 sso.conf 檔案都包含重要的設定資訊,這些資訊可能會被利用來危及安全性。建議您將此檔案的模式位元遮罩設定為 600。

  • 確保 TEMP_FILE_PATH 所識別的目錄有適當保護 密碼同步化在 UNIX 主機上建立的暫存檔案,其中包含的資訊有可能被攻擊者利用來危及系統安全性。因此,您應該確保 sso.conf 中 TEMP_FILE_PATH 所參照的任何目錄,只有 root 帳戶有讀取權限,任何其他使用者都無法存取。

  • 確保記錄檔會受到適當的保護 在 UNIX 主機上,密碼同步化會使用 syslogd 精靈來記錄由同步處理操作產生的記錄訊息。所產生的記錄包含將同步處理其密碼的使用者名稱、在哪部電腦上、傳播錯誤等等資訊。您應保護這些記錄檔的安全,確保只有系統管理員能夠檢視。

  • 變更密碼同步化精靈的設定後重新啟動精靈 當您變更密碼同步化精靈的設定檔 (sso.conf) 後,必須停止並重新啟動精靈,設定變更才會生效。

  • 設定系統正確處理區分大小寫的使用者名稱 除非您嚴厲地強制執行原則以確保 Windows 和 UNIX 使用者名稱的拼字和大小寫都互相符合,否則請確認 sso.conf 檔案中的 CASE_IGNORE_NAME 選項設為 1 (預設值)。UNIX 使用者名稱有區分大小寫;所以,如果使用者名稱未完全符合,由於密碼同步化精靈無法將 Windows 使用者名稱關聯至對應的 UNIX 使用者名稱,可能就無法正確同步處理密碼。

  • 確保密碼檔案類型與名稱一致 設定密碼同步化精靈時,請確認密碼檔案類型 (由 USE_SHADOW 指定) 與路徑名稱 (由 FILE_PATH 設定) 彼此相稱。例如,在大部分系統上,如果 USE_SHADOW 設為 0 (指定將 passwd 檔案用於同步處理),則 FILE_PATH 選項應設為 /etc/passwd。不過,如果 USE_SHADOW 設為 1 (指定改為使用 shadow 檔案),則 FILE_PATH 選項就應設為 /etc/shadow (在 IBM AIX 系統上,陰影檔案的路徑與名稱為 /etc/security/passwd)。