為什麼我無法訪問本地電腦上的管理共享?
我正在使用已設置為 CI/部署測試環境的 Windows Server 2008 R2 (x64) VirtualBox 映像。我已將 VirtualBox 設置為使用僅限內部網路。我已經為我的生產機器/數據庫的名稱設置了主機文件重定向:
127.0.0.1 webserv1 127.0.0.1 webserv2 127.0.0.1 dbserv1 etc.
然後我的部署腳本將嘗試依次部署到每個地址。
我的問題是,當我嘗試點擊
\\webserv1\d$\deployment-directory
,甚至\\webserv1\d$\
,我收到授權提示並且我被拒絕訪問。我在 VirtualBox 控制台上以管理員身份執行;我無法獲得更多授權。我可以打\\127.0.0.1\d$\deployment-directory
。我什至禁用了網路適配器,以確保我沒有以某種方式擊中真正的生產框(並且我驗證了在這種情況下我仍然可以使用機器訪問 localhost)。
有小費嗎?
這最終與名稱解析和權限有關。詳細資訊可以在這篇文章中找到: http ://forums.techarena.in/server-networking/1195474.htm
基本上,必須創建幾個系統資料庫項才能啟用此配置 - 開箱即用的 Windows 不支持它。
從現已失效的網站複製和粘貼(通過WebArchive):
允許其他機器通過 DNS 別名使用文件共享 (DisableStrictNameChecking)
僅此更改將允許網路上的其他機器使用任意主機名連接到機器。(但是,此更改將不允許機器通過主機名連接到自身,請參閱下面的 BackConnectionHostNames)。
- 編輯系統資料庫項
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet \Services\lanmanserver\parameters
並將DisableStrictNameChecking
DWORD 類型的值設置為 1。允許伺服器機器通過 DNS 別名 (BackConnectionHostNames) 與自己使用文件共享
此更改對於 DNS 別名與機器上的文件共享一起使用以找到自身是必要的。這將創建可以在 NTLM 身份驗證請求中引用的本地安全機構主機名。
為此,請對客戶端電腦上的所有節點執行以下步驟:
- 到系統資料庫子項
HKEY_LOCAL_MACHINE\SYSTEM \CurrentControlSet\Control\Lsa\MSV1_0
,添加新的多字元串值BackConnectionHostNames
- 在數值數據框中,鍵入用於電腦上本地共享的 CNAME 或 DNS 別名,然後點擊確定。
注意:在單獨的行中鍵入每個主機名。
為多個 NetBIOS 名稱提供瀏覽功能(OptionalNames)
允許在網路瀏覽列表中查看網路別名。
- 編輯系統資料庫項
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet \Services\lanmanserver\parameters
並添加OptionalNames
Multi-String 類型的值- 添加應在 NetBIOS 瀏覽條目下註冊的以換行符分隔的名稱列表
名稱應符合 NetBIOS 約定(即不是 FQDN,只是主機名)
為列印 (setspn) 等其他 Windows 功能註冊 Kerberos 服務主體名稱 (SPN)
注意:不需要為基本功能執行此操作,此處記錄為完整性。我們遇到了一種 DNS 別名無法工作的情況,因為有舊的 SPN 記錄干擾,因此如果其他步驟不起作用,請檢查是否有任何雜散的 SPN 記錄。
您必須為所有新的 DNS 別名 (CNAME) 記錄註冊 Kerberos 服務主體名稱 (SPN)、主機名和完全限定域名 (FQDN)。如果不這樣做,對 DNS 別名 (CNAME) 記錄的 Kerberos 票證請求可能會失敗並返回錯誤程式碼 KDC_ERR_S_SPRINCIPAL_UNKNOWN。
要查看新 DNS 別名記錄的 Kerberos SPN,請使用 Setspn 命令行工具 (setspn.exe)。Setspn 工具包含在 Windows Server 2003 支持工具中。您可以從 Windows Server 2003 啟動盤的 Support\Tools 文件夾安裝 Windows Server 2003 支持工具。
如何使用該工具列出電腦名的所有記錄:
setspn -L computername
要為 DNS 別名 (CNAME) 記錄註冊 SPN,請使用具有以下語法的 Setspn 工具:
setspn -A host/your_ALIAS_name computername setspn -A host/your_ALIAS_name.company.com computername