Kód: Egész kijelölése
#!/bin/bash
#
# for host command install dnsutils from repo or bind-utils
#
domi=domain.com
fredd=/tmp/domaingeller.log
porta=443
proto=tcp
#####Ez alatt ne írj át semmit, csak ha tudod mit csinálsz!#########
while true
do
echo "Hi $domi"
tre=$(host $domi | grep "has address " | cut -d' ' -f4)
lop=$(cat $fredd)
if [ -f "$fredd" ]; then
echo "$fredd exist"
else
echo "$fredd created"
touch $fredd
sleep 2
fi
if [ "$tre" == "$lop" ];then
echo "$tre egyezik $lop -pal"
else
echo "$tre nem egyezik $lop -pal"
xmessage -title "Valami nem kerek" -buttons Ok:0,Cancel:1 -default Ok -nearmouse "$domi kitiltva" -timeout 2
for i in $tre
do iptables -A OUTPUT -p $proto -d $i --dport $porta -j REJECT
done
echo $tre > $fredd
sleep 1
fi
sleep 30
done
Ez a szkript arra jó, hogy tiltsunk egy domain-hez tartozó ip-ket. Amikor elindítjuk létrehoz egy fájlt amit a szerkeszthető részben láthatjuk fredd változóval, továbbá állíthatjuk a porta porttal és domi domain-névvel valamint proto protokollal a szkriptet, hogy mit hogyan tiltson kifelé. 30 másodpercenként újra történik minden, ez egy így végtelen ciklus. Ha a letárolt ip egyezik a host parancséval vissztért friss ip-vel akkor nem történik érdemben semmi. Ha különbség van, akkor lefut az új ip-re a tiltás és erről egy xmessage ablak értesít minket 2 sec-ig. Első alkalommal nem fog egyezni mivel még nincs a fájl, ezért kapásból kitiltja a domain -t majd utána amikor nézi, hogy létezik e a logfájl, összahasonlítja és amikor nem egyezik mindig tilt.