Travando Msn por horario usando iptables
Dica publicada em Linux / Segurança
Travando Msn por horario usando iptables
Depois de alguma batalha, consegui travar o MSN para algumas máquinas, e ainda por cima por horário, só usando o IPTables. Segue o que fiz:
Criei um arquivo maquinas.txt, contendo os IP's que eu queria travar. Exemplo:
192.168.1.12
192.168.1.15
192.168.1.20
Daí criei um script chamado travarMsn.sh contendo o seguinte:
Criei um arquivo maquinas.txt, contendo os IP's que eu queria travar. Exemplo:
192.168.1.12
192.168.1.15
192.168.1.20
Daí criei um script chamado travarMsn.sh contendo o seguinte:
#!/bin/bash
case "$1" in
start)
for i in $(cat /root/maquinas.txt)
do
iptables -A FORWARD -p tcp -s $i -d 0/0 --dport 1863 -j DROP
iptables -A FORWARD -p udp -s $i -d 0/0 --dport 1863 -j DROP
iptables -A FORWARD -s $i -d loginnet.passport.com -j DROP
iptables -A FORWARD -s $i -m string --string "msn" -j DROP
iptables -A FORWARD -s $i -m string --string "Msn" -j DROP
iptables -A FORWARD -s $i -m string --string "MSN" -j DROP
echo "$i travada para msn."
done
;;
stop)
for i in $(cat /root/maquinas.txt)
do
echo -n "Liberando msn..."
iptables -D FORWARD -p tcp -s $i -d 0/0 --dport 1863 -j DROP
iptables -D FORWARD -p udp -s $i -d 0/0 --dport 1863 -j DROP
iptables -D FORWARD -s $i -d loginnet.passport.com -j DROP
iptables -D FORWARD -s $i -m string --string "msn" -j DROP
iptables -D FORWARD -s $i -m string --string "Msn" -j DROP
iptables -D FORWARD -s $i -m string --string "MSN" -j DROP
echo "feito."
done
;;
esac
case "$1" in
start)
for i in $(cat /root/maquinas.txt)
do
iptables -A FORWARD -p tcp -s $i -d 0/0 --dport 1863 -j DROP
iptables -A FORWARD -p udp -s $i -d 0/0 --dport 1863 -j DROP
iptables -A FORWARD -s $i -d loginnet.passport.com -j DROP
iptables -A FORWARD -s $i -m string --string "msn" -j DROP
iptables -A FORWARD -s $i -m string --string "Msn" -j DROP
iptables -A FORWARD -s $i -m string --string "MSN" -j DROP
echo "$i travada para msn."
done
;;
stop)
for i in $(cat /root/maquinas.txt)
do
echo -n "Liberando msn..."
iptables -D FORWARD -p tcp -s $i -d 0/0 --dport 1863 -j DROP
iptables -D FORWARD -p udp -s $i -d 0/0 --dport 1863 -j DROP
iptables -D FORWARD -s $i -d loginnet.passport.com -j DROP
iptables -D FORWARD -s $i -m string --string "msn" -j DROP
iptables -D FORWARD -s $i -m string --string "Msn" -j DROP
iptables -D FORWARD -s $i -m string --string "MSN" -j DROP
echo "feito."
done
;;
esac
Como pode-se perceber, basta dar o comando:
# travarMsn.sh start
Para que as máquinas especificadas parem de acessar o MSN. Caso queira liberar o acesso, basta dar 'stop' no lugar de 'start'.
Bom, agora só falta adicionar no horário desejado, usando o cron:
# crontab -e
Dentro do arquivo do cron digite:
#Travar as dez da noite, liberar as sete da manhã
#m h dom mon dow command
00 22 * * * /root/travarMsn.sh start
00 07 * * * /root/travarMsn.sh stop
#m h dom mon dow command
00 22 * * * /root/travarMsn.sh start
00 07 * * * /root/travarMsn.sh stop
Facinho né?
[]'s à comunidade!