Gerenciando Grupos de Usuários e Compartilhamento Samba com Permissões Personalizadas

1. Criando um Grupo de Usuários no Linux No Linux, os grupos são essenciais para controlar permissões e acesso a arquivos e serviços. Para criar um grupo, utilize o comando: sudo groupadd nome_do_grupo 2. Adicionando Usuários ao Grupo Você pode adicionar usuários individuais ao grupo com o comando: sudo usermod -aG nome_do_grupo usuario1 3.Adicionando Todos os Usuários do Samba ao Grupo for user in $(pdbedit -L | cut -d'|' -f1); do sudo usermod -aG sambagroup $user done Se, por algum motivo, você quiser adicionar todos os usuários do sistema ao grupo, pode usar o seguinte comando: for user in $(cut -f1 -d: /etc/passwd); do sudo usermod -aG pref $user; done Atenção Esse comando adiciona absolutamente todos os usuários listados no sistema, incluindo usuários de sistema que não são normalmente usados para login (como daemon, nobody, etc.). Isso pode gerar riscos de segurança ou comportamentos inesperados. Use apenas se você tiver certeza do que está fazendo. Para adicionar apenas usuários normais, você precisaria de um filtro mais específico. 4.Verificando os Membros de um Grupo Para listar os usuários que pertencem a um grupo, utilize um dos seguintes comandos: getent group nome_do_grupo ou com o grep: grep '^nome_do_grupo:' /etc/group 5.Configurando o Samba para Compartilhamento com Permissões Específicas Agora que você tem seu grupo e usuários preparados, vamos configurar o Samba para criar um compartilhamento onde: Todos os usuários do grupo pref tenham acesso somente leitura. Dois usuários específicos (usuario1 e usuario2) tenham permissão para escrever. Exemplo de configuração no smb.conf Normalmente, o arquivo de configuração do Samba fica em /etc/samba/smb.conf. Edite o arquivo e adicione a seguinte seção (ou modifique a existente): `[global] workgroup = WORKGROUP server string = Servidor Samba netbios name = servidor security = user map to guest = bad user [compartilhamento] path = /caminho/para/o/diretorio browsable = yes guest ok = no read only = yes valid users = @pref write list = usuario1, usuario2 Significado das principais opções: [global]:Configurações gerais do Samba, como nome do grupo de trabalho (workgroup), nome do servidor e modo de segurança. workgroup:Define o grupo de trabalho da rede. security = user: Define o tipo de autenticação, usando usuários existentes. map to guest = bad user: Mapeia usuários não reconhecidos para o guest. [compartilhamento]: Define o compartilhamento com nome compartilhamento. path: Caminho no sistema de arquivos para a pasta compartilhada. browsable: Torna o compartilhamento visível na rede. guest ok = no: Não permite acesso anônimo. read only = yes: Define que o compartilhamento é somente leitura por padrão. valid users = @pref: Permite apenas usuários do grupo pref. write list: Define os usuários específicos que podem escrever no compartilhamento, mesmo que ele esteja definido como somente leitura para os demais. 6.Reiniciando o Serviço Samba Após todas as alterações no smb.conf e permissões, reinicie o serviço Samba para aplicar as mudanças: sudo systemctl restart smbd 7.Excluindo um usuário do grupo: para excluir um usuário específico do grupo: sudo gpasswd -d nome_do_usuario nome_do_grupo 8.Excluindo um grupo utilizando o comando groupdel A sintaxe básica para excluir um grupo é: sudo groupdel nome_do_grupo Considerações Finais Certifique-se de que os comandos e as configurações estão de acordo com a sua distribuição Linux e versão do Samba. Sempre faça backup de arquivos de configuração antes de realizar alterações.

May 8, 2025 - 16:41
 0
Gerenciando Grupos de Usuários e Compartilhamento Samba com Permissões Personalizadas

1. Criando um Grupo de Usuários no Linux No Linux, os grupos são essenciais para controlar permissões e acesso a arquivos e serviços. Para criar um grupo, utilize o comando:

sudo groupadd nome_do_grupo

2. Adicionando Usuários ao Grupo Você pode adicionar usuários individuais ao grupo com o comando:
sudo usermod -aG nome_do_grupo usuario1

3.Adicionando Todos os Usuários do Samba ao Grupo
for user in $(pdbedit -L | cut -d'|' -f1); do sudo usermod -aG sambagroup $user done

Se, por algum motivo, você quiser adicionar todos os usuários do sistema ao grupo, pode usar o seguinte comando:

for user in $(cut -f1 -d: /etc/passwd); do sudo usermod -aG pref $user; done

Atenção
Esse comando adiciona absolutamente todos os usuários listados no sistema, incluindo usuários de sistema que não são normalmente usados para login (como daemon, nobody, etc.). Isso pode gerar riscos de segurança ou comportamentos inesperados. Use apenas se você tiver certeza do que está fazendo. Para adicionar apenas usuários normais, você precisaria de um filtro mais específico.

4.Verificando os Membros de um Grupo Para listar os usuários que pertencem a um grupo, utilize um dos seguintes comandos:
getent group nome_do_grupo

ou com o grep:

grep '^nome_do_grupo:' /etc/group

5.Configurando o Samba para Compartilhamento com Permissões Específicas Agora que você tem seu grupo e usuários preparados, vamos configurar o Samba para criar um compartilhamento onde:

Todos os usuários do grupo pref tenham acesso somente leitura. Dois usuários específicos (usuario1 e usuario2) tenham permissão para escrever. Exemplo de configuração no smb.conf Normalmente, o arquivo de configuração do Samba fica em /etc/samba/smb.conf.

Edite o arquivo e adicione a seguinte seção (ou modifique a existente):

`[global] workgroup = WORKGROUP
server string = Servidor Samba
netbios name = servidor
security = user
map to guest = bad user

[compartilhamento]
path = /caminho/para/o/diretorio
browsable = yes
guest ok = no
read only = yes
valid users = @pref
write list = usuario1, usuario2

Significado das principais opções:
[global]:Configurações gerais do Samba, como nome do grupo de trabalho (workgroup), nome do servidor e modo de segurança.
workgroup:Define o grupo de trabalho da rede.
security = user: Define o tipo de autenticação, usando usuários existentes.
map to guest = bad user: Mapeia usuários não reconhecidos para o guest.
[compartilhamento]: Define o compartilhamento com nome compartilhamento.
path: Caminho no sistema de arquivos para a pasta compartilhada. browsable: Torna o compartilhamento visível na rede. guest ok = no: Não permite acesso anônimo.
read only = yes: Define que o compartilhamento é somente leitura por padrão.
valid users = @pref: Permite apenas usuários do grupo pref.
write list: Define os usuários específicos que podem escrever no compartilhamento, mesmo que ele esteja definido como somente leitura para os demais.

6.Reiniciando o Serviço Samba Após todas as alterações no smb.conf e permissões, reinicie o serviço Samba para aplicar as mudanças:
sudo systemctl restart smbd

7.Excluindo um usuário do grupo: para excluir um usuário específico do grupo:
sudo gpasswd -d nome_do_usuario nome_do_grupo

8.Excluindo um grupo utilizando o comando groupdel A sintaxe básica para excluir um grupo é:

sudo groupdel nome_do_grupo

Considerações Finais
Certifique-se de que os comandos e as configurações estão de acordo com a sua distribuição Linux e versão do Samba.
Sempre faça backup de arquivos de configuração antes de realizar alterações.