診斷 Linux Samba 不支持 Windows 文件打開請求的問題
我們有 Windows 2003 域伺服器管理/服務一個小型(10 台機器)網路。使用者主要在 Windows 上工作。我們在同一個網路上有一個 Linux Web 伺服器,具有啟動的 Samba NFS,以及來自域的幾個使用者明確指定為 Samba 的有效訪問者。Linux 機器還充當內部網路的 DNS 伺服器。
直到最近,那些 Windows 使用者才能夠看到 Linux 系統
$$ explore, open/edit/close files, etc. $$ (因此無需直接登錄 Linux 系統即可管理網站)。 突然這不再起作用了;嘗試訪問 Linux 系統會得到一個登錄彈出視窗,但在域(和 Linux)系統上輸入有效的使用者 ID 總是會得到“無法訪問文件”。
如果我們可以提供幫助,我們不會觸及 Web 伺服器配置,而且幾乎沒有必要。我們也盡量不弄亂 Windows 域伺服器。雖然我們在系統管理方面是成熟的業餘愛好者,但很明顯我們不是專家,我們無法猜測可能導致這種情況的變化。我們知道我們最近改變的唯一一件事是上游 DNS 伺服器;似乎我們在很長一段時間內都有錯誤的 DNS 伺服器地址,而那個錯誤的 DNS 伺服器最終變得無法訪問。我們將其更改為我們的 ISP 的 DNS,一切似乎都很好。我們不能肯定地說,在這個切換發生的那一刻,Samba 文件系統變得無法訪問,因為我們每隔幾天才進行一次系統管理。
有什麼想法或在哪裡看?
編輯:事實證明,讓 Linux 系統加入 Windows 域就可以了。令人費解的是,在我們顯然沒有這樣做的情況下,一切都工作了 ~~ 2 年(我們可能已經這樣做並且忘記了,但為什麼加入一個域會消失,我無法理解)。好吧,問題解決了,但不完全清楚問題是什麼。
感謝那些考慮過這個問題的人。
如果故障在您進行 DNS 切換時開始發生,那是我要檢查的第一件事。
但是,您不清楚您更改了哪些 DNS 設置:在您的 samba/Web 伺服器上?在您的 Windows 客戶端上?在你的 Windows 伺服器上?
Samba 可以(取決於您的配置)依賴 DNS 連接到身份驗證的 windows 伺服器(如果它只是進行 NT4 樣式的連接),或者用於 Kerberos 連接(如果它使用 AD 連接進行連接)。因此,如果您在 samba 伺服器上更改了 /etc/resolv.conf 中的 DNS 設置,而它現在根本無法解析 Windows 伺服器,那麼這是一種可能的解釋
首先:檢查您的 samba 日誌文件。通常在 /var/log/samba/ 或類似文件中,但它非常依賴於發行版和管理員。
如果這沒有給您任何明確的想法(例如有關“無法解析主機名”或類似的錯誤),請檢查 smb.conf 文件以查看“安全”設置是什麼,並從那裡確定是否存在解析的 DNS 問題。如果它給出了與登錄嘗試相關的其他錯誤
如果您的安全設置是“伺服器”或“域”,它會執行 NT4 樣式的身份驗證,如果您的安全設置是“ADS”,那麼它會執行基於 kerberos 的 AD 身份驗證。
對於 NT4 風格的身份驗證,通常在 smb.conf 中設置了一個“密碼伺服器”變數 - 如果無法解決,您將無法登錄。對於 ADS 身份驗證,您必須確保您的 /etc/krb5.conf 文件正確,並且其中提到的主機也正確解析。
我不會複製所有關於在這兩種情況下設置 samba 的現有文件,但是這裡有一些指向一些有用的文件的連結: