Automatizar o controle de um servidor de compartilhamentos Samba
Publicado por Denilson Martins (última atualização em 10/02/2015)
[ Hits: 3.926 ]
Homepage: www.compels.net
Criei o script para automatizar o controle de usuários no Samba, cabe melhorias mas por enquanto é um script de uma ideia inicial.
#!/bin/bash # @uthor - Denilson Martins -- 01/2015 listaUsuarios=/etc/passwd listaGrupos=/etc/group Menu() { clear echo "#################################################" echo "# USUARIOS COMPARTILHAMENTO: #" echo "# --------------------------------------------- #" echo "# 1-> ADICIONAR USUARIO: #" echo "# 2-> DELETAR USUARIO: #" echo "# 3-> TROCAR SENHA USUARIO: #" echo "# 4-> ADICIONAR GRUPO DE USUARIOS: #" echo "# 5-> DELETAR GRUPO DE USUARIOS: #" echo "# 6-> ADICIONAR USUARIO A UM GRUPO EXISTENTE: #" echo "# 7-> REMOVER USUARIO DE UM GRUPO EXISTENTE: #" echo "# 8-> LISTAR USUARIOS DE UM GRUPO EXISTENTE: #" echo "# QUALQUER TECLA DIFERENTE PARA SAIR: #" echo "# --------------------------------------------- #" echo "# DIGITE UMA OPCAO: #" echo "#_______________________________________________#" read op case $op in 1) Adicionar ;; 2) Deletar ;; 3) TrocarSenha ;; 4) AdicionarGrupo ;; 5) DeletarGrupo ;; 6) AdicionarUsuarioGrupo ;; 7) RemoverUsuarioGrupo ;; 8) ListarUsuarioGrupo ;; *) exit ;; esac } Adicionar(){ listaUsuarios echo "Digite o nome do usuario" read user adduser --no-create-home --disabled-login $user smbpasswd -a $user /etc/init.d/samba restart listaUsuarios msgVoltar } Deletar(){ listaUsuarios echo "Digite o nome do usuario" read user smbpasswd -x $user deluser $user /etc/init.d/samba restart listaUsuarios msgVoltar } TrocarSenha(){ listaUsuarios echo "Digite o nome do usuario" read user smbpasswd -a $user /etc/init.d/samba restart msgVoltar } AdicionarGrupo() { listaGrupos echo "Digite o nome do grupo: " read grupo addgroup $grupo listaGrupos msgVoltar } DeletarGrupo() { listaGrupos echo "Digite o nome do grupo: " read grupo delgroup $grupo clear listaGrupos msgVoltar } AdicionarUsuarioGrupo() { listaUsuarios echo "Digite o nome do usuario" read user listaGrupos echo "Digite o nome do grupo" read grupo adduser $user $grupo msgVoltar } RemoverUsuarioGrupo() { listaUsuarios echo "Digite o nome do usuario" read user listaGrupos echo "Digite o nome do grupo" read grupo deluser $user $grupo msgVoltar } ListarUsuarioGrupo() { listaGrupos echo "Digite o nome do grupo" read grupo cat $listaGrupos | grep $grupo | awk -F: '{ print "--------------------------- \n" "Usuarios do grupo $grupo:\n" $4}' echo "---------------------------" echo "Enter para continuar:" read msgVoltar } ## Funcoes basicas mas com bastante repeticao listaUsuarios() { clear echo "---------------------------" echo "Usuarios ativos no compartilhamento" echo "---------------------------" cat $listaUsuarios | grep [0-1][0-9][0-9][0-9] | awk -F: '{print $1}' echo "---------------------------" } listaGrupos() { clear echo "---------------------------" echo "Grupos ativos no compartilhamento" echo "---------------------------" cat $listaGrupos | grep [0-1][0-9][0-9][0-9] | awk -F: '{print $1}' echo "---------------------------" } msgVoltar(){ echo "--------------------------" echo "Voltando ao Menu principal" echo "--------------------------" sleep 3 Menu } Menu
Estatísticas de tráfego de rede
Bloquear contas em servidor Zimbra após 45 dias
Copiando um arquivo matriz para vários outros com nomes diferentes...
Configuração Apache e DNS (bind)
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Não to conseguindo resolver este problemas ao instalar o playonelinux (1)
Excluir banco de dados no xampp (1)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta