Bloqueio de sites por horário: Squid + IPtables
Publicado por Benedito em 13/02/2015
[ Hits: 5.531 ]
#!/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
sudo: /usr/bin/sudo deve ter como dono o uid 0 e tem definido o bit setuid [Resolvido]
Mudando o Destino para Geração de Pacotes dos SlackBuild
Slackpkg plus (instalação e configuração multilib)
Estrutura de diretórios do Linux
Conectar a internet com o Velox (modo texto)
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Tem como instalar o gerenciador AMD Adrenalin no Ubuntu 24.04? (9)