Criação de usuario / gerando senha automatica
Publicado por Pablo Alessandro 01/11/2005
[ Hits: 9.771 ]
Esta com problemas para criar usuarios no postfix (usuario local, não estou utilizando banco de dados), resolvi escrever o script para facilitar minha vida.
#!/bin/bash # ##################################################### # # SCRIPT DESENVOLVIDO PARA CRIAÇÃO DE USUARIO # COM NOME E SOBRENOME E COM GERACAO DE SENHA # AUTOMATICA # # AUTOR: PABLO ALESSANDRO PEREIRA # E-MAIL: pabloalessandro@ig.com.br # DATA: 20/06/2005 # #################################################### CONT=0 CONT1=0 if test $UID = 0; then dialog \ --title "Apresentação"\ --backtitle "Criação de usuários webmail." \ --msgbox "Script desenvolvido para facilitar a criação de usuários do servidor de webmail 20/06/2005" 0 0 while [ ${CONT} -eq 0 ]; do CONT=0 CONT1=0 RESULTADO=`dialog --stdout --menu "Selecione ação desejada:" 0 40 5 \ 1 "Criar usuário" \ 2 "Excluir usuário" \ 3 "Editar senha" \ 4 "Sair"` dialog --infobox "Opcao: $RESULTADO" 0 0 if [ ${RESULTADO} = 1 ]; then while [ ${CONT1} -eq 0 ]; do # Recebe o nome do usuario NOME=`dialog --title "Criação de usuário" --stdout --inputbox "Nome do usuario:" 0 0` if [ $? = 1 ]; then CONT1=1 continue elif [ ${NOME} = ]; then dialog --title "Criação de usuário" --msgbox "Informe o nome do usuário" 8 40 continue fi # Recebe o sobrenome do usuario SOBRENOME=`dialog --title "Criação de usuário" --stdout --inputbox "Sobrenome do usuario:" 0 0` if [ $? = 1 ]; then CONT1=1 continue elif [ ${SOBRENOME} = ]; then dialog --title "Criação de usuário" --msgbox "Informe o Sobrenome do usuário" 0 0 continue fi USUARIO="${NOME}.${SOBRENOME}" # Verifica se o usuario existe grep "^$pabloalessandro:" /etc/passwd > /dev/null id $pabloalessandro if [ $? -eq 0 ]; then dialog --title "Criação de usuário" --msgbox "Usuário \" $pabloalessandro \" já existe, altere o nome e/ou sobrenome !!!" 8 40 continue else # Cria o usuario no sistema com o bash falso useradd -s /bin/false $pabloalessandro SENHA=$(mkpasswd -l 4 -d 3 -C 0 -c 1 -s 0 $pabloalessandro) dialog --title "Criação de usuário" --msgbox "Senha: ${SENHA}" 0 0 fi # Verifica se deseja continuar no insersão de usuario dialog --title "Criação de usuário" --yesno "Deseja cadastrar outro usuário?" 0 0 if [ $? = 0 ]; then continue else CONT1=1 fi done # Excluir usuário elif [ ${RESULTADO} = 2 ]; then while [ ${CONT1} -eq 0 ]; do # Recebe o nome do usuario NOME=`dialog --title "Exclusão de usuário" --stdout --inputbox "Nome do usuario:" 0 0` if [ $? = 1 ]; then CONT1=1 continue elif [ ${NOME} = ]; then dialog --title "Exclusão de usuário" --msgbox "Informe o nome do usuário" 8 40 continue fi # Recebe o sobrenome do usuario SOBRENOME=`dialog --title "Exclusão de usuário" --stdout --inputbox "Sobrenome do usuario:" 0 0` if [ $? = 1 ]; then CONT1=1 continue elif [ ${SOBRENOME} = ]; then dialog --title "Exclusão de usuário" --msgbox "Informe o Sobrenome do usuário" 0 0 continue fi USUARIO="${NOME}.${SOBRENOME}" # Verifica se o usuario existe grep "^$pabloalessandro:" /etc/passwd > /dev/null id $pabloalessandro if [ $? -eq 1 ]; then dialog --title "Exclusão de usuário" --msgbox "Usuário \" $pabloalessandro \" não existe, verifique os dados informados e tente novamente" 8 40 continue fi dialog --title "Exclusão de usuário" --yesno "Deseja excluir o diretorio do usuário?" 0 0 if [ $? = 0 ]; then userdel $pabloalessandro -rf dialog --title "Exclusão de usuário" --msgbox "Usuário \" $pabloalessandro \" e diretório excluido com sucesso." 0 0 else userdel $pabloalessandro dialog --title "Exclusão de usuário" --msgbox "Usuário \" $pabloalessandro \" excluido com sucesso." 0 0 fi # Verifica se deseja continuar no insersão de usuario dialog --title "Exclusão de usuário" --yesno "Deseja excluir outro usuário?" 0 0 if [ $? = 0 ]; then continue else CONT1=1 fi done elif [ ${RESULTADO} = 3 ]; then while [ ${CONT1} -eq 0 ]; do # Recebe o nome do usuario NOME=`dialog --title "Alteração de senha" --stdout --inputbox "Nome do usuario:" 0 0` if [ $? = 1 ]; then CONT1=1 continue elif [ ${NOME} = ]; then dialog --title "Alteração de senha" --msgbox "Informe o nome do usuário" 8 40 continue fi # Recebe o sobrenome do usuario SOBRENOME=`dialog --title "Alteração de senha" --stdout --inputbox "Sobrenome do usuario:" 0 0` if [ $? = 1 ]; then CONT1=1 continue elif [ ${SOBRENOME} = ]; then dialog --title "Alteração de senha" --msgbox "Informe o Sobrenome do usuário" 0 0 continue fi USUARIO="${NOME}.${SOBRENOME}" # Verifica se o usuario existe grep "^$pabloalessandro:" /etc/passwd > /dev/null id $pabloalessandro if [ $? -eq 1 ]; then dialog --title "Alteração de senha" --msgbox "Usuário \" $pabloalessandro \" não existe, verifique os dados informados e tente novamente" 8 40 continue else SENHA=$(mkpasswd -l 4 -d 3 -C 0 -c 1 -s 0 $pabloalessandro) dialog --title "Alteração de senha" --msgbox "Senha: ${SENHA}" 0 0 fi # Verifica se deseja continuar no insersão de usuario dialog --title "Alteração de senha" --yesno "Deseja alterar outra senha?" 0 0 if [ $? = 0 ]; then continue else CONT1=1 fi done elif [ ${RESULTADO} = 4 ]; then clear exit 0 else clear exit 0 fi done else dialog --infobox "Para executar o programa é preciso ter direito de administrador(root)." 0 0 fi
Configurando um Servidor de Nomes no CL10 apenas respondendo algumas perguntas...
POSTFIX AUTOMÁTICO COM MYSQL E IPTABLES - ENVIA MSG CASO O USUÁRIO PASSE 90% DA SUA QUOTA
Cadastro de usuarios para proxy autenticado
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Título: Descobrindo o IP externo da VPN no Linux
Armazenando a senha de sua carteira Bitcoin de forma segura no Linux
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Instalando Brave Browser no Linux Mint 22
vídeo pra quem quer saber como funciona Proteção de Memória:
Encontre seus arquivos facilmente com o Drill
Mouse Logitech MX Ergo Advanced Wireless Trackball no Linux
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Remoção de propaganda com o programa Comskip[AJUDA] (4)
Instalação do drive do adaptador wiffi (5)
Linux Lite Demorando Muito Para Ligar (1)