Script para alterar listas do Squid
Publicado por Marcelo de Araujo 17/11/2006
[ Hits: 5.932 ]
Segue um script para manipular as listas do Squid, bem simples, mas que me ajudou bastante, principalmente porque é meu primeiro script. Tirei várias idéias de vários scripts que vi.
Se tiverem sugestões para melhorar por favor mandem.
#!/bin/bash # Loop que mostra o menu principal while : ; do # Mostra o menu na tela, com as ações disponíveis resposta=$( dialog --stdout \ --title 'Menu de Bloqueio/Liberao Acesso a Sites' \ --menu 'Escolha o que voce quer fazer:' \ 0 0 0 \ 1 'Incluir Palavras Bloqueadas' \ 2 'Incluir Sites Bloqueados' \ 3 'Incluir Sites Pornos Bloqueados' \ 4 'Liberar Sites pela URL' \ 5 'Liberar Sites pelo IP' \ a 'Usuarios com direito a Consultas' \ b 'Usuarios com direito a Download' \ c 'Usuarios com direito a Download e Consultas' \ d 'Usuarios com direitos TOTAIS' \ e 'Listagens' \ f 'Excluir Usuarios com direito a Consultas' \ g 'Excluir Usuarios com direito a Download' \ h 'Excluir Usuarios com direito a Download e Consultas' \ i 'Excluir Usuarios com direitos TOTAIS' \ r 'SQUID RESTART' \ 0 'Sair' ) # apertou CANCELAR ou ESC, então vamos sair... [ $? -ne 0 ] && break # De acordo com a opção escolhida, dispara programas case "$resposta" in 1) letter=$(dialog \ --stdout \ --inputbox "Digite a Palavra a ser Bloqueada" \ 5 70) if cat /etc/squid/url-letter.txt | grep "$letter" 1>/dev/null 2>/dev/null then dialog \ --title '!!!ATENCAO!!!' \ --msgbox " A Palavra "$letter" ja esta cadastrada PRECIONE ENTER PARA CONTINUAR" \ 0 0 else echo "$letter" >> /etc/squid/url-letter.txt dialog \ --title 'ATENCAO' \ --msgbox " A Palavra $letter foi Bloqueada com Sucesso" \ 0 0 squid -k reconfigure DIALOG=${DIALOG-dialog} (echo "5" ; sleep 2 ; echo "10" sleep 1; echo "50" sleep 1 echo "70" sleep 1 echo "XXX" echo "Squid Restartado com sucesso" echo "XXX"; echo "100" sleep 2 ) | \ $DIALOG --title "AGUARDE SQUID RESTARTANDO" --gauge "" 0 0 0 if [ "$?" = 255 ] ; then echo "fechando" echo "Fechar BOX !" fi fi ;; 2) sites=$(dialog \ --stdout \ --inputbox "Digite o Site a ser bloqueado" \ 0 0) if cat /etc/squid/url-sites.txt | grep "$sites" 1>/dev/null 2>/dev/null then dialog \ --title '!!!ATENCAO!!!' \ --msgbox " O Site $sites ja esta BLOQUEADO PRECIONE ENTER PARA CONTINUAR" \ 0 0 else echo "$sites" >> /etc/squid/url-sites.txt dialog \ --title 'ATENCAO' \ --msgbox " O Site $sites foi BLOQUEADO com Sucesso" \ 0 0 squid -k reconfigure DIALOG=${DIALOG-dialog} (echo "5" ; sleep 2 ; echo "10" sleep 1; echo "50" sleep 1 echo "70" sleep 1 echo "XXX" echo "Squid Restartado com sucesso" echo "XXX"; echo "100" sleep 2 ) | \ $DIALOG --title "AGUARDE SQUID RESTARTANDO" --gauge "" 0 0 0 if [ "$?" = 255 ] ; then echo "fechando" echo "Fechar BOX !" fi fi ;; 3) sitesporn=$(dialog \ --stdout \ --inputbox "Digite o site Porno a ser Bloqueado" \ 0 0) if cat /etc/squid/url-sitesporn.txt | grep "$sitesporn" 1>/dev/null 2>/dev/null then dialog \ --title 'ATENCAO' \ --msgbox " O Site Porno $sitesporn ja esta BLOQUEADO PRECIONE ENTER PARA CONTINUAR" \ 0 0 else echo "$sitesporn" >> /etc/squid/url-sitesporn.txt dialog \ --title 'ATENCAO' \ --msgbox " o Site Porno $sitesporn foi Bloqueado com Sucesso " \ 0 0 squid -k reconfigure DIALOG=${DIALOG-dialog} (echo "5" ; sleep 2 ; echo "10" sleep 1; echo "50" sleep 1 echo "70" sleep 1 echo "XXX" echo "Squid Restartado com sucesso" echo "XXX"; echo "100" sleep 2 ) | \ $DIALOG --title "AGUARDE SQUID RESTARTANDO" --gauge "" 0 0 0 if [ "$?" = 255 ] ; then echo "fechando" echo "Fechar BOX !" fi fi ;; 4) consultas=$(dialog \ --stdout \ --inputbox "Digite o site (URL) a ser liberado" \ 0 0) if cat /etc/squid/url-sitesconsultas.txt | grep "$consultas" 1>/dev/null 2>/dev/null then dialog \ --title 'ATENCAO' \ --msgbox " O Site $consultas ja encontra-se LIBERADO PRECIONE ENTER PARA CONTINUAR" \ 0 0 else echo "$consultas" >> /etc/squid/url-sitesconsultas.txt dialog \ --title 'ATENCAO' \ --msgbox " O Site $consultas foi LIBERADO com sucesso:" \ 0 0 squid -k reconfigure DIALOG=${DIALOG-dialog} (echo "5" ; sleep 2 ; echo "10" sleep 1; echo "50" sleep 1 echo "70" sleep 1 echo "XXX" echo "Squid Restartado com sucesso" echo "XXX"; echo "100" sleep 2 ) | \ $DIALOG --title "AGUARDE SQUID RESTARTANDO" --gauge "" 0 0 0 if [ "$?" = 255 ] ; then echo "fechando" echo "Fechar BOX !" fi fi ;; 5) ip=$(dialog \ --stdout \ --inputbox "Digite o site (IP) a ser liberado" \ 0 0) if cat /etc/squid/url-IP.txt | grep "$ip" 1>/dev/null 2>/dev/null then dialog \ --title 'ATENCAO' \ --msgbox " O IP $ip ja esta LIBERADO PRECIONE ENTER PARA CONTINUAR" \ 0 0 else echo "$ip" >> /etc/squid/url-IP.txt dialog \ --title 'ATENCAO' \ --msgbox " O IP $ip foi Liberado com Sucesso" \ 0 0 squid -k reconfigure DIALOG=${DIALOG-dialog} (echo "5" ; sleep 2 ; echo "10" sleep 1; echo "50" sleep 1 echo "70" sleep 1 echo "XXX" echo "Squid Restartado com sucesso" echo "XXX"; echo "100" sleep 2 ) | \ $DIALOG --title "AGUARDE SQUID RESTARTANDO" --gauge "" 0 0 0 if [ "$?" = 255 ] ; then echo "fechando" echo "Fechar BOX !" fi fi ;; a) c=$(dialog \ --stdout \ --inputbox "digite o usuario a ser cadastrado" \ 0 0) if cat /etc/squid/usuarioC.txt | grep "$c" 1>/dev/null 2>/dev/null then dialog \ --title 'ATENCAO' \ --msgbox " O USUARIO $c JA TEM PERMISSAO PARA CONSULTAS" \ 0 0 else echo "$c" >> /etc/squid/usuarioC.txt dialog \ --title 'ATENCAO' \ --msgbox " O USUARIO $c foi cadastrado com Sucesso" \ 0 0 squid -k reconfigure DIALOG=${DIALOG-dialog} (echo "5" ; sleep 2 ; echo "10" sleep 1; echo "50" sleep 1 echo "70" sleep 1 echo "XXX" echo "Squid Restartado com sucesso" echo "XXX"; echo "100" sleep 2 ) | \ $DIALOG --title "AGUARDE SQUID RESTARTANDO" --gauge "" 0 0 0 if [ "$?" = 255 ] ; then echo "fechando" echo "Fechar BOX !" fi fi ;; b) d=$(dialog \ --stdout \ --inputbox "digite o usuario a ser cadastrado" \ 0 0) if cat /etc/squid/usuarioD.txt | grep "$d" 1>/dev/null 2>/dev/null then dialog \ --title 'ATENCAO' \ --msgbox " O USUARIO $d JA TEM PERMISSAO PARA DOWNLOAD" \ 0 0 else echo "$d" >> /etc/squid/usuarioD.txt dialog \ --title 'ATENCAO' \ --msgbox " O USUARIO $d foi cadastrado com Sucesso" \ 0 0 squid -k reconfigure DIALOG=${DIALOG-dialog} (echo "5" ; sleep 2 ; echo "10" sleep 1; echo "50" sleep 1 echo "70" sleep 1 echo "XXX" echo "Squid Restartado com sucesso" echo "XXX"; echo "100" sleep 2 ) | \ $DIALOG --title "AGUARDE SQUID RESTARTANDO" --gauge "" 0 0 0 if [ "$?" = 255 ] ; then echo "fechando" echo "Fechar BOX !" fi fi ;; c) dc=$(dialog \ --stdout \ --inputbox "digite o usuario a ser cadastrado" \ 0 0) if cat /etc/squid/usuarioCD.txt | grep "$dc" 1>/dev/null 2>/dev/null then dialog \ --title 'ATENCAO' \ --msgbox " O USUARIO $dc JA TEM PERMISSAO PARA CONSULTAS e DOWNLOADS" \ 0 0 else echo "$dc" >> /etc/squid/usuarioCD.txt dialog \ --title 'ATENCAO' \ --msgbox " O USUARIO $dc foi cadastrado com Sucesso" \ 0 0 squid -k reconfigure DIALOG=${DIALOG-dialog} (echo "5" ; sleep 2 ; echo "10" sleep 1; echo "50" sleep 1 echo "70" sleep 1 echo "XXX" echo "Squid Restartado com sucesso" echo "XXX"; echo "100" sleep 2 ) | \ $DIALOG --title "AGUARDE SQUID RESTARTANDO" --gauge "" 0 0 0 if [ "$?" = 255 ] ; then echo "fechando" echo "Fechar BOX !" fi fi ;; d) t=$(dialog \ --stdout \ --inputbox "digite o usuario a ser cadastrado" \ 0 0) if cat /etc/squid/usuarioT.txt | grep "$t" 1>/dev/null 2>/dev/null then dialog \ --title 'ATENCAO' \ --msgbox " O USUARIO $t JA TEM PERMISSAO TOTAL" \ 0 0 else echo "$t" >> /etc/squid/usuarioT.txt dialog \ --title 'ATENCAO' \ --msgbox " O USUARIO $t foi cadastrado com Sucesso" \ 0 0 squid -k reconfigure DIALOG=${DIALOG-dialog} (echo "5" ; sleep 2 ; echo "10" sleep 1; echo "50" sleep 1 echo "70" sleep 1 echo "XXX" echo "Squid Restartado com sucesso" echo "XXX"; echo "100" sleep 2 ) | \ $DIALOG --title "AGUARDE SQUID RESTARTANDO" --gauge "" 0 0 0 if [ "$?" = 255 ] ; then echo "fechando" echo "Fechar BOX !" fi fi ;; e) ./listagem ;; f) et=$(dialog \ --stdout \ --inputbox "Digite o Usuario a ser Excluido" \ 0 0) if cat /etc/squid/usuarioC.txt | grep "$et" then cat /etc/squid/usuarioC.txt | grep -iv "$et" > /etc/squid/novo.tmp && cat /etc/squid/novo.tmp > /etc/squid/usuarioC.txt dialog \ --title 'ATENCAO' \ --msgbox " O USUARIO $et foi excluido com Sucesso" \ 0 0 else dialog \ --title 'ATENCAO' \ --msgbox " O USUARIO $et nao existe" \ 0 0 fi squid -k reconfigure DIALOG=${DIALOG-dialog} (echo "5" ; sleep 2 ; echo "10" sleep 1; echo "50" sleep 1 echo "70" sleep 1 echo "XXX" echo "Squid Restartado com sucesso" echo "XXX"; echo "100" sleep 2 ) | \ $DIALOG --title "AGUARDE SQUID RESTARTANDO" --gauge "" 0 0 0 if [ "$?" = 255 ] ; then echo "fechando" echo "Fechar BOX !" fi ;; g) et=$(dialog \ --stdout \ --inputbox "Digite o Usuario a ser Excluido" \ 0 0) if cat /etc/squid/usuarioD.txt | grep "$et" then cat /etc/squid/usuarioD.txt | grep -iv "$et" > /etc/squid/novo.tmp && cat /etc/squid/novo.tmp > /etc/squid/usuarioD.txt dialog \ --title 'ATENCAO' \ --msgbox " O USUARIO $et foi excluido com Sucesso" \ 0 0 else dialog \ --title 'ATENCAO' \ --msgbox " O USUARIO $et nao existe" \ 0 0 fi squid -k reconfigure DIALOG=${DIALOG-dialog} (echo "5" ; sleep 2 ; echo "10" sleep 1; echo "50" sleep 1 echo "70" sleep 1 echo "XXX" echo "Squid Restartado com sucesso" echo "XXX"; echo "100" sleep 2 ) | \ $DIALOG --title "AGUARDE SQUID RESTARTANDO" --gauge "" 0 0 0 if [ "$?" = 255 ] ; then echo "fechando" echo "Fechar BOX !" fi ;; h) et=$(dialog \ --stdout \ --inputbox "Digite o Usuario a ser Excluido" \ 0 0) if cat /etc/squid/usuarioCD.txt | grep "$et" then cat /etc/squid/usuarioCD.txt | grep -iv "$et" > /etc/squid/novo.tmp && cat /etc/squid/novo.tmp > /etc/squid/usuarioCD.txt dialog \ --title 'ATENCAO' \ --msgbox " O USUARIO $et foi excluido com Sucesso" \ 0 0 else dialog \ --title 'ATENCAO' \ --msgbox " O USUARIO $et nao existe" \ 0 0 fi squid -k reconfigure DIALOG=${DIALOG-dialog} (echo "5" ; sleep 2 ; echo "10" sleep 1; echo "50" sleep 1 echo "70" sleep 1 echo "XXX" echo "Squid Restartado com sucesso" echo "XXX"; echo "100" sleep 2 ) | \ $DIALOG --title "AGUARDE SQUID RESTARTANDO" --gauge "" 0 0 0 if [ "$?" = 255 ] ; then echo "fechando" echo "Fechar BOX !" fi ;; i) et=$(dialog \ --stdout \ --inputbox "Digite o Usuario a ser Excluido" \ 0 0) if cat /etc/squid/usuarioT.txt | grep "$et" then cat /etc/squid/usuarioT.txt | grep -iv "$et" > /etc/squid/novo.tmp && cat /etc/squid/novo.tmp > /etc/squid/usuarioT.txt dialog \ --title 'ATENCAO' \ --msgbox " O USUARIO $et foi excluido com Sucesso" \ 0 0 else dialog \ --title 'ATENCAO' \ --msgbox " O USUARIO $et nao existe" \ 0 0 fi squid -k reconfigure DIALOG=${DIALOG-dialog} (echo "5" ; sleep 2 ; echo "10" sleep 1; echo "50" sleep 1 echo "70" sleep 1 echo "XXX" echo "Squid Restartado com sucesso" echo "XXX"; echo "100" sleep 2 ) | \ $DIALOG --title "AGUARDE SQUID RESTARTANDO" --gauge "" 0 0 0 if [ "$?" = 255 ] ; then echo "fechando" echo "Fechar BOX !" fi ;; r) squid -k reconfigure DIALOG=${DIALOG-dialog} (echo "5" ; sleep 2 ; echo "10" sleep 1; echo "50" sleep 1 echo "70" sleep 1 echo "XXX" echo "Squid Restartado com sucesso" echo "XXX"; echo "100" sleep 2 ) | \ $DIALOG --title "AGUARDE SQUID RESTARTANDO" --gauge "" 0 0 0 if [ "$?" = 255 ] ; then echo "fechando" echo "Fechar BOX !" fi ;; 0) clear break ;; esac done # Mensagem final :) dialog \ --title 'TAREFA FINALIZADA' \ --msgbox "ATE LOGO" \ 5 0 clear
Toca preview de músicas do XMMS
Criar backup do Diretorio /home
Trocar senha de usuário via SSH
Nenhum comentário foi encontrado.
Automatizando digitação de códigos 2FA no browser
Resolver problemas de Internet
Como compartilhar a tela do Ubuntu com uma Smart TV (LG, Samsung, etc.)
Como converter imagens PNG/JPEG para SVG em linha de comando
Fez porcaria no teu repositório Git? Aprenda a restaurar uma versão anterior do seu código!
Restaurando Fontes de Download do Hydra no Linux
Atualizando "na marra" o YT-DLP quando começa a dar erro de downloads
Como instalar o WPS com interface e corretor ortográfico em PT-BR no Arch Linux
[AJUDA] Problemas ao atualizar BIOS da Gigabyte B550M K rev. 1.1 — “RO... (2)
Impossível ativar audio 5.1 (1)
Erro na atualização dos pacotes (1)
Problema com Conexão Outlook via Firewall (OpenSUSE) com Internet Fibr... (3)