Objetivo:
Explicar como Gerenciar usuarios e grupos no samba4 pelo shell
Introdução:
Este Post tem como objetivo explicar:
Usúarios:
- Trocar senha
- Força a troca de senha no proximo login
- Deletar usuarios
- Listar todos os usuarios do Dominio
- Desabilitar e Habilitar Usuario
- Configurar a expiração de senha
Grupos
- Adicionar
- remover
- Adicionar e remover membros ( usuario ) em grupos
- Podemos adicionar Grupos dentro de outro grupo
No post anterior “Criando usuário Pelo Shell no Samba4” expliquei como criar usuário pelo shell
Cenário:
Servidor: Debian 7
Versão do Samba: 4.0.3
Nome do usuario que sera criado = mundoti e mundoti2
Nome do grupo que sera criado = diretoria e diretoria_ead
Senha do usuario = 1234.Mudar.Senha
Nome do dominio = empresa.net
Diretório de instalação do samba = /opt/samba/
Agora vamos gerencia-los
*Obs: para executar esses comandos sem ter digitar o caminho completo
Ex samba-tool /opt/samba/bin/samba-tool
você tem que ter exporta a variável path do local da instalação do samba4 isso pode ser feito da seguinte forma.
Digitando o comando:
# export PATH=$PATH:"/opt/samba/bin:/opt/samba/sbin”
Trocar senha do usuário:
# samba-tool user setpassword mundoti --newpassword=1234.Mudar.Senha
Trocar senha do usuário e forca a troca no Próximo Login:
# samba-tool user setpassword mundoti --newpassword=1234.Mudar.Senha --must-change-at-next-login
Deletar Usuário:
# samba-tool user delete mundoti
Deletar Usuário e Deletar a sua pasta Home:
# samba-tool user delete mundoti && rm -r /home/samba/mundoti
Listar Todos os Usuários do samba:
# samba-tool user list
Desabilitar o Usuário
com essa opção a conta não pode ser utilizada, mas permanece no servidor:
# samba-tool user disable mundoti
Habilitar Usuário:
# samba-tool user enable mundoti
Expiração de senha do usuário
A expiração de senha para todos os usuários do domínio e feita com outro comando essa altera somente do usuário especificado ( bom para ser usado em certas exceções como por exemplo aquele diretor que insiste em ser uma exceção a regra ) 10 e o numero de dias em que a senha ira expirar:
# samba-tool user setexpiry mundoti --days=10
Desabilitar a expiração de senha:
# samba-tool user setexpiry mundoti --noexpiry
Grupos
Criar um grupo:
# samba-tool group add diretoria
Adicionar Vários Grupos de uma vez:
# samba-tool group add "diretoria diretoria_ead”
Criar um grupo e adicionar um descrição ao grupo:
# samba-tool group add diretoria --description="Grupo da diretoria"
Adicionar um membro a um grupo:
# samba-tool group addmembers diretoria mundoti
Adicionar um Grupo dentro de Outro Grupo
No samba4 podemos adicionar um grupos dentro de outro isso é muito útil
# samba-tool group addmembers diretoria diretoria_ead
Adicionar Vários Membros a um grupo de uma vez só:
# samba-tool group addmembers diretoria "mundoti,mundoti2"
Remover um grupo:
# samba-tool group delete diretoria
Removendo Vários grupos de uma vez:
# samba-tool group delete "diretoria diretoria_ead”
Remover um membro de um grupo:
# samba-tool group removemembers diretoria mundoti
Remover Membros de um grupo:
# samba-tool group removemembers diretoria "mundoti,mundoti2"
Listar todos os grupos:
# samba-tool group list
Listar Usuários pertencente a um grupo:
# samba-tool group listmembers diretoria
Muito bom esse post, caso queira dar um olhada estou desenvolvendo um software de gerenciamento do Samba4 via Web, usando Python + Flask Framework e a API do Samba em Python segue o link:
https://github.com/jniltinho/smb4manager/tree/desenv3
Nilton,
Show, vou conferir. :-)
Abraços
Parabenssss, excelentre trabalho.
Muito Bom estou dando uma olhada
Qual comando para que a senha nunca expire para todos os usuários ?
Boa tarde Jeferson Salles!
Parabéns pelas excelentes discas!
Aproveito a oportunidade para perguntar como eu consigo listar o GID dos grupos do samba4, pois com o comando:
# samba-tool group list, somente me mostra o nome dos grupos. Eu preciso do GID para consgeguir setar algumas permissões no cliente Linux (Ubuntu 14.04 LTS) e ainda não descobri como fazê-lo. Se o nobre amigo puder me dar uma dica eu desde já agradeço!
Saudações!
net getdomainsid
Para remover uma conta de maquina?
Tambem é via samba-tool?
Caso sim, poderia passar a sintaxe
formidável essas explicações. A organização da matéria ajudou na leitura suave
Parabéns!
Tenho uma dúvida: Como faço para que o usuário (Linux ou Windows) altere a senha no primeiro loguim?
Obrigado.
Boa noite,
Alguém sabe me dizer como crio uma OU pelo shell?
Obrigado!
é possivel colocar uma interface de troca de senha para o usuario apos o comando do –must-change-at-next-login
Olá,
Como eu listo os grupos do qual o usuário pertence?
Ola, boa noite !
Meu samba 4 passou apresentar algumas falhas ao tentar ingressar no domínio :
Jul 21 18:39:11 dcserver samba[3602]: [2020/07/21 18:39:11.023926, 0] ../source4/lib/socket/access.c:356(socket_check_access)
Jul 21 18:39:11 dcserver samba[3602]: socket_check_access: Denied connection to ‘smbd’ from LOCAL/unixdom (LOCAL/unixdom)
hosts allow = 127.0.0.1 localhost 10.8.0.0/24
Algum email para consultoria ?