Administração Squid
Publicado por Eduardo Adriano Ramos (última atualização em 19/06/2011)
[ Hits: 7.562 ]
Homepage: http://www.openti.info
Script para administração de Squid e Usuários Administradores do MSN-PROXY (cadastro senha Apache)
configurações para funcionamento:
######MSN-PROXY########
arquivo senhas : /var/www/msn_password
########SQUID##########
arquivo de senha do squid: /etc/squid/senhas/password
sites bloqueados : /etc/squid/bloqueados
usuarios com acesso total: /etc/squid/acesso_total
configuracao squid.conf
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/senhas/password
auth_param basic children 5
auth_param basic realm Acesso Negado! Digite Suas Credenciais.
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive on
redirect_program /usr/lib/squid/jesred
redirect_children 10
acl MsnSources url_regex -i "/etc/squid/sites.msn"
acl MsnDomains dstdomain -i "/etc/squid/sites.msn"
acl MsnUrls urlpath_regex -i "/etc/squid/sites.msn"
acl MsnProgram req_mime_type application/x-msn-messenger
acl MsnManual dstdomain byrdr.omega.contacts.msn.com local-bay.contacts.msn.com byfiles.storage.msn.com akhtm.nspmotion.com blufiles.storage.msn.com www.gowindowslive.com view.atdmt.com local-sn.contacts.msn.com ec.atdmt.com tkrdr.storage.msn.com livefiles19.vo.msecnd.net www.sqm.microsoft.com sqmserver.dll switch.atdmt.com rsi.hotmail.com nspmotion.com icover.com.br rad.msn.com rmd.atdmt.com t.msn.com
http_access allow MsnManual
http_access allow MsnDomains
http_access allow MsnProgram
http_access allow MsnSources
acl password proxy_auth REQUIRED
#--------------ACESSO TOTAL-------------------#
acl total proxy_auth "/etc/squid/acesso_total"
http_access allow total
#----------------ACESSO RESTRITO-------------------#
acl bloqueados url_regex -i "/etc/squid/bloqueados"
http_access deny bloqueados
bin/bash
#Script De Cadastro de Usuarios no Squid
#Autor: Eduardo A. Ramos
while : ; do
acao=$( dialog --stdout \
--menu "Cadastro Squid - Shogun Informatica Ltda." 0 0 0 \
1 "Cadastro de Usuario Proxy" \
2 "Cadastro de Sites Bloqueado" \
3 "Desbloquear Site"\
4 "Listar Usuarios Proxy"\
5 "Lista Sites e Palavras Bloqueadoas"\
6 "Excluir Usuario do Proxy"\
7 "Dar Acesso Total a Usuario"\
8 "Tirar Acesso Total a Usuario"\
9 "Listar Usuarios com Acesso total"\
a "Gerar Relatorio de Acesso a Internet"\
b "Monitorar Proxy Tempo Real Por IP"\
c "Alterar Senha Usuario"\
d "Adiciona Admin. Msn-Proxy"\
0 "Sair")
case "$acao" in
1)
if login=$(dialog --stdout --inputbox "Digite o nome do Usuario:" 0 0)
[ $? -ne 0 ] && continue
[ "$login" ] || continue
cat /etc/squid/senhas/password |grep "$login:" 1>/dev/null\ 2>/dev/null
then
dialog \
--title 'Cadastro' --sleep 2 --msgbox 'Usuario ja cadastrado!' 6 40
else senha=$(dialog --stdout --passwordbox "Digite a Senha:" 0 0)
[ $? -ne 0 ] && continue
[ "$senha" ] || continue
senha2=$(dialog --stdout --passwordbox "Confirme sua Senha:" 0 0 )
[ $? -ne 0 ] && continue
[ "$senha2" ] || continue
htpasswd -b /etc/squid/senhas/password "$login" "$senha"
sed -i "82s/^/acl $login proxy_auth $login\n/" /etc/squid/squid.conf
sed -i "83s/^/http_access allow $login\n/" /etc/squid/squid.conf
squid -k reconfigure
sleep 3
dialog \
--title 'Cadastro' --sleep 3 --msgbox 'Usuario Cadastrado Com Sucesso!' 6 40
clear
fi
;;
2)
site=$(dialog --stdout --inputbox "Digite o Site a Ser Bloqueado:" 0 0 )
[ $? -ne 0 ] && continue
[ "$site" ] || continue
echo $site >> /etc/squid/bloqueados
dialog \
--title 'Site Bloqueado' --sleep 3 --msgbox 'Site Bloqueado Com Sucesso!' 6 40
clear
;;
3)
desbloquear=$(dialog --stdout --inputbox "Digite o Site a ser Desbloqueado" 0 0 )
[ $? -ne 0 ] && continue
[ "$site" ] || continue
sed -i s/"$site"/g /etc/squid/bloqueados
dialog \
--title 'Desbloqueio de Site' --sleep 3 --msgbox 'Site Desbloqueado com Sucesso!'
;;
4)
sed -i '/^$/d' /etc/squid/senhas/password
cut -d ':' -f1 /etc/squid/senhas/password | sort | nl > out &
dialog \
--title 'Usuarios Squid' \
--textbox out \
15 60
;;
5)
sed -i '/ÀÜ$/d' /etc/squid/bloqueados
cat /etc/squid/bloqueados | sort |nl > out &
dialog \
--title 'Sites e Palavras Bloqueadoas' \
--textbox out \
15 60
;;
6)
if remove=$( dialog --stdout --inputbox 'Digite o Usuario a ser Excluido' 0 0 )
[ $? -ne 0 ] && continue
[ "$remove" ] || continue
sed -i /"$remove"/d /etc/squid/squid.conf
htpasswd -D /etc/squid/senhas/password $remove
then dialog --title 'Remover Usuario' --sleep 3 --msgbox 'Usuario Excluido com Sucesso!'
fi
;;
7)
if total=$(dialog --stdout --inputbox 'Digite o Usuario a Ter Permicao Total:' 0 0 )
[ $? -ne 0 ] && continue
[ "$total" ] || continue
echo $total >> /etc/squid/acesso_total
then
dialog --title 'Acesso Total' --sleep 1 --msgbox 'Alterado Permicoes de Usuario Com Sucesso!'
fi
;;
8)
if removetotal=$(dialog --stdout --inputbox 'Digite o Usuario a Retirar Permição Total:' 0 0 )
[ $? -ne 0 ] && continue
[ "$removetotal" ] || continue
sed -i /"$removetotal"/d /etc/squid/acesso_total
sed -i '/ÀÜ$/d' /etc/squid/acesso_total
then dialog --title 'Remorção Acesso Total' --sleep 2 --msgbox 'Retirado permições de Usuario com Sucesso!'
fi
;;
9)
sed -i '/ÀÜ$/d' /etc/squid/acesso_total
cat /etc/squid/acesso_total | sort |nl > out &
dialog \
--title 'Usuarios com Acesso Total' \
--textbox out \
15 60
;;
a)
sarg
;;
b)
tail -f /var/log/squid/access.log | awk '{print$3 " - " $4 " - " $7 }' > out &
dialog \
--title 'monitorando usuario'\
--tailbox out \
30 80
clear
exit
;;
c)
if troca2=$(dialog \
--stdout \
--title 'Redefinir Senha' \
--inputbox 'Informe o Usuario:' \
0 0)
cat /etc/squid/senhas/password | grep "$troca2:" 1>/dev/null 2>/dev/null;
then
senha5=$(dialog \
--stdout \
--title 'Redefinir Senha' \
--passwordbox 'Nova Senha' \
0 0)
htpasswd -b /etc/squid/senhas/password "$troca2" "$senha5"
dialog \
--title 'CONFIRMAÇÃO' \
--msgbox 'Senha Alterada Com Sucesso!' \
0 0
else
dialog \
--title 'Erro!' \
--msgbox 'usuario nao existe' \
0 0
fi
;;
d)
if login_msn=$(dialog --stdout --inputbox "Digite o nome do Usuario:" 0 0)
[ $? -ne 0 ] && continue
[ "$login_msn" ] || continue
cat /var/www/msn_password |grep "$login_msn:" 1>/dev/null\ 2>/dev/null
then
dialog \
--title 'Cadastro' --sleep 2 --msgbox 'Usuario ja cadastrado!' 6 40
else senha_msn=$(dialog --stdout --passwordbox "Digite a Senha:" 0 0)
[ $? -ne 0 ] && continue
[ "$senha_msn" ] || continue
senha2_msn=$(dialog --stdout --passwordbox "Confirme sua Senha:" 0 0 )
[ $? -ne 0 ] && continue
[ "$senha2_msn" ] || continue
htpasswd -b /var/www/msn_password "$login_msn" "$senha_msn"
dialog \
--title 'Cadastro' --sleep 3 --msgbox 'Usuario Cadastrado Com Sucesso!' 6 40
clear
fi
;;
0)
sair=$(dialog \
--stdout \
--yesno 'VOCE DESEJA SAIR?' \
0 0) \
&&
clear
exit
;;
esac
done
exit
Script para criação de pacote rpm.
Script recolher log's servidor
Recriando /dev/null facilmente
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
Como instalar o repositório do DBeaver no Ubuntu
Como instalar o Plex Media Server no Ubuntu
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
Programa fora de escala na tela do pc (10)
Fedora KDE plasma 42 X Módulo de segurança BB (Warsaw-2) (1)
O programa assinador digital (1)









