如何允许 SAMBA 中的访客访问

如何允许 SAMBA 中的访客访问

所以基本上,我遇到的问题和此主题。我可以看到 samba 打印共享,但无法从 Windows 访问它。顶部答案看起来很有希望,指出我必须执行以下操作:

您需要将 guest 用户添加到 samba 密码数据库。通常,这是通过将 samba 配置文件中的 guest 映射到 UNIX 现有用户来完成的;通过组授予该用户的打印权限;然后您应该能够通过 \server\ URI 访问打印机。

有人能向我解释一下这是怎么做的吗?我在 Google 上搜索过,但没有太大帮助。

谢谢!

更新
这是我的 /etc/samba.conf 文件的打印机部分。如果您需要其余部分,请告诉我,我会将其放在 Google 文档或类似的东西中

[打印机]
注释 = 所有打印机
; 可浏览 = 是
路径 = /var/spool/samba
可打印 = 是
访客确认 = 是
; 只读 = 否
访客帐户 = blain
创建掩码 = 0700

答案1

为了在 Samba 中设置访客访问权限,您需要设置一个用户,它将假装以该用户身份登录。因此,假设您想公开共享 /mnt/somepartition/files 上的文件。您的配置可能如下所示:

[public_files]
    comment = Public files
    path = /mnt/somepartition/files
    browsable = yes
    guest ok = yes
    writable = yes
    guest account = someusername
    create mask = 0775
    directory mask = 0755

这句话的意思是“在 \mymachine\public_files 上创建一个 samba 共享,匿名用户可以查看(不像用户文件那样隐藏),并启用它的写访问权限。匿名用户可以通过使用 someusername 的凭据访问此共享。创建文件时,使它们全局可执行,但全局限制写访问权限。创建目录时,使它们全局可执行,但只能由 someusername 写入。”

完成此操作后,您需要根据您的问题创建一个 smbpassword。为此,首先确保该用户存在于您的服务器中。如果用户不存在,请创建它:

sudo adduser someusername

一旦用户存在,就创建 samba 登录:

sudo smbpasswd -a someusername

需要记住以下几点:public_files 指向的目录需要对 someusername 具有 READ 权限。请确保正确设置权限。如果目录归您所有但仍想让它们可用,请将 someusername 添加到公共组,然后更改组所有权。

答案2

我如何让它在运行 dietpi 的 Pi 上运行。它适用于 Windows (10)、Mac (Catalina) 和 Linux 客户端,并且具有读写权限。注意:我在启动时将 USBHDD 自动安装到 /media/USBHDD。

smb.conf的内容:

[global]
        workgroup = WORKGROUP
        server string = %h server
        dns proxy = no
        log file = /var/log/samba/log.%m
        max log size = 1000
        syslog only = no
        syslog = 0
        panic action = /usr/share/samba/panic-action %d
        security = user
        encrypt passwords = true
        passdb backend = tdbsam
        obey pam restrictions = yes
        unix password sync = yes
        passwd program = /usr/bin/passwd %u
        passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
        pam password change = yes
        map to guest = bad user
        load printers = no
        printcap name = /dev/null
        disable spoolss = yes
[dietpi]
        comment = DietPi Share
        path = /mnt/dietpi_userdata
        browseable = yes
        create mask = 0664
        directory mask = 0775
        valid users = dietpi
        writeable = yes
[PiNAS]
        path = /media/USBHDD
        browseable = yes
        read only = no
        guest ok = yes
        writeable = yes
        create mask = 0775
        directory mask = 0755
max connections = 8

答案3

在“系统偏好设置”>“用户与群组”中有一个复选框,用于启用访客用户对文件共享的访问权限。转到那里即可启用,无需翻查配置文件。

在此处输入图片描述

相关内容