1.12. 配置共享以允许不进行身份验证的访问
在某些情况下,您想要共享一个用户无需身份验证即可连接到的目录。若要对此进行配置,请对共享启用guest访问。
不需要身份验证的共享可能会造成安全隐患。
1.12.1. 启用对共享的客户机访问
如果对共享启用了 guest 访问,Samba 会将guest连接映射到guest account
参数中设置的操作系统帐户。如果至少满足以下条件之一,Guest用户就可以访问此共享上的文件:
- 该帐户在文件系统 ACL 中列出
-
other
用户的 POSIX 权限允许这样做
例 1.6. 客户端共享权限
如果您将 Samba 配置为将guest帐户映射到 nobody
(这是默认值),那么以下示例中的 ACL:
-
允许 guest 用户读
file1.txt
-
允许 guest 用户读和修改
file2.txt
-
防止 guest 用户读或修改
file3.txt
-rw-r--r--. 1 root root 1024 1. Sep 10:00 file1.txt -rw-r-----. 1 nobody root 1024 1. Sep 10:00 file2.txt -rw-r-----. 1 root root 1024 1. Sep 10:00 file3.txt
流程
编辑
/etc/samba/smb.conf
文件:如果这是您在这个服务器上设置的第一个客户机共享:
在
[global]
部分中设置map to guest = Bad User
:[global] ... map to guest = Bad User
使用这个设置,Samba 将拒绝使用错误密码的登录尝试,除非用户名不存在。如果指定的用户名不存在,并且对共享启用了 guest 访问,那么 Samba 会将连接视为guest登录。
默认情况下,Samba 将 guest 帐户映射到 Red Hat Enterprise Linux 上的
nobody
帐户。另外,您也可以设置另外一个帐户。例如:[global] ... guest account = user_name
此参数中设置的帐户必须在 Samba 服务器中本地存在。出于安全考虑,红帽建议使用没有分配有效 shell 的帐户。
在
[example]
共享部分中添加guest ok = yes
设置:[example] ... guest ok = yes
验证
/etc/samba/smb.conf
文件:# testparm
重新载入 Samba 配置:
# smbcontrol all reload-config