Permissões do Samba usando chmod

Durante a migração do meu servidor para Linux (Ubuntu) tive problemas no compartilhamento Samba, pois aqui na empresa eu só posso ter uma pasta compartilhada e as permissões dos usuários são feitas nas subpastas. Tentei encontrar alguma coisa parecida para me ajudar. Depois de um tempinho (por ser iniciante) consegui. Segue abaixo uma ajudazinha aos iniciantes.

[ Hits: 144.818 ]

Por: Roberto Serrano Camacho em 11/01/2008


Inserindo permissões



Nessa hora, altere o dono e o grupo de acesso de cada pasta. Use o comando:

# chown [opção] [usuário dono].[grupo que acessa] [diretório/pasta]

No meu caso:

# chown root.escritorio /dados/escritorio
# chown root.fabrica /dados/fabrica


Se você colocar a opção -R no lugar de "opção", você altera a propriedade de todas as subpastas ao mesmo tempo.

Altere a permissão da pasta principal:

# chown -R root.users /dados

Neste momento eu tive um problema, eu precisava que ao invés de root ser o dono do arquivo, que um grupo de pessoas fossem o "dono", pois éramos em 3 administradores que precisávamos de acesso total.

Para isso, ver a página "Grupo como Dono".

Voltando:

Mude as permissões da pasta usando o comando:

# chmod [opção] [permissão] [diretório/pasta]

No meu caso:

# chmod 2755 /dados
# chmod -R 2770 /dados/escritorio
# chmod -R 2771 /dados/fabrica


(isso poderia ser substituído por "# chmod -R 2770 /dados", mas eu separei para que você faça permissões referentes para cada pasta)

Quanto a esse número 2770, ele significa o tipo de acesso, existem milhões de artigos quanto a isso, vou dar uma pequena relembrada na página "Permissões Chmod".

Pronto. Cada grupo vai acessar somente a sua pasta, e os usuários rskmacho, administrador, root acessarão todas as pastas com acesso total.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Inserindo permissões
   3. Grupo como dono
   4. Permissões chmod
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Samba standalone server com antivírus

Samba 4 como controlador de domínio com Active Directory da MS

Servidor Samba com autenticação no Windows XP e troca de senha automática

Ambientes mistos e agora?

Solução para Samba e Fedora 5 com HD serial ATA

  
Comentários
[1] Comentário enviado por removido em 11/01/2008 - 16:30h

Bom Artigo... mas lembrando que não é presiso "enganar" o Linux.. vc pode fazer o seguinte:

Crie um usuário Admin para fazer a administração das pastas, mas tirando algumas coisas dele como login pasta home, pois ele vai servir apenas para o samba, assim como os demais usuários. para isso use:

adduser --no-create-home --disabled-login admin
adduser admin funcionarios

Agora deixe ele como dono da pasta:
chown admin.funcionarios

Mas não se esqueça tbm de por o admin no samba:
smbpasswd -a admin

Setando permissões:
chmod 760 pasta (permissão full para dono da pasta, grupo apenas ler e escrever, outros usuários não podem fazer nada ^^)

Isso resolve grades problemas como setores diferente acessarem apenas as suas pastas correspondentes!!!

Espero ter ajudado

[2] Comentário enviado por rskmacho em 07/02/2008 - 10:08h

Ajudou sim, mas eu acho que nao daria certo pra mim.

eu precisava de dois grupos de usuarios, um grupo como own e outro grupo como group para que varias pessoas pudessem ser donos da mesma pasta entende? por isso "Enganamos" o Linux, fazendo ele colocar um usuario como dono, mas dando acesso a um grupo de pessoas.

[3] Comentário enviado por klebersr em 09/09/2008 - 16:05h

Ola rskmacho, parabéns pelo artigo.

Estou com um problema, eu setei todas as permissões nos diretório, tudo separado, usei os chmod e o chown, para dar as permissões, porém, os usuários que não deveriam ter acesso a algumas pastas, teimam em entrar nelas .. via prompt o usuário não tem permissão, via samba, tem.

Vou exemplificar:

Usuário: usuario1
Grupo: vendas

Diretorio e permissões:

drwx------ 5 usuario2 admin 4096 Jan 12 2008 RFED2005

O usuário1 continua entrando nesta pasta normalmente.

no smb.conf está assim:

[dados]
path = /dados
valid users = usuario1 usuario2
admin users = usuario1
public = no
writable = yes
printable = no
create mask = 777
force create mode = 777
force directory mode = 777

Tem alguma ideia?

Kleber Rodrigues

[4] Comentário enviado por rskmacho em 09/09/2008 - 21:28h

kleber, estou de férias, assim que eu voltar eu analiso melhor. mas nao coloca CREATE MASK 777 coloca 770
nunca coloque nada 777.... melhor ainda de 2770

se num der me avisa.

abs

[5] Comentário enviado por klebersr em 17/09/2008 - 14:13h

Coloquei 2770, mas não resolveu não, usuários sem acesso a determinada pasta continua tendo acesso .. não sei como resolver isso.

[6] Comentário enviado por rskmacho em 17/09/2008 - 14:22h

eu reparei tambem que você colocou o usuario1 como USER ADMIN = usuario1


ele vai acessar tudo mesmo...

verifica isso

[7] Comentário enviado por klebersr em 18/09/2008 - 13:35h

Opz, realmente errei no meu exemplo, o usuário não está como user admin, apenas no valid user.

[8] Comentário enviado por rskmacho em 18/09/2008 - 13:58h

verifica duas coisas..

a primeira, vai em /etc/group e ve se o usuario1 nao esta no grupo do usuario2

da o comando: "ls -l" na pasta dados e posta o resultado.


[9] Comentário enviado por rskmacho em 23/09/2008 - 13:26h

se o usuario usuario1 acessa tudo, é provavelmente um erro no smb.conf

[10] Comentário enviado por rickchbz em 14/05/2012 - 14:30h

salve vol !!!!
gostaria de uma opinião/sugestão

quero fazer basicamente isso, compartilhamento da pasta dados com subdiretório de autenticar.

a questão é a seguinte, estou com os arquivos de compartilhamento em um computador windows com permissões de usuário de acordo com o setor, as duvidas são:

*deixo liberado diretorio "dados" copio todos os subdiretórios para depois fazer as permissões

*ou faço as permissões, crio os subdiretórios para depois fazer o bkp

grato pela colaboração!!!

[11] Comentário enviado por rskmacho em 14/05/2012 - 14:40h

Minha sugestão, é que você faça um script bem simples, com todos os chmod necessarios...

ai você faz oq quiser, na ordem que quiser, apenas rodando seu script em todas as alterações...

se eu entendi direito a pergunta.......

[12] Comentário enviado por LucasRodrigues em 25/07/2012 - 00:06h

Olá @rskmacho, parabéns pelo artigo realmente muito bom, sou iniciante em Linux e tenho uma dúvida:

Criei uma pasta raiz afim de testar com maquina virtual o acesso as pastas baseado em permissoes de grupo, assim como vc citou no tópico.
No sistemas Windows eu sei fazer normalmente mas estou com problemas ao criar o usuario no Linux.

no comando para criar um usuario do Samba, o shell me retorna um erro:
#smbpasswd -a Maria
Failed to add entry for user Maria

Alguem do fórum poderia me ajudar?

[13] Comentário enviado por rskmacho em 25/07/2012 - 08:13h

Experimenta criar primeiro o usuario no linux antes de criar o usuário do SMB

No meu caso, eu sempre crio os usuarios com o comando abaixo:

# adduser USUARIO --ingroup GRUPO --no-create-home --disabled-password
# smbpasswd -a USUARIO



Com isso você cria um usuario de acesso via Samba, que não tem login na maquina, nem pasta home...

experimenta assim


[14] Comentário enviado por LucasRodrigues em 25/07/2012 - 22:26h

Rapaz, sem duvida alguma vc sabe mesmo o que fala, rs, fiz do jeito que vc citou e deu certo... Para nao bagunçar meu kubuntu, eu criei uma maquina virtual com o ubuntu server 12.04 LTS, estou gostando bastante, até pq ele é todo em modo texto.

Vou treinar bastante, até para fixar na na memória sobre samba e posteriormente quero aprender a configurar Active Directory no samba4.

Muito obrigado por responder minha duvida!

Voce nem imagina o quanto me ajudou em meu aprendizado.

[15] Comentário enviado por alinem em 23/10/2012 - 14:08h

parabens pelo artigo !!

[16] Comentário enviado por rskmacho em 23/10/2012 - 15:30h

Obrigado


Contribuir com comentário