Archive for the ‘Proxy’ Category

Настройка своего прокси сервера Squid

Sunday, June 13th, 2010 |

Бывает банят по ипу социальные сети, или форумы, или нужно работать с нескольких аккаунтов, короче говоря нужен дополнительный айпи. Если есть свой сервер, где-нибудь в европе или США, то реализовать это довольно просто, нужно лишь поставить Squid :

Fedora/Centos : yum install squid
Ubuntu/Debian : sudo apt-get install squid

Поставим его на автозагрузку (при ребуте)

chkconfig squid on

Старт/Стоп/Рестарт (рестарт нужно делать при обновлении конфига)

service squid start
service squid stop
service squid restart

Посмотреть запущен ли Squid можно так :

pgrep squid

Файл конфигурации должен быть тут : /etc/squid/squid.conf
Если, вдруг, его там нет >>> whereis squid и внимательно втыкаем в показанные папки

По дефолту должно все быть настроено, единственное что нужно это указать свой ип с которого планируется пользоваться прокси.

acl my_work src 192.168.1.0/24
http_access allow my_work

Внимательно правите конфиг, там есть небольшая подъебка, которая неопытных пользователей линукса может ввести в ступор.

После всех объявлений идет такая строчка :

# And finally deny all other access to this proxy
http_access deny all

Т.е. запрет доступа от всего что не перечисленно выше, поэтому все настройки доступа нужно прописывать до этого. Если вам все равно что вашей проксей будут пользоваться все – делаете http_access allow all, тем самым разрешая доступ всему что имеет честь законнектится на 3128 порт. Между делом говоря, деволтный порт так же легко меняется в конфиге :

http_port 3128

Подробнее можно прочитать тут. Если у вас поднять файр, то все несколько сложнее, придется прописывать правила. Squid без проблем работает на OpenVZ контейнере, т.е. на VPS/VDS

Проверка прокси – простейший Proxy Checker.

Friday, August 14th, 2009 |

Недавно возникла задача проверять прокси из списка. Посмотрев в гугл, нашел следующий код :

import urllib2
import socket

def is_bad_proxy(pip):
    try:
        proxy_handler = urllib2.ProxyHandler({'http': pip})
        opener = urllib2.build_opener(proxy_handler)
        opener.addheaders = [('User-agent', 'Mozilla/5.0')]
        urllib2.install_opener(opener)
        req=urllib2.Request('http://www.example.com')  # change the URL to test here
        sock=urllib2.urlopen(req)
    except urllib2.HTTPError, e:
        print 'Error code: ', e.code
        return e.code
    except Exception, detail:
        print "ERROR:", detail
        return True
    return False

def main():
    socket.setdefaulttimeout(120)

    # two sample proxy IPs
    proxyList = ['125.76.226.9:80', '213.55.87.162:6588']

    for currentProxy in proxyList:
        if is_bad_proxy(currentProxy):
            print "Bad Proxy %s" % (currentProxy)
        else:
            print "%s is working" % (currentProxy)

if __name__ == '__main__':
    main()

Все просто, пытаемся открыть ресурс по адресу example.com (который 100% работает), если открыли – все ок, если нет – то нет. Подгрузить список проксей можно и из файла например так :

# Just load list from file
def LoadListFromFile(filename):
    result = []
    fileIn = open(filename, 'r')
    for line in fileIn:
        result.append(line.strip())
    fileIn.close()
    return result

About Me

Few shit about and url More

Want to subscribe?

 Subscribe in a reader Or, subscribe via email:
Enter your email address:  
Find entries :