Servidor Samba cria vários perfis de permissões de usuário

Servidor Samba cria vários perfis de permissões de usuário

Eu tenho um servidor de arquivos Samba em execução e queria saber como poderia criar várias contas de usuário com permissões diferentes. Por exemplo, no momento eu tenho um usuário, smbusr, mas quando faço ssh para o compartilhamento, posso ler, escrever, executar e até mesmo navegar para fora do diretório samba e fazer coisas no computador real. Isso é ruim porque quero poder divulgar meu IP para que amigos/familiares possam usar o servidor, mas não quero que eles possam fazer qualquer coisa.

Quero bloquear o usuário no diretório de compartilhamento do samba (e em todos os subdiretórios). Eventualmente gostaria de vários perfis como (smbusr_R, smbusr_RW, smbguest_R, smbguest_RW).

Também tenho uma segunda pergunta relacionada a isso: o SSH é o melhor método para conectar-se a partir de outras máquinas Unix? E quanto à VPN? Ou simplesmente montando assim:

mount -t ext3 -o user=username //ipaddr/share /mnt/mountpoint

Esse comando de montagem acima é a mesma coisa que uma VPN? Isso está realmente me confundindo.

Obrigado pela ajuda pessoal, deixe-me saber se precisar ver algum arquivo ou precisar de mais informações.

EDIT: Aqui está minha definição de compartilhamento de samba:

[SAMBA]
path = /samba
browseable = yes
guest ok = no
read list = smbusr_RO
write list = smbusr

EDIT2: Aqui está todo o meu arquivo smb.conf:

http://pastebin.com/cUGEF3yi

Responder1

Sim, o Samba pode suportar ACLs hoje em dia. são necessárias algumas linhas na seção global e uma lista de ACLs permitidas e negadas por compartilhamento. alguns ajustes podem ser necessários nas permissões do sistema de arquivos subjacente para suportá-los, já que os sistemas de arquivos ext não executam ACLs por padrão.

aqui está um tutorial:http://aisalen.wordpress.com/2007/08/10/acls-on-samba/

e uma referência geral para o arquivo SMB.conf:http://www.samba.org/samba/docs/man/manpages-3/smb.conf.5.html

Editar: tente alterar sua configuração de compartilhamento assim. observe que os grupos de SO exigem um '@' na frente e que a lista de gravação não implica leitura privada, portanto, coloque ambos os grupos na lista de leitura.

adicione-os aos globais:

invalid users = root
valid users = @smbusers, @smbusers_RO
create mask = 02775
directory mask = 02770

[SAMBA]
comment = Debian File Server With Read Write
invalid users=nobody,nobody
valid users=@smbusr,@smbusr_RO
path = /samba
browseable = yes
guest ok = no
read list = @smbusr,@smbusr_RO
write list = @smbusr
writeable=yes

execute também 'sudo testparm -s' para verificar a integridade do arquivo de configuração.

em termos de permissões do sistema de arquivos, você pode chown -R seus arquivos pertencerem a 'root: smbusers', para que a permissão do seu grupo controle quem pode escrever, e sua outra permissão possa controlar quem pode ler (smb garantirá que as permissões de leitura são concedidos apenas a 'smbusers_RO'). então eu recomendo usar SetGID para que todas as novas pastas criadas no compartilhamento sejam de propriedade de :smbusers e todos os seus smbusers tenham acesso a elas.

chown -R root:smbusers /samba 
chmod -R 2775 /samba

informação relacionada