如何在 / 上啟用全權限文件瀏覽?
現在,我知道 ServerFault 上有很多 samba 問題(大約 1400 個),我至少瀏覽了大約一半,但無法使用任何答案來解決我的問題。
我們正在一台新的空白機器上安裝 CentOS 6.2 - 全新安裝;它將作為託管 Asterisk 的網路伺服器執行。
我想配置機器,以便從我的 Windows 工作站對 root(我的意思是“/”root)擁有完全的管理訪問權限。
這將使我能夠使用自己舒適的機器(和 Notepad++)來編輯所有配置文件。換句話說,我應該能夠
\\mylinux\etc\samba\
在 Windows 資源管理器中打開,然後擁有smb.conf
使用我的 Windows 文本編輯器進行編輯的完全權限。我在 CentOS 4 上執行得很好,但在 CentOS 6.2 上無法正常工作。在舊的作業系統版本中,所有東西都有一個 GUI,但現在我需要從 CLI 學習和做所有事情。我仍然將 GUI 用於一些我還沒有學會如何通過 CLI 完成的事情,所以我仍然會在我的筆記中引用 GUI。
既然您知道我的問題和目標,這裡有一些細節:
smb
正在執行並安裝並設置為執行級別 35。nmb
正在執行並設置為執行級別 35。- 防火牆在 eth0 上
network
完全打開並且處於打開狀態(我執行了這個命令iptables -A INPUT -s 192.168.0.0/255.255.255.0 -j ACCEPT
:)- 我已經在 linux 機器上添加了我自己的使用者帳戶到
root
組中。- 該使用者帳戶與我的 Windows 電腦具有相同的使用者名和密碼。
- samba 配置為知道我的 Windows 工作組的名稱
- 我可以正常 ping通
\\mylinux
,\\mywindows
反之亦然。- 如果我在 中打開
Network
,\\mylinux
我會收到一條錯誤消息:“無法從伺服器檢索共享列表”,我在此處發布。- 如果我做一個
net view
from\\mywindows
,那麼它根本看不到\\mylinux
。- samba 配置為共享根驅動器:
.
[root] comment = Root Directory path = / valid users = @root all root group invalid users = None writeable = yes browseable = yes
- 此外,在 中
/etc/samba/smbusers.conf
,我已輸入:
myuser = myuser
現在,您會認為我此時可以訪問 linux 共享。但是,當我從我的 Windows 電腦嘗試映射路徑
\\mylinux\root\
時,我收到一條錯誤消息,指出目標不存在。在我的舊 linux 機器上,我什至可以瀏覽\\oldlinux\
並獲取共享列表。我似乎無法複製功能!$$ EDIT $$
好的,我完全禁用了防火牆,現在我可以在任何我想去的地方瀏覽文件。現在剩下的就是編輯像 smb.conf 這樣的文件的權限。換句話說,我用來瀏覽文件的使用者帳戶(位於
root
組中)也需要root
權限。我怎麼得到它?
終於明白了!做了兩件事: - 禁用 selinux - 取消註釋 smb.conf 中的行
username map = /etc/samba/smbusers
然後,在 smbusers.conf 中,我添加了
root = myuser
執行命令:smbpasswd -a myuser smbpasswd -e myuser service smb restart
現在我可以從我的 windows 電腦連接到機器,瀏覽 root 中的文件,並在我的 windows 電腦上使用我最喜歡的文本編輯器編輯它們。
只是給所有人的提示-我確實知道執行我正在工作的程序存在安全風險,但我在安全的防火牆路由器後面,並且只會在 LAN 內以這種方式管理機器。
對於 CentOS7
在 CentOS 7 中,預設情況下它拒絕 ntlm 身份驗證以進行 root 訪問——這意味著你無法連接到 root 帳戶——除非你將它添加到
[global]
smb.conf 的部分:ntlm auth = yes
如果您想使用 smbusers 文件,請將其添加到 smb.conf 中的同一全域部分:
username map = /etc/samba/smbusers
然後您可以創建該文件,並添加以下內容:
root = myusername
Samba 將您的訪問映射到伺服器上的 Unix 使用者帳戶,並強制執行該使用者的正常權限。因此,這與授予 Unix 使用者對這些文件的寫訪問權限相同。您要麼需要實際成為
root
使用者(即充當具有寫入權限的文件的所有者),要麼您需要位於對文件具有組寫入權限的組中。後者(略微)更可取,因此將自己添加到root
組中並更改文件權限以允許組寫入。(我假設您知道這樣做的安全隱患。)