其他NAS基礎架構服務相依性(Kdc、LDAP和DNS)
使用 Google Cloud NetApp Volumes 進行 NAS 共用時,可能需要外部相依性才能正常運作。在特定情況下、這些相依關係仍在發揮。下表顯示各種組態選項、以及必要的相依性(如果有)。
組態 | 所需相依性 |
---|---|
僅限NFSv3 |
無 |
僅NFSv3 Kerberos |
Windows Active Directory:* kdc * DNS * LDAP |
僅限NFSv4.1 |
用戶端ID對應組態(/etc/idmap.conf) |
僅NFSv4.1 Kerberos |
|
僅限SMB |
Active Directory:* kdc * dns |
多重傳輸協定NAS(NFS和SMB) |
|
機器帳戶物件的Kerberos Keytab旋轉/密碼重設
透過 SMB 機器帳戶, Google Cloud NetApp Volumes 會排程 SMB 機器帳戶的定期密碼重設。這些密碼會使用Kerberos加密進行重設、並在晚上11點到凌晨1點之間的隨機時間、於每四個星期日的排程中運作。這些密碼會重設變更 Kerberos 金鑰版本,旋轉儲存在 Google Cloud NetApp Volumes 系統上的金鑰索引標籤,並協助維持在 Google Cloud NetApp Volumes 中執行的 SMB 伺服器更高層級的安全性。機器帳戶密碼是隨機配置的、系統管理員不知道。
對於NFS Kerberos機器帳戶、密碼重設只會在建立新的金鑰索引標籤並與Kdc交換時進行。目前無法在 Google Cloud NetApp Volumes 中執行此動作。
用於LDAP和Kerberos的網路連接埠
使用LDAP和Kerberos時、您應該判斷這些服務所使用的網路連接埠。您可以在中找到 Google Cloud NetApp Volumes 使用的完整連接埠清單 "Google Cloud NetApp Volumes 安全考量文件"。
LDAP
Google Cloud NetApp Volumes 可作為 LDAP 用戶端,並使用標準 LDAP 搜尋查詢來尋找 UNIX 身分識別的使用者和群組。如果您想使用 Google Cloud NetApp Volumes 所提供之標準預設使用者以外的使用者和群組,則必須使用 LDAP 。如果您打算搭配使用者主體使用NFS Kerberos(例如user1@domain.com)、也必須使用LDAP。目前僅支援使用Microsoft Active Directory的LDAP。
若要將Active Directory當作UNIX LDAP伺服器使用、您必須在要用於UNIX身分識別的使用者和群組上填入必要的UNIX屬性。Google Cloud NetApp Volumes 使用預設的 LDAP 架構範本,根據查詢屬性 "RFC-2307-bis"。因此、下表顯示使用者和群組所需的最低Active Directory屬性、以及每個屬性的用途。
如需在Active Directory中設定LDAP屬性的詳細資訊、請參閱 "管理雙傳輸協定存取。"
屬性 | 它的作用 |
---|---|
UID* |
指定UNIX使用者名稱 |
uidNumber* |
指定UNIX使用者的數字ID |
gidNumber* |
指定UNIX使用者的主要群組數字ID |
objectClass * |
指定正在使用的物件類型; Google Cloud NetApp Volumes 要求物件類別清單中包含「 user 」(使用者)(預設包含在大多數 Active Directory 部署中)。 |
名稱 |
帳戶的一般資訊(真實姓名、電話號碼等、也稱為gecos) |
unixUserPassword |
無需設定、不適用於NAS驗證的UNIX身分識別查詢。設定此選項會將設定的unixUserPassword值設為純文字。 |
unixHomeDirectory |
當使用者從Linux用戶端驗證LDAP時、定義UNIX主目錄的路徑。如果您要使用LDAP來執行UNIX主目錄功能、請設定此選項。 |
LoginShell |
當使用者根據LDAP驗證時、定義Linux用戶端的Basash/profile Shell路徑。 |
-
表示使用 Google Cloud NetApp Volumes 進行適當功能所需的屬性。其餘屬性僅供用戶端使用。
屬性 | 它的作用 |
---|---|
CN* |
指定UNIX群組名稱。使用Active Directory for LDAP時、會在第一次建立物件時設定此選項、但稍後可加以變更。此名稱不得與其他物件相同。例如、如果您的UNIX使用者user1屬於Linux用戶端上名為user1的群組、則Windows不允許兩個具有相同CN屬性的物件。若要解決此問題,請將 Windows 使用者重新命名為唯一名稱(例如 user1-UNIX ); Google Cloud NetApp Volumes 中的 LDAP 會使用 UNIX 使用者名稱的 uid 屬性。 |
gidNumber* |
指定UNIX群組的數字ID。 |
objectClass * |
指定使用的物件類型; Google Cloud NetApp Volumes 需要將群組納入物件類別清單(此屬性預設包含在大多數 Active Directory 部署中)。 |
memberUid |
指定哪些UNIX使用者是UNIX群組的成員。在 Google Cloud NetApp Volumes 中使用 Active Directory LDAP 時,不需要此欄位。Google Cloud NetApp Volumes LDAP 架構使用成員欄位作為群組成員資格。 |
成員* |
群組成員資格/次要UNIX群組所需。此欄位是透過新增Windows使用者至Windows群組來填入。但是,如果Windows群組未填入UNIX屬性,則不會包含在UNIX使用者的群組成員資格清單中。任何需要在NFS中使用的群組、都必須填入此表格中所列的必要UNIX群組屬性。 |
-
表示使用 Google Cloud NetApp Volumes 進行適當功能所需的屬性。其餘屬性僅供用戶端使用。
LDAP連結資訊
若要查詢 LDAP 中的使用者, Google Cloud NetApp Volumes 必須連結(登入)至 LDAP 服務。此登入具有唯讀權限、可用於查詢LDAP UNIX屬性以進行目錄查詢。目前只能使用SMB機器帳戶來進行LDAP連結。
您只能為執行個體啟用 LDAP NetApp Volumes-Performance
,並將其用於 NFSv3 , NFSv4.1 或雙傳輸協定磁碟區。Active Directory 連線必須與 Google Cloud NetApp Volumes 磁碟區建立在相同的區域,才能成功部署啟用 LDAP 的磁碟區。
啟用LDAP時、會在特定情況下發生下列情況。
-
如果 Google Cloud NetApp Volumes 專案僅使用 NFSv3 或 NFSv4.1 ,則會在 Active Directory 網域控制器中建立新的機器帳戶,而 Google Cloud NetApp Volumes 中的 LDAP 用戶端則會使用機器帳戶認證連結至 Active Directory 。不會為 NFS 磁碟區建立 SMB 共用,預設的隱藏管理共用區(請參閱一節"「預設隱藏共用」")也會移除共用 ACL 。
-
如果 Google Cloud NetApp Volumes 專案使用雙傳輸協定 Volume ,則只會使用為 SMB 存取所建立的單一機器帳戶,將 Google Cloud NetApp Volumes 中的 LDAP 用戶端繫結至 Active Directory 。不會建立其他機器帳戶。
-
如果專屬SMB磁碟區是分開建立(在啟用LDAP的NFS磁碟區之前或之後)、則LDAP繫結的機器帳戶會與SMB機器帳戶共用。
-
如果也啟用NFS Kerberos、則會建立兩個機器帳戶:一個用於SMB共用和(或)LDAP繫結、另一個用於NFS Kerberos驗證。
LDAP查詢
雖然LDAP繫結已加密、但LDAP查詢會使用通用LDAP連接埠389、以純文字形式透過線路傳送。此已知連接埠目前無法在 Google Cloud NetApp Volumes 中變更。因此、在網路中存取封包偵測功能的人可以看到使用者和群組名稱、數字ID和群組成員資格。
不過、Google Cloud VM無法窺探其他VM的單點傳播流量。只有主動參與LDAP流量(亦即能夠連結)的VM、才能看到來自LDAP伺服器的流量。如需 Google Cloud NetApp Volumes 中封包偵測的詳細資訊,請參閱一節"「封包偵測/追蹤考量。」"
LDAP用戶端組態預設值
當在 Google Cloud NetApp Volumes 執行個體中啟用 LDAP 時,會依預設建立具有特定組態詳細資料的 LDAP 用戶端組態。在某些情況下,選項可能不適用於 Google Cloud NetApp Volumes (不支援),也可能無法設定。
LDAP用戶端選項 | 它的作用 | 預設值 | 可以改變嗎? |
---|---|---|---|
LDAP伺服器清單 |
設定用於查詢的LDAP伺服器名稱或IP位址。這不適用於 Google Cloud NetApp Volumes 。而是使用Active Directory網域來定義LDAP伺服器。 |
未設定 |
否 |
Active Directory網域 |
設定Active Directory網域用於LDAP查詢。Google Cloud NetApp Volumes 利用 DNS 中用於 LDAP 的 SRV 記錄來尋找網域中的 LDAP 伺服器。 |
設定為Active Directory連線中指定的Active Directory網域。 |
否 |
慣用的Active Directory伺服器 |
設定要用於LDAP的慣用Active Directory伺服器。Google Cloud NetApp Volumes 不支援。而是使用Active Directory站台來控制LDAP伺服器選擇。 |
未設定。 |
否 |
使用SMB伺服器認證進行連結 |
使用SMB機器帳戶連結至LDAP。目前是 Google Cloud NetApp Volumes 中唯一支援的 LDAP 繫結方法。 |
是的 |
否 |
架構範本 |
用於LDAP查詢的架構範本。 |
MS-AD-BIS |
否 |
LDAP伺服器連接埠 |
用於LDAP查詢的連接埠號碼。Google Cloud NetApp Volumes 目前僅使用標準 LDAP 連接埠 389 。目前不支援LDAPS/Port 636。 |
389 |
否 |
是否已啟用LDAPS |
控制LDAP over Secure Socket Layer(SSL)是否用於查詢和連結。Google Cloud NetApp Volumes 目前不支援。 |
錯 |
否 |
查詢逾時(秒) |
查詢逾時。如果查詢的時間超過指定值、查詢就會失敗。 |
3. |
否 |
最小綁定驗證層級 |
支援的最低連結層級。由於 Google Cloud NetApp Volumes 使用機器帳戶進行 LDAP 繫結,而 Active Directory 預設不支援匿名繫結,因此此選項無法發揮安全性。 |
匿名 |
否 |
連結DN |
使用簡單繫結時用於繫結的使用者/辨別名稱(DN)。Google Cloud NetApp Volumes 使用機器帳戶進行 LDAP 繫結,目前不支援簡單的繫結驗證。 |
未設定 |
否 |
基礎DN |
用於LDAP搜尋的基礎DN。 |
Windows網域用於Active Directory連線、採用DN格式(亦即DC=DOWN, DC=local)。 |
否 |
基礎搜尋範圍 |
基礎DN搜尋的搜尋範圍。值可以包括base、onel海拔 或子樹狀結構。Google Cloud NetApp Volumes 僅支援子樹狀結構搜尋。 |
子樹狀結構 |
否 |
使用者DN |
定義使用者開始搜尋LDAP查詢的DN。Google Cloud NetApp Volume 目前不支援,因此所有使用者搜尋都會從基礎 DN 開始。 |
未設定 |
否 |
使用者搜尋範圍 |
使用者DN搜尋的搜尋範圍。值可以包括base、onel海拔 或子樹狀結構。Google Cloud NetApp Volumes 不支援設定使用者搜尋範圍。 |
子樹狀結構 |
否 |
群組DN |
定義群組開始搜尋LDAP查詢的DN。目前 Google Cloud NetApp Volumes 不支援,因此所有群組搜尋都會從基礎 DN 開始。 |
未設定 |
否 |
群組搜尋範圍 |
群組DN搜尋的搜尋範圍。值可以包括base、onel海拔 或子樹狀結構。Google Cloud NetApp Volumes 不支援設定群組搜尋範圍。 |
子樹狀結構 |
否 |
網路群組DN |
定義netgroup開始搜尋LDAP查詢的DN。目前 Google Cloud NetApp Volumes 不支援,因此所有 netgroup 搜尋都會從基礎 DN 開始。 |
未設定 |
否 |
網路群組搜尋範圍 |
netgroup DN搜尋的搜尋範圍。值可以包括base、onel海拔 或子樹狀結構。Google Cloud NetApp Volumes 不支援設定 netgroup 搜尋範圍。 |
子樹狀結構 |
否 |
透過LDAP使用start_tls |
利用Start TLS透過連接埠389進行憑證型LDAP連線。Google Cloud NetApp Volumes 目前不支援。 |
錯 |
否 |
啟用各主機的網路群組查詢 |
可依主機名稱進行網路群組查詢、而非展開網路群組以列出所有成員。Google Cloud NetApp Volumes 目前不支援。 |
錯 |
否 |
網路群組的主機DN |
定義netgroup by host開始搜尋LDAP查詢的DN。Google Cloud NetApp Volumes 目前不支援逐主機網路群組。 |
未設定 |
否 |
Netgroup依主機搜尋範圍 |
netgroup by主機DN搜尋的搜尋範圍。值可以包括base、onel海拔 或子樹狀結構。Google Cloud NetApp Volumes 目前不支援逐主機網路群組。 |
子樹狀結構 |
否 |
用戶端工作階段安全性 |
定義LDAP使用的工作階段安全性層級(簽署、認證或無)。如果 Active Directory 要求, NetApp Volumes - Performance 支援 LDAP 簽署。NetApp Volume-SW 不支援 LDAP 簽署。目前不支援這兩種服務類型的密封。 |
無 |
否 |
LDAP參照追蹤 |
使用多個LDAP伺服器時、如果第一個伺服器中找不到項目、參照追蹤功能可讓用戶端參照清單中的其他LDAP伺服器。Google Cloud NetApp Volumes 目前不支援此功能。 |
錯 |
否 |
群組成員資格篩選器 |
提供自訂LDAP搜尋篩選器、以便在從LDAP伺服器查詢群組成員資格時使用。Google Cloud NetApp Volumes 目前不支援。 |
未設定 |
否 |
使用LDAP進行非對稱名稱對應
根據預設, Google Cloud NetApp Volumes 會以雙向方式對應使用者名稱相同的 Windows 使用者和 UNIX 使用者,而無需特殊設定。只要 Google Cloud NetApp Volumes 能找到有效的 UNIX 使用者(使用 LDAP ),就會進行一對一名稱對應。例如,如果使用 Windows 使用者 johnsmith
,則如果 Google Cloud NetApp Volumes 可以找到在 LDAP 中命名的 UNIX 使用者 johnsmith
,則該使用者的名稱對應會成功,所有由建立的檔案 / 資料夾 `johnsmith`都會顯示正確的使用者擁有權,而且無論使用的 NAS 傳輸協定為何,所有影響的 ACL 都 `johnsmith`會受到尊重。這稱為對稱名稱對應。
非對稱名稱對應是指Windows使用者和UNIX使用者身分不相符的情況。例如,如果 Windows 使用者 johnsmith`擁有 UNIX 身分 `jsmith
, Google Cloud NetApp Volumes 就需要一種方法來得知變化。由於 Google Cloud NetApp Volumes 目前不支援建立靜態名稱對應規則,因此必須使用 LDAP 來查詢 Windows 和 UNIX 身分識別的使用者身分,以確保檔案和資料夾擁有適當的所有權,以及預期的權限。
根據預設, Google Cloud NetApp Volumes 包含 `LDAP`在名稱對應資料庫執行個體的 n- 切換中,因此若要使用 LDAP 來提供非對稱名稱的名稱對應功能,您只需要修改部分使用者 / 群組屬性,以反映 Google Cloud NetApp Volumes 所尋找的內容。
下表顯示在LDAP中必須填入哪些屬性才能使用非對稱名稱對應功能。在大多數情況下、Active Directory已設定為執行此作業。
Google Cloud NetApp Volumes 屬性 | 它的作用 | Google Cloud NetApp Volumes 用於名稱對應的值 |
---|---|---|
Windows到UNIX的objectClass |
指定要使用的物件類型。(也就是使用者、群組、posixAccount等) |
必須包含使用者(如有需要、可包含多個其他值)。 |
Windows至UNIX屬性 |
定義建立時的Windows使用者名稱。Google Cloud NetApp Volumes 使用此功能進行 Windows 至 UNIX 查詢。 |
此處無需變更;sAMAccountName與Windows登入名稱相同。 |
UID |
定義UNIX使用者名稱。 |
所需的UNIX使用者名稱。 |
Google Cloud NetApp Volumes 目前未在 LDAP 查詢中使用網域首碼,因此多個網域 LDAP 環境無法在 LDAP 名稱對應查詢中正常運作。
以下範例顯示Windows名稱為「不對稱」、UNIX名稱為「UNIX使用者」的使用者、以及從SMB和NFS寫入檔案時所遵循的行為。
下圖顯示LDAP屬性從Windows伺服器的外觀。
從NFS用戶端、您可以查詢UNIX名稱、但不能查詢Windows名稱:
# id unix-user uid=1207(unix-user) gid=1220(sharedgroup) groups=1220(sharedgroup) # id asymmetric id: asymmetric: no such user
從NFS將檔案寫入為「UNIX使用者」時、NFS用戶端會產生下列結果:
sh-4.2$ pwd /mnt/home/ntfssh-4.2$ touch unix-user-file sh-4.2$ ls -la | grep unix-user -rwx------ 1 unix-user sharedgroup 0 Feb 28 12:37 unix-user-nfs sh-4.2$ id uid=1207(unix-user) gid=1220(sharedgroup) groups=1220(sharedgroup)
從Windows用戶端、您可以看到檔案擁有者已設定為適當的Windows使用者:
PS C:\ > Get-Acl \\demo\home\ntfs\unix-user-nfs | select Owner Owner ----- NTAP\asymmetric
相反地、Windows使用者從SMB用戶端建立的「非對稱」檔案、會顯示適當的UNIX擁有者、如下文所示。
中小企業:
PS Z:\ntfs> echo TEXT > asymmetric-user-smb.txt
NFS:
sh-4.2$ ls -la | grep asymmetric-user-smb.txt -rwx------ 1 unix-user sharedgroup 14 Feb 28 12:43 asymmetric-user-smb.txt sh-4.2$ cat asymmetric-user-smb.txt TEXT
LDAP通道繫結
由於Windows Active Directory網域控制器存在弱點、 "Microsoft安全性摘要報告ADV190023" 變更DC允許LDAP繫結的方式。
對 Google Cloud NetApp Volumes 的影響與對任何 LDAP 用戶端的影響相同。Google Cloud NetApp Volumes 目前不支援頻道繫結。由於 Google Cloud NetApp Volumes 預設支援透過交涉進行 LDAP 簽署,因此 LDAP 通道繫結不應是問題。如果您在啟用通道繫結的情況下,對 LDAP 進行連結時發生問題,請遵循 ADV190023 中的修正步驟,以允許從 Google Cloud NetApp Volumes 進行 LDAP 繫結。
DNS
Active Directory和Kerberos都依賴DNS來解析主機名稱與IP / IP之間的主機名稱。DNS需要開啟連接埠53。Google Cloud NetApp Volumes 不會對 DNS 記錄進行任何修改,也不支援在網路介面上使用 "動態DNS"。
您可以設定Active Directory DNS、限制哪些伺服器可以更新DNS記錄。如需詳細資訊、請參閱 "安全的Windows DNS"。
請注意、Google專案中的資源預設為使用Google Cloud DNS、而Google Cloud DNS並未與Active Directory DNS連線。使用雲端 DNS 的用戶端無法解析由 Google Cloud NetApp Volumes 傳回的 UNC 路徑。加入Active Directory網域的Windows用戶端已設定為使用Active Directory DNS、並可解析此類的UNC路徑。
若要將用戶端加入Active Directory、您必須將其DNS組態設定為使用Active Directory DNS。您也可以設定Cloud DNS、將要求轉送至Active Directory DNS。請參閱 "為什麼我的用戶端無法解析SMB NetBios名稱?"以取得更多資訊。
Google Cloud NetApp Volumes 目前不支援 DNSSEC , DNS 查詢則以純文字執行。 |
檔案存取稽核
目前不支援 Google Cloud NetApp Volumes 。
防毒保護
您必須在用戶端的 Google Cloud NetApp Volumes 中執行防毒掃描至 NAS 共用區。目前沒有與 Google Cloud NetApp Volumes 的原生防毒整合。