O Samba “security = user” pode ser usado para compartilhar guest sem o prompt de login do Windows?

2

Estou tentando usar um computador Ubuntu para configurar compartilhamentos do Samba para um laboratório de computadores com Windows (Vista Basic e XP). Duas das ações precisam de logins, mas uma é supostamente uma participação pública. Meu problema é que, quando um computador com Windows tenta fazer login em um compartilhamento público (sem primeiro fazer login em outro compartilhamento), ele solicita um nome de usuário / senha.

Eu sei que esse problema pode ser resolvido definindo "security = share" no arquivo smb.conf, mas também li que isso pode causar outros problemas de segurança e que "security = user" é idealmente o que deveria ser usava. Eu também sei que o manual smb.conf afirma que "segurança = usuário" faz o Windows autenticar antes acessando um compartilhamento.

Então, a minha principal questão é, é possível usar "segurança = usuário" para um compartilhamento de convidado sem o Windows solicitando login? Ou o Samba não faz exceções para compartilhamentos de convidados?

Aqui está o meu arquivo smb.conf, para referência:

[global]
        workgroup = hsbclib
        server string = %h server (Samba, Ubuntu)
        dns proxy = no
        log file = /var/log/samba/log.%m
        max log size = 1000
        syslog = 0
        panic action = /usr/share/samba/panic-action %d
        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
        usershare allow guests = yes
        security = user
        guest ok = yes
        guest account = publicuser
        username map = /etc/samba/smbusers

[printers]
        comment = All Printers
        browseable = no
        path = /var/spool/samba
        printable = yes
        create mask = 0700

[print$]
        comment = Printer Drivers
        path = /var/lib/samba/printers

[mabusclass]
        path = /srv/smb/mabusclass
        writeable = yes
        valid users = mabus, mabusclass

[yearbook]
        path = /srv/smb/yearbook
        writeable = yes
        valid users = yearbook

[public]
        comment = Free Public Storage
        path = /srv/smb/public
        writeable = yes
        guest ok = yes
    
por Kenton 10.12.2010 / 03:14

1 resposta

3

De link

Em suma, você precisa:

  • Um arquivo de mapa de nome de usuário.
  • Um usuário convidado 'nix' válido mapeado para a conta de convidado do Windows ("nobody" na maioria das distros).
  • Configuração adequada do smb.conf.

Neste exemplo, nosso arquivo de mapeamento de nome de usuário é / etc / samba / smbusers. Ele mapeia um usuário 'nix para um usuário do Windows.

Em / etc / samba / smbusers (muitas distros incluem esse arquivo, mas com o padrão comentado):

nobody = guest

No /etc/samba/smb.conf:

[global]
   ...
   security = user
   Map to guest = Bad User
   username map = /etc/samba/smbusers
   ...
-- no 'valid users =' line --

[theshare]
   ...
   guest ok = yes
-- no 'valid users =' line --
    
por 21.01.2011 / 15:34