Sincronizando seu hosts.deny com blacklist online
Publicado por Fernando (última atualização em 25/11/2013)
[ Hits: 5.909 ]
Homepage: https://github.com/phoemur/
Download synchosts.py (versão 2)
Este script atualiza o seu /etc/hosts e /etc/hosts.deny baseado na blacklist localizada em: http://someonewhocares.org/hosts/
Desta forma você irá bloquear diversos sites maliciosos, inclusive aqueles da oix.net.
#!/bin/sh
#
# This script was made to update your /etc/hosts and /etc/hosts.deny with a blacklist located in http://someonewhocares.org/hosts/
# Written by phoemur - apr/2013
#############
# Variables #
#############
TMP_DIR=/tmp
ROOT_UID=0 #Only users with $UID 0 have root privileges.
E_NOTROOT=87 #Non-root exit error.
E_INVALID=88 #Invalid file exit
E_ARGUMENTS=89 # Invalid arguments exit
WGET=`which wget`
SED=`which sed`
HOSTS_URL=http://someonewhocares.org/hosts/hosts #File already in txt format
# If possible, log events in /var/log/messages:
if [ -f /var/run/syslogd.pid -a -x `which logger` ]; then
LOGGER=`which logger`
else # output to stdout/stderr:
LOGGER=/bin/cat
fi
######################
# To be or not to be #
######################
if [ "$UID" -ne "$ROOT_UID" ]; then
echo "Must be root to run this script."
exit $E_NOTROOT
fi
#############
# Functions #
#############
get_hosts() {
if [ -f "$TMP_DIR/hosts" ]; then
mv $TMP_DIR/hosts $TMP_DIR/hosts.oldtmp
fi
$WGET -c $HOSTS_URL -O $TMP_DIR/hosts
}
update_etc() {
diff -q $TMP_DIR/hosts /etc/hosts
if [ "$?" -eq 0 ]; then
echo "It is not necessary to update your hosts file" | $LOGGER
echo "Your hosts are already up-to-date!!!"
else
grep -q ^127.0.0.1 $TMP_DIR/hosts > /dev/null # Validating the downloaded file
if [ ! $? ]; then
echo "The hosts file downloaded is invalid"
exit $E_INVALID
else # Upgrading
cp /etc/hosts /etc/hosts.old
cp $TMP_DIR/hosts /etc/hosts
cp /etc/hosts.deny /etc/hosts.deny.old
$SED 's/^127\.0\.0\.1/ALL:/g;/localhost/d' $TMP_DIR/hosts > /etc/hosts.deny
echo "There is new version of hosts avaiable which was already upgraded" | $LOGGER
$SED -n '/Last.updated/{s/^#.*updated: \(.*$\)/\1/p}' $TMP_DIR/hosts | $LOGGER
echo "Hosts Upgraded Successfully!!!"
fi
fi
}
usage() {
cat << EOF
This script updates your /etc/hosts and your
/etc/hosts.deny based in the blacklist located
here: http://someonewhocares.org/hosts/hosts
Options: --upgrade (Updates your hosts)
--update (Only downloads the new file for inspection.
Location: /tmp/hosts)
--help (Displays this help)
EOF
}
############
### MAIN ###
############
case "$1" in
'--upgrade')
get_hosts
update_etc
exit 0
;;
'upgrade')
get_hosts
update_etc
exit 0
;;
'--update')
get_hosts
echo "Your hosts file is located at /tmp for inspection"
exit 0
;;
'update')
get_hosts
echo "Your hosts file is located at /tmp for inspection"
exit 0
;;
'--help')
usage
exit 0
;;
'help')
usage
exit 0
;;
*)
usage
exit $E_ARGUMENTS
esac
# End of script
Shell Script básico para gerenciar usuários e bancos no MySQL ou MariaDB
Montando imagens como Partições
Solução para bloquear totalmente o Facebook em sua rede
Nenhum comentário foi encontrado.
File Browser: Crie sua Nuvem Pessoal Privada
A produção de áudio e vídeo no Linux e as distribuições dedicadas a esse fim
Criptografando sua Home com Gocryptfs para tristeza do meliante
A Involução do Linux e as Lambanças Desnecessárias desde o seu Lançamento
O Journal no Linux para a guarda e consulta de logs do sistema
Gerenciamento de Vídeo Híbrido (Intel/NVIDIA) via nvidia-prime no Ubuntu e derivados
Assistindo IPTV no Linux com Fred TV e Lista Free TV
Impressora Tomate MDK-007 no Ubuntu (ou qualquer distro Linux)
Acelerando a compilação de pacotes no Arch Linux (AUR) usando todos os núcleos do processador
Depois não querem que eu fale sobre as baseadas... (5)
Tive um problema ao abrir minha partição Btrfs. Como posso resolver is... (0)









