本頁說明 Google Cloud NetApp Volumes 如何與 Active Directory 整合,為伺服器訊息區塊 (SMB) 和網路檔案系統 (NFS) 磁碟區提供身分識別和驗證服務。瞭解這項整合功能,有助於設定檔案共用的安全存取權。
關於整合
NetApp Volumes 會使用 Active Directory 管理 SMB 和 NFS 磁碟區的使用者身分和驗證。Active Directory 提供下列目錄服務,用於檔案共用:
LDAP:尋找使用者、群組和電腦帳戶
DNS:解析主機名稱並找出網域控制站
Kerberos:驗證用戶端和服務
Active Directory 政策是一種設定範本,可定義 NetApp Volumes 如何連線至網域。將政策附加至儲存空間集區。網域加入和電腦帳戶建立作業隨後會根據儲存空間集區服務等級和您建立的磁碟區執行。詳情請參閱「How Active Directory policies join the domain」。
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 通訊協定存取磁碟區時,如要將安全主體對應至使用者 ID 和群組 ID,NetApp Volumes 必須使用符合RFC2307bis規範的 LDAP 伺服器。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。
如要搭配 NFSv4.x 使用 Kerberos,您也必須完成下列步驟:
將含有 Kerberos 設定的 Active Directory 政策附加至集區。
建立儲存空間集區時,請啟用 LDAP 支援。
Active Directory 政策如何加入網域
本節說明 NetApp Volumes 何時會加入 Active Directory 網域、如何建立電腦帳戶,以及服務加入網域後如何進行驗證。如需總覽和常見用途,請參閱「Google Cloud NetApp Volumes Active Directory 整合」。
Active Directory 政策是設定範本,建立政策不會加入網域或建立電腦帳戶。您必須將政策附加至儲存空間集區,且服務加入該集區的網域後,政策才會生效。
將 Active Directory 政策附加至儲存空間集區
您可以在下列情況附加 Active Directory 政策:
建立儲存空間集區時。
使用沒有 Active Directory 政策的現有儲存空間集區。
判斷網域加入時間
網域加入時間取決於儲存空間集區服務等級:
彈性統一、標準、進階和極致服務等級:建立第一個需要 Active Directory 的磁碟區時,NetApp Volumes 會加入網域並建立電腦帳戶。包括 SMB 磁碟區、具有擴充群組的 NFSv3,以及具有安全主體或 Kerberos 的 NFSv4.x。如需完整清單,請參閱「Active Directory 使用案例」。
彈性檔案服務等級:將 Active Directory 政策附加至集區時 (包括建立集區期間),NetApp Volumes 會加入網域。
電腦帳戶
NetApp Volumes 會建立 Active Directory 電腦帳戶,讓檔案伺服器驗證用戶端身分,並與網域控制器通訊。
Flex 統合式和 Flex 檔案型集區:每個儲存空間集區建立一個電腦帳戶。
標準、進階和極致集區:視需要建立多個電腦帳戶。舉例來說,系統可能會為 NFSv4.1 (使用 Kerberos) 和 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 政策中選取「啟用 AES 加密機制來進行 Active Directory 驗證」時,NetApp Volumes 也會宣傳下列加密類型:
AES-128
AES-256
在 Kerberos 驗證期間,金鑰發布中心 (KDC) 會選取用戶端、網域控制器和 NetApp Volumes 電腦帳戶支援的最強加密類型。如要在用戶端電腦上強制使用特定加密類型,請使用 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 嵌入式管理單元。
選取選單列中的「檢視」,並確認已啟用「進階功能」。
如果啟用「進階功能」,畫面上會顯示勾號。
在工作窗格中,展開網域節點。
找出要修改的 OU,按一下滑鼠右鍵,然後從內容選單中選取「內容」。
在「OU properties」(OU 屬性) 視窗中,選取「Security」(安全性) 分頁標籤。
在「安全性」下方,依序點按「進階」和「新增」。
在「權限項目」對話方塊中,完成下列步驟:
按一下「選取主體」。
輸入服務帳戶或群組名稱,然後按一下「確定」。
在「適用於:」中,選取「這個物件和所有子代物件」。
確認已選取下列權限:
修改權限
建立電腦物件
刪除電腦物件
勾選「套用」核取方塊,然後按一下「確定」。
關閉「Active Directory 使用者和電腦」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 通訊協定類型,判斷使用的 CIDR
/28。如果 Active Directory 中未定義網站名稱,系統會使用 Active Directory 政策中設定的網站名稱。如果未設定網站名稱,Standard、Premium 和 Extreme 服務等級會使用
Default-First-Site-Name網站。如果 Flex 服務層級嘗試使用該Default-First-Site-Name網站,就會失敗,並改用完整的網域控制站探索功能。請注意,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 已耗用的 VPC 對等互連躍點以外的位置。 |
| 位於不同虛擬私有雲網路的 Active Directory 網域控制站 | 您無法將網域控制器放在其他虛擬私有雲中,因為虛擬私有雲對等互連不允許傳遞路徑。 Google Cloud 或者,您可以使用 VPN 連接虛擬私有雲,將 NetApp Volumes 附加至裝載 Active Directory 網域控制器的共用虛擬私有雲網路,或連線至其他網路。如果將 NetApp Volumes 連結至共用虛擬私有雲網路,則此設定與上述其中一個情境類似。 |