Linux

將 samba 有效使用者連結到文本文件

  • August 26, 2021

在我的 samba 配置中 - 我希望它將下面範例共享中的“有效使用者”連結到範例文本文件:

security = user

[example share]
path = /example/path/here
read only = no
guest ok = no
valid users = (LINK TO TEXT FILE)

有效使用者.txt

user1, user2, user3

你不能按照你的要求去做,但我將在這裡描述三種選擇

  1. smb.conf包括一個定義使用者的語法有效的片段。
valid users = user1, user2, user3

在您的共享定義中包含此程式碼段。例如,如果呼叫片段,/usr/local/etc/smb.valid_users.conf您將像這樣聲明您的共享

[example share]
path = /example/path/here
read only = no
guest ok = no
include = /usr/local/etc/smb.valid_users.conf

當您更改使用者列表時,您可能需要重新啟動 samba ( systemctl restart smbd)。請注意,因為這是一個include,所以可以添加任何有效程式碼 - 包括提供比您預期更多的訪問權限的整個共享。不允許不受信任的使用者訪問更改配置文件! 2. 將使用者放入一個組並在共享定義中引用該組。

valid users = @usersgroup

然後像往常一樣創建組usersgroup(查看groupaddaddgroup取決於您的作業系統變體)並將您的使用者添加到其中 3. 模板化smb.conf並根據需要替換。(我最不喜歡的選項。)複製smb.confsmb.conf.template並在您的共享定義中使用這一行,

valid users = %USERSLIST%

然後使用類似的東西sed替換到模板中

sed 's/%USERSLIST%/user1, user2, user3/g' /etc/samba/smb.conf.template >/etc/samba/smb.conf

引用自:https://unix.stackexchange.com/questions/629266