Automatizar o controle de um servidor de compartilhamentos Samba
Publicado por Denilson Martins (última atualização em 10/02/2015)
[ Hits: 4.220 ]
Homepage: www.vivaolinux.com.br
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
Desligamento da máquina caso o servidor venha a sair do ar.
Nmap,traceroute,ssh,ftp e nbtscan, tudo junto nesse script basicão.
Script que busca IP Livres em uma rede
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
Falha com leitor de digitais no Ubuntu: sugestões? (0)
Problema em SSD ao dar boot LinuxMint LMDE FAYE 64 (1)