Держи, накропал на шелле.
[legolegs@battlehummer proxychecker]$ cat proxychecker.sh
#/bin/bash
#ваш айпи (должен быть белым), определить на 2ip.ru
addr=195.34.255.39
#порт для входящих (открыть в фаере), проверить на http://whatsmyip.org/ports/
port=8081
#set +m #не печатать мессаги о фоновых задачах
file=/tmp/proxycheck.txt
function srv_r() {
#trap "killall nc" SIGTERM
echo -n "HTTP/1.0 200 ok
Connection: close
<h1>test</h1>"
}
function check() {
echo -n "Checking $ip:$p..."
srv_r | nc -l $port > $file &
serv=$!
echo -n "GET http://$addr:$port/ HTTP/1.0
Host: $addr:$port
" | nc -w 30 $1 $2 > /dev/null
(sleep 30 ; kill $serv > /dev/null 2> /dev/null) &
wait $serv
if [ -s $file ]; then
if ( cat $file | grep -vi "^host:" | grep "$addr" > /dev/null ); then
echo " НЕ анонимный";
else
echo " анонимный";
fi
else
echo "сдох"
fi
kill -9 $serv 2> /dev/null > /dev/null
rm $file
}
tocheck=(
203.162.183.222:80
219.132.71.131:8080
69.16.193.167:80
149.203.41.2:80
202.159.8.42:3128
219.132.71.131:8080
69.16.193.167:80
149.203.41.2:80
201.116.70.1:8080
66.8.57.189:8080
84.52.92.126:3128
201.6.146.181:6588
213.253.169.130:808
211.151.91.147:3128
190.191.32.7:6588
84.52.92.126:3128
80.92.106.173:3128
83.69.97.14:3128
)
for i in ${tocheck[*]}; do
ip=`echo "$i"| awk -F: '{print $1}'`
p=`echo "$i"| awk -F: '{print $2}'`
check $ip $p
sleep 1 #так проще выйти по ^C
done
Запускать так:
./proxychecker.sh 2> /dev/null