Google Cloud NetApp Volumes Active Directory 整合

本頁面說明 Google Cloud NetApp Volumes 如何與 Active Directory 整合,為伺服器訊息區塊 (SMB) 和網路檔案系統 (NFS) 磁碟區提供身分識別和驗證服務。瞭解這項整合功能,有助於設定檔案共用的安全存取權。

整合功能簡介

NetApp Volumes 會使用 Active Directory,管理 SMB 和 NFS 磁碟區的使用者身分和驗證。Active Directory 提供下列檔案共用目錄服務:

  • LDAP:尋找使用者、群組和電腦帳戶

  • DNS:解析主機名稱並找出網域控制器

  • Kerberos:驗證用戶端和服務

Active Directory 政策是設定範本,可定義 NetApp Volumes 如何連線至網域。將政策附加至儲存空間集區。系統會根據儲存空間集區服務等級和您建立的磁碟區,隨後加入網域並建立電腦帳戶。詳情請參閱「Active Directory 政策如何加入網域」。

Active Directory 政策適用於各個區域。每個區域最多可設定五項政策。詳情請參閱「在 Google Cloud上執行 Active Directory 的最佳做法」。

Active Directory 的用途

NetApp Volumes 會在多種情況下使用 Active Directory:

  • 提供 SMB 網域服務和驗證:Active Directory 是 SMB 的中央網域服務,NetApp Volumes 會使用該服務驗證及查詢使用者和群組的身分。NetApp Volumes 會以成員身分加入網域,但不支援工作群組模式的 SMB。

  • 為 NFSv3 提供擴充群組支援:對於支援擴充群組的 NFSv3,Active Directory 會提供 LDAP 伺服器,用於查詢使用者、群組或機器帳戶等物件。

    • 具體來說,使用者 ID 和群組 ID 查詢作業需要符合 RFC2307bis 規範的 LDAP 伺服器。

    • 建立集區時,系統會在儲存空間集區上啟用 LDAP 支援功能。

    • 擴充群組支援功能會忽略 NFS 用戶端在 NFS 呼叫中傳送的所有群組 ID。而是會擷取要求的使用者 ID,並從 LDAP 伺服器查詢該使用者 ID 的所有群組 ID,以便檢查檔案權限。

    詳情請參閱「管理 LDAP RFC2307bis POSIX 屬性」。

  • 將安全主體對應至 NFSv4.x 的使用者和群組 ID: NetApp Volumes 會使用 Active Directory,將安全主體對應至 NFSv4.x 的使用者 ID 和群組 ID。

    • NFSv4.x 採用以主體為基礎的驗證模式,安全主體會以 user@dns_domain 格式識別使用者,如 RFC 7530 安全性考量所述,而非使用者 ID 和群組 ID。使用 NFSv4.x 通訊協定存取磁碟區時,NetApp Volumes 需要符合 RFC2307bis 規範的 LDAP 伺服器,才能將安全主體對應至使用者 ID 和群組 ID。NetApp Volumes 僅支援 Active Directory LDAP 伺服器。建立儲存空間集區時,系統會啟用 LDAP 支援。

    • 如要使用安全主體,必須符合下列條件:

    • dns_domain 是 Active Directory 網域名稱,user 則是 Active Directory 使用者名稱。設定 LDAP POSIX 屬性時,請使用這些值。

    • 使用 NFSv4.1 的數字 ID:如要使用 NFSv4.1,但不進行 ID 對應,且僅使用類似 NFSv3 的使用者 ID 和群組 ID,請使用數字 ID 忽略安全主體。NetApp Volumes 支援數字 ID。如果未設定 ID 對應,NFS 用戶端預設會使用數字 ID。

  • 為 NFSv4.x 提供 Kerberos 驗證:如果您將 Kerberos 與 NFSv4.x 搭配使用,則必須使用 Active Directory 做為 LDAP 伺服器,以便查詢安全主體。Kerberos 主體會做為安全性 ID。Kerberos 金鑰分配中心使用 Active Directory。

    如要搭配使用 Kerberos 和 NFSv4.x,您也必須完成下列步驟:

    • 將含有 Kerberos 設定的 Active Directory 政策附加至集區。

    • 建立儲存空間集區時,請啟用 LDAP 支援。

Active Directory 政策如何加入網域

本節說明 NetApp Volumes 何時會加入 Active Directory 網域、如何建立電腦帳戶,以及服務加入網域後如何進行驗證。如需總覽和常見用途,請參閱 Google Cloud NetApp Volumes Active Directory 整合。

Active Directory 政策是設定範本,建立政策不會加入網域或建立電腦帳戶。政策必須附加至儲存空間集區,且服務加入該集區的網域後,才會生效。

將 Active Directory 政策附加至儲存空間集區

您可以在下列情況附加 Active Directory 政策:

  1. 建立儲存空間集區時。

  2. 使用沒有 Active Directory 政策的現有儲存空間集區。

判斷網域加入時間

網域加入時間取決於儲存空間集區服務等級:

  • Flex Unified、Standard、Premium 和 Extreme 服務等級: 當您建立第一個需要 Active Directory 的磁碟區時,NetApp Volumes 會加入網域並建立電腦帳戶。包括 SMB 磁碟區、具有擴充群組的 NFSv3,以及具有安全主體或 Kerberos 的 NFSv4.x。如需完整清單,請參閱「Active Directory 的用途」。

  • Flex 檔案服務等級:將 Active Directory 政策附加至集區時 (包括建立集區時),NetApp Volumes 會加入網域。

電腦帳戶

NetApp Volumes 會建立 Active Directory 電腦帳戶,讓檔案伺服器驗證用戶端,並與網域控制器通訊。

  • Flex 統合式和 Flex 檔案型集區:每個儲存空間集區建立一個電腦帳戶。

  • 標準、進階和極致集區:視需要建立多個電腦帳戶。舉例來說,系統可能會在同一個集區中,為採用 Kerberos 的 NFSv4.1 和 SMB 建立不同的帳戶。

NetApp Volumes 建立電腦帳戶後,會使用該帳戶與 Active Directory 通訊。除非需要建立新的電腦帳戶,否則不會繼續使用 Active Directory 政策中的網域加入使用者憑證。

電腦帳戶清理作業取決於加入網域的使用者能否刪除電腦帳戶:

  • 授予刪除權限:刪除最後一個使用服務建立的電腦帳戶的磁碟區時,NetApp Volumes 會自動刪除該帳戶。

  • 未授予刪除權限:刪除磁碟區後,電腦帳戶仍會保留在 Active Directory 中。網域管理員必須手動刪除未使用的帳戶。

如要進一步瞭解如何委派建立及刪除電腦帳戶的權限,請參閱「建立 Active Directory 電腦帳戶所需的權限」。

Kerberos 加密類型

NetApp Volumes 會在 Active Directory 電腦帳戶上,公告 Kerberos 加密類型 (enctype)。只有在用戶端、網域控制器和電腦帳戶支援至少一種通用加密類型時,Kerberos 驗證才會成功。

根據預設,NetApp Volumes 會宣傳下列加密類型:

  • DES

  • RC4-HMAC

在 Active Directory 政策中選取「Enable AES Encryption for Active Directory authentication」(啟用 AES 加密機制來進行 Active Directory 驗證) 時,NetApp Volumes 也會公告下列加密類型:

  • AES-128

  • AES-256

在 Kerberos 驗證期間,金鑰分配中心 (KDC) 會選取用戶端、網域控制器和 NetApp Volumes 電腦帳戶支援的最強 enctype。如要要求用戶端電腦使用特定加密類型,請使用 Active Directory 群組原則。詳情請參閱「設定 Kerberos 允許的加密類型」。

如要進一步瞭解如何驗證用戶端使用的加密類型、檢查電腦帳戶屬性,或排解與弱式或不相符加密演算法相關的驗證失敗問題,請參閱「排解 Active Directory 的 Kerberos 加密類型問題」。

測試 Active Directory 政策連線

「測試 Active Directory 政策連線」功能會在網域中建立臨時電腦帳戶,藉此驗證網域加入作業。

  • 已授予刪除權限:NetApp Volumes 會在測試後立即刪除臨時帳戶。

  • 未授予刪除權限:臨時帳戶仍會保留在 Active Directory 中。網域管理員必須手動刪除帳戶。如要瞭解測試先決條件和步驟,請參閱「測試 Active Directory 政策連線」。

建立 Active Directory 電腦帳戶所需的權限

如要使用 Active Directory,NetApp Volumes 必須將一或多個虛擬檔案伺服器加入網域,做為電腦帳戶。如要加入網域,您必須提供網域使用者的憑證,該使用者必須有權將電腦加入網域。根據預設,只有 Domain Admins 群組成員可以將電腦加入網域,但 Active Directory 能夠將必要權限委派給完整網域或組織單位 (OU) 層級的個別使用者或群組。

如果是 NetApp Volumes,建議建立專屬網域服務帳戶。僅委派必要權限,將新電腦加入特定組織單位。建立具有 Domain User 或 Domain Guest 群組成員資格的使用者後,請按照下列操作說明委派必要權限。

  1. 以 Active Directory 網域的網域管理員身分登入系統。

  2. 開啟「Active Directory 使用者和電腦」MMC 管理單元。

  3. 從選單列中選取「View」(檢視),並確認已啟用「Advanced Features」(進階功能)。

    如果啟用「進階功能」,畫面上會顯示勾號。

  4. 在工作窗格中,展開網域節點。

  5. 找出要修改的機構單位,按一下滑鼠右鍵,然後從內容選單中選取「Properties」(屬性)。

  6. 在「OU properties」視窗中,選取「Security」分頁標籤。

  7. 按一下「安全性」下方的「進階」,然後按一下「新增」。

  8. 在「權限項目」對話方塊中,完成下列步驟:

    1. 按一下「選取主體」。

    2. 輸入服務帳戶或群組的名稱,然後按一下「OK」。

    3. 在「套用對象:」部分,選取「這個物件和所有子系物件」。

    4. 請確認已選取下列權限:

      • 修改權限

      • 建立電腦物件

      • 刪除電腦物件

  9. 勾選「Apply」核取方塊,然後按一下「OK」。

  10. 關閉「Active Directory Users and Computers」MMC 嵌入式管理單元。

委派服務帳戶後,您就可以提供使用者名稱和密碼做為 Active Directory 政策憑證。

為提高安全性,在查詢及建立機器帳戶物件時,傳遞至 Active Directory 網域的使用者名稱和密碼會使用 Kerberos 加密。

Active Directory 網域控制器

為將 NetApp Volumes 連線至網域,這項服務會使用 DNS 探索功能,找出可用的網域控制器清單。

服務會執行下列步驟,找出要使用的網域控制器:

  1. Active Directory 站台探索:NetApp Volumes 會使用 LDAP ping,向 Active Directory 政策中指定的 DNS 伺服器 IP 擷取 Active Directory 站台子網路資訊。這會傳回 CIDR 清單,以及指派給這些 CIDR 的 Active Directory 網站。

    Get-ADReplicationSubnet -Filter * | Select-Object Name,Site

  2. 定義網站名稱:如果磁碟區的 IP 位址與任何定義的子網路相符,系統就會使用相關聯的網站名稱。較小的子網路比對會優先於較大的子網路比對。如果不知道磁碟區的 IP 位址,請手動建立暫時磁碟區,並使用 NFS 通訊協定類型,判斷使用的 /28 CIDR。

    如果 Active Directory 中未定義網站名稱,系統會使用 Active Directory 政策中設定的網站名稱。如未設定網站名稱,Flex Unified、Standard、Premium 和 Extreme 服務等級會使用 Default-First-Site-Name 網站。如果 Flex 檔案服務水準嘗試使用 Default-First-Site-Name 網站,連線會失敗,Flex 檔案服務水準會改用完整的網域控制器探索。Flex 檔案服務等級儲存空間集區會忽略 Active Directory 網站參數的變更。

  3. 網域控制器探索:取得所有必要資訊後,服務會使用下列 DNS 查詢來識別潛在的網域控制器:

    nslookup -type=srv _ldap._tcp.<site_name>._sites.dc._msdcs.<domain-name> <dns-server>

    如要探索完整網域,服務會使用下列 DNS 查詢:

    nslookup -type=srv _ldap._tcp.dc._msdcs.<domain-name> <dns-server>

  4. 產生網域控制器清單:產生網域控制器清單。NetApp Volumes 會持續監控所有磁碟區的可用性。並從可用的網域控制器中,選取一個用於加入網域和查詢。如果選取的網域控制器消失,系統會自動使用「可用」清單中的另一個網域控制器。請注意,您選擇的網域控制器不一定是指定的 DNS 伺服器。

您至少須提供一個可供服務使用的網域控制站。建議您採用多個網域控制器,以提高可用性。請確認 NetApp Volumes 和網域控制器之間有路由網路路徑,且網域控制器的防火牆規則允許 NetApp Volumes 連線。

詳情請參閱「Active Directory 設計考量事項和最佳做法」。

Active Directory 網域控制器拓撲

成功連線至 Active Directory 網域控制器後,您可以使用下列檔案共用通訊協定:

  • SMB

  • NFSv3 (含擴充群組)

  • 使用安全主體和 Kerberos 的 NFSv4

以下情境說明可能的拓撲。這些情境著重於 NetApp Volumes 使用的網域控制器。只有在必要時,才會說明相同網域的其他網域控制站。建議您部署至少兩個網域控制器,確保備援和可用性。

拓撲 說明
Active Directory 網域控制器和磁碟區位於同一區域 這個情境是最簡單的部署策略,網域控制器與磁碟區位於相同區域。
Active Directory 網域控制器和磁碟區位於不同區域 您可以使用與磁碟區位於不同區域的網域控制器。這項設定可能會對驗證和檔案存取效能造成負面影響。
使用 AD 網站的跨多個區域 Active Directory 網域控制器 如果您在多個區域使用磁碟區,建議在每個區域至少放置一個網域控制器。雖然服務會自動選取網域控制器,但我們建議您使用 Active Directory 網站管理網域控制器選取作業。
地端部署網路中的 Active Directory 網域控制器 您可以透過 VPN 使用地端部署網域控制器,但這可能會對使用者驗證和檔案存取效能造成負面影響。請勿在網路路徑中新增虛擬私有雲對接躍點。虛擬私有雲對等互連受遞移路由限制。流量不會轉送至 NetApp Volumes 已使用的虛擬私有雲對接躍點以外。
Active Directory 網域控制器位於其他虛擬私有雲網路 您無法將網域控制器放在其他虛擬私有雲中,因為 Google Cloud 虛擬私有雲對等互連不允許遞移路由。或者,您也可以使用 VPN 連接 VPC,將 NetApp Volumes 連結至裝載 Active Directory 網域控制器的共用 VPC 網路,或連線至其他網路。如果將 NetApp Volumes 附加至共用虛擬私有雲網路,則此設定與上述其中一個情境類似。

後續步驟