Bloqueando o uso do UltraSurf
Publicado por Perfil removido (última atualização em 24/10/2009)
[ Hits: 8.838 ]
Esse script, trabalhando em conjunto ao Shorewall, bloqueia totalmente o uso do UltraSurf na rede.
#!/bin/bash # numero limite de servidores (conexoes HTTPS) limitServersHttps=8 # main() makeBlacklist() { # dados Shorewall SHOREWALL="/sbin/shorewall" blacklistFile="/etc/shorewall/blacklist" # arquivos temporarios tempFile1="/tmp/stopUltraSurf_1.tmp" tempFile2="/tmp/stopUltraSurf_2.tmp" cat "$blacklistFile" | grep -v '^#\|^$' > "$tempFile2" for ip in $1 do echo "$ip tcp https" >> "$tempFile2" done cat > "$tempFile1" << EOF #ADDRESS/SUBNET PROTOCOL PORT EOF cat "$tempFile2" | sort | uniq >> "$tempFile1" cat >> "$tempFile1" << EOF #LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE EOF if ! diff -q $tempFile1 $blacklistFile > /dev/null then cat $tempFile1 > $blacklistFile $SHOREWALL refresh 2>&1 > /dev/null fi # remove arquivos temporarios rm -f $tempFile1 $tempFile2 ; exit 0 } # end of makeBlacklist() tempFile0="/tmp/stopUltraSurf_0.tmp" # captura os octetos referentes a rede local (ex.: 192.168.0 ) myNet=$( host $(hostname) \ | awk '{ print $4 }' \ | awk -F"." '{OFS="."} { print $1, $2, $3 }' ) # processa todos os endereços IP da rede local, exceto o IP do servidor for ip in $(echo ${myNet}.{2..254}) do iptstate -s "$ip" -D 443 -1 \ | tail -n +4 \ | awk '{ print $2 }' \ | sort \ | uniq \ > $tempFile0 if [ $(cat "$tempFile0" | wc -l) -ge $limitServersHttps ] then while read line do if host $(echo "$line" | cut -d: -f1) | grep -qi 'dynamic\|adsl' then ipHosts="$ipHosts $ip" ; break fi done < "$tempFile0" fi done # remove arquivo temporario rm -f "$tempFile0" # gera novo arquivo blacklist se houver IP violando a regra [ -z "$ipHosts" ] || makeBlacklist "$ipHosts"
Monitorando processo do Squid em diferentes redes
Inventário e Análise de hardware
Kit de Scripts para Backup (Full + Diferencial + SMBmount + Rede) - Atualizado
Tabela de cores em shellscript
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
Como gerar um podcast a partir de um livro em PDF
Organizando seus PDF com o Zotero
Erro no realm join [Resolvido]
Um programa para baixar vídeos: Parabolic
Como Definir o Painel Principal em Múltiplos Monitores no Linux Mint
Sempre que vou baixar algum pacote acontece o erro dpkg (7)
como instalo panfrost-dri e o driver panfrost fork , ou panfrost (12)