Usando dialog para adiciona usuários no squid

Publicado por Vinícius Silva Teixeira 31/10/2005

[ Hits: 6.852 ]

Download adduser




Ae galera!
É o seguinte! Eu tive q instala o squid com autenticação aqui na empresa onde trabalho....e eu tava tendo uma certa dificuldade (mão de obra)....na hora que eu ia adiciona um usuário com permissão total ou parcial!
Dai escrevi o meu primeiro shell usando dialog para adicionar os usuários.
Qualquer dica, sugestão ou comentário....postem por favor!
Vlw!

  



Esconder código-fonte

#!/bin/sh
#Vinicius Silva Teixeira - viniciusst@gmail.com

while : ; do
   
opcao=$(dialog               \
--stdout                  \
--menu 'MENU PRINCIPAL'            \
0 0 0                  \
1 'ADICIONA UM USUÁRIO COM PERMISSÃO TOTAL.'      \
2 'ADICIONA UM USUÁRIO COM PERMISSÃO PARCIAL.'   \
3 'ALTERA A SENHA DE USUÁRIO (QUALQUER PERMISSÃO).'   \
4 'LISTAR USUÁRIOS COM PERMISSÃO TOTAL.'      \
5 'LISTAR USUÁRIO COM PERMISSÃO PARCIAL.'      \
0 'SAIR')                  \
    
case "$opcao" in
1)   nome=$(dialog   \
--stdout         \
--title 'USUÁRIO MASTER'   \
--inputbox 'INFORME O NOME:'    \
0 0)
if cat /usr/local/squid/etc/passwd | grep "$nome:" 1>/dev/null 2>/dev/null;
then
dialog            \
--title 'ERRO'         \
--msgbox 'USUÁRIO JÁ CADASTRADO.'   \
0 0
else
senha=$(dialog         \
--stdout            \
--title 'SENHA MASTER'      \
--passwordbox 'INFORME A SENHA:'   \
0 0)               
htpasswd -b /usr/local/squid/etc/passwd "$nome" "$senha"
echo "$nome" >> /usr/local/squid/etc/listas/auto
dialog               \
--title 'CONFIRMAÇÃO'         \
--msgbox 'USUÁRIO CADASTRADO COM SUCESSO!'   \
0 0                     
fi
;;
2)    nome=$(dialog      \
--stdout            \
--title 'USUÁRIO SLAVE'       \
--inputbox 'INFORME O NOME:'       \
0 0)
if cat /usr/local/squid/etc/passwd | grep "$nome:" 1>/dev/null 2>/dev/null;
then
dialog            \
--title 'ERRO'         \
--msgbox 'USUÁRIO JÁ CADASTRADO.'   \
0 0
else
senha=$(dialog         \
--stdout            \
--title 'SENHA SLAVE'         \
--passwordbox 'INFORME A SENHA:'   \
0 0)
htpasswd -b /usr/local/squid/etc/passwd "$nome" "$senha"
echo "$nome" >> /usr/local/squid/etc/listas/noauto
dialog               \
--title 'CONFIRMAÇÃO'         \
--msgbox 'USUÁRIO CADASTRADO COM SUCESSO!'   \
0 0
fi
;;
3)   nome=$(dialog         \
--stdout               \
--title 'TROCA DE SENHA'         \
--inputbox 'INFORME O NOME DO USUÁRIO:'   \
0 0)
if cat /usr/local/squid/etc/passwd | grep "$nome:" 1>/dev/null 2>/dev/null;
then
senha=$(dialog         \
--stdout            \
--title 'NOVA SENHA'         \
--passwordbox 'INFORME A SENHA'   \
0 0)
htpasswd -b /usr/local/squid/etc/passwd "$nome" "$senha"
dialog                  \
--title 'CONFIRMAÇÃO'            \
--msgbox 'SENHA DO USUÁRIO ALTERADA COM SUCESSO!'   \
0 0
else
dialog            \
--title 'ERRO'         \
--msgbox 'USUÁRIO NÃO EXISTE!'   \
0 0
fi
;;
4)   rm total
tail -f /usr/local/squid/etc/total > total &
dialog               \
--backtitle 'USUÁRIOS COM PERMISSÃO TOTAL'   \
--title 'USUÁRIOS'            \
--tailbox auto            \
0 0
;;
5)   rm parcial
tail -f /usr/local/squid/etc/parcial > parcial &
dialog               \
--backtitle 'USUÁRIOS COM PERMISSÃO PARCIAL'   \
--title 'USUÁRIOS'            \
--tailbox noauto            \
0 0
;;
0)   sair=$(dialog    \
--stdout         \
--yesno 'VOCE DESEJA SAIR?'   \
0 0)         \
&& exit
                    
                    
esac
done
exit

Scripts recomendados

copy - copiar para a área de transferência

Pendetect

Shell Script para instalação do ePSXe no Ubuntu

Sincronizando seu hosts.deny com blacklist online

Gravar CD-R


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts