Bloqueio de sites por horário: Squid + IPtables
Publicado por Benedito em 13/02/2015
[ Hits: 5.752 ]
#!/bin/bash -x ## bloqueia_face - Cria/deleta regras de bloqueio para conexões estabelecidas com o facebook ## Escrito por: Benedito Marques ## CentOS release 6.2 (Final) # Exemplo de uso: ./bloqueia_face ativabloqueio URL="www.facebook.com fbstatic-a.akamaihd.net facebook.com xx-fbcdn-shv-05-iad1.fbcdn fbcdn-profile-a.akamaihd.net" for I in `/bin/echo $URL` do #GUARDA OS IPS DO FACEBOOK FAC=`/usr/bin/dig +short $I | /bin/grep [0-9].[0-9].[0-9].[0-9]` FACEBOOK="$FACEBOOK $FAC" done #GUARDA AS PORTAS DOS SOCKETS DE ORIGEM QUE ESTÃO CONECTADAS AO FACEBOOK SPORTS=$(for i in `/bin/echo $FACEBOOK` ; do /bin/netstat -nt | /bin/grep "`/bin/echo $i`"| /bin/awk -F ' ' '{print $4}' | /bin/cut -d ':' -f5 ; done) if [ "$1" = "ativabloqueio" ]; then #VERIFICA SE A VARIÁVEL $SPORTS É VAZIA if [ -z "$SPORTS" ]; then /bin/echo "Sem conexões com o Facebook. A ativação do bloqueio não é necessária." else for i in `/bin/echo $SPORTS` do for j in `/bin/echo $FACEBOOK` do IP=`/bin/netstat -nt | /bin/grep $i | /bin/awk -F ' ' '{print $5}' | /bin/cut -d ':' -f4` /sbin/iptables -I OUTPUT -d $IP -p tcp --sport $i -m multiport --dports 443,80 -j DROP break done done fi elif [ "$1" = "desativabloqueio" ]; then #COLETANDO REGRAS CRIADAS ANTES /sbin/iptables-save | /bin/grep OUTPUT | /bin/grep DROP | /bin/grep tcp | /bin/grep 443 | /bin/grep 80 | /bin/sed 's/-A/\/sbin\/iptables -t filter -D/g' > /tmp/regras #REMOVENDO REGRAS COLETADAS . /tmp/regras else /bin/echo -e "Argumento incorreto! \nOpções possíveis: ativabloqueio, desativabloqueio." fi
Ativando a rede sem fio do Notebook usando um script
Auto-executar um aplicativo no momento do logon do Gnome
Aprenda a corrigir o erro de pacote não instalável no Ubuntu (dependência libenet2a)
Hora UTC no Windows 2008 R2 e no VirtualBox
O que fazer após instalar Fedora 32 Worksatation
Máquina perereca - até onde é possível o uso de Linux?
Mitigação - O que é e quando é "seguro" desabilitar
A arte e a prática da Disciplina a longo prazo
Topgrade - Atualize seu sistema Linux inteiro com um único comando
Como anda a saúde do disco rígido?
Reescalando a tela hd para fullhd com o xrandr
Debian 13 "trixie&... lançado! (13)
pfSense + SquidGuard + LDAP (5)
Programas nao carrega os topicos (11)
Rede Windows / Linux Mint- pastas e arquivos somente como leitura (4)