本頁面說明 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
RFC2307bisPOSIX 屬性」。將安全主體對應至 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 支援。如要使用安全主體,必須符合下列條件:
NFS 用戶端和伺服器必須連線至相同的 LDAP 來源。
您必須在 NFS 用戶端上設定
idmapd.conf檔案。如要進一步瞭解如何設定idmapd.conf檔案,請參閱 Ubuntu 說明文件,瞭解如何設定libnfsidmap的idmapd.conf檔案。
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 政策:
建立儲存空間集區時。
使用沒有 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 群組成員資格的使用者後,請按照下列操作說明委派必要權限。
以 Active Directory 網域的網域管理員身分登入系統。
開啟「Active Directory 使用者和電腦」MMC 管理單元。
從選單列中選取「View」(檢視),並確認已啟用「Advanced Features」(進階功能)。
如果啟用「進階功能」,畫面上會顯示勾號。
在工作窗格中,展開網域節點。
找出要修改的機構單位,按一下滑鼠右鍵,然後從內容選單中選取「Properties」(屬性)。
在「OU properties」視窗中,選取「Security」分頁標籤。
按一下「安全性」下方的「進階」,然後按一下「新增」。
在「權限項目」對話方塊中,完成下列步驟:
按一下「選取主體」。
輸入服務帳戶或群組的名稱,然後按一下「OK」。
在「套用對象:」部分,選取「這個物件和所有子系物件」。
請確認已選取下列權限:
修改權限
建立電腦物件
刪除電腦物件
勾選「Apply」核取方塊,然後按一下「OK」。
關閉「Active Directory Users and Computers」MMC 嵌入式管理單元。
委派服務帳戶後,您就可以提供使用者名稱和密碼做為 Active Directory 政策憑證。
為提高安全性,在查詢及建立機器帳戶物件時,傳遞至 Active Directory 網域的使用者名稱和密碼會使用 Kerberos 加密。
Active Directory 網域控制器
為將 NetApp Volumes 連線至網域,這項服務會使用 DNS 探索功能,找出可用的網域控制器清單。
服務會執行下列步驟,找出要使用的網域控制器:
Active Directory 站台探索:NetApp Volumes 會使用 LDAP ping,向 Active Directory 政策中指定的 DNS 伺服器 IP 擷取 Active Directory 站台子網路資訊。這會傳回 CIDR 清單,以及指派給這些 CIDR 的 Active Directory 網站。
Get-ADReplicationSubnet -Filter * | Select-Object Name,Site定義網站名稱:如果磁碟區的 IP 位址與任何定義的子網路相符,系統就會使用相關聯的網站名稱。較小的子網路比對會優先於較大的子網路比對。如果不知道磁碟區的 IP 位址,請手動建立暫時磁碟區,並使用 NFS 通訊協定類型,判斷使用的
/28CIDR。如果 Active Directory 中未定義網站名稱,系統會使用 Active Directory 政策中設定的網站名稱。如未設定網站名稱,Flex Unified、Standard、Premium 和 Extreme 服務等級會使用
Default-First-Site-Name網站。如果 Flex 檔案服務水準嘗試使用Default-First-Site-Name網站,連線會失敗,Flex 檔案服務水準會改用完整的網域控制器探索。Flex 檔案服務等級儲存空間集區會忽略 Active Directory 網站參數的變更。網域控制器探索:取得所有必要資訊後,服務會使用下列 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>產生網域控制器清單:產生網域控制器清單。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 附加至共用虛擬私有雲網路,則此設定與上述其中一個情境類似。 |