PHP, Веб-инструменты, Веб-сервисы → Что делать с анонимными посетителями?
Ни для кого не секрет, что есть категория пользователей, которые в следствие врожденных паранойи или мелкоуголовных наклонностей (или по иным причинам), стремятся быть неопознаными нигде и никоим образом, и в интернете в том числе.
Для этого они бороздят поисковики запросами «как скрыть свой ip», «как спрятать ip адрес» и т. д. и т. п.
Все это казалось бы не страшным до тех пор, пока такие посетители не вредят интересам, к примеру, вашего сайта.
Давайте рассмотрим гипотетическую ситуацию. У вас есть сайт и вы желаете на нем разместить голосование по какому-либо важному для вас вопросу.
Допустим, вы сделали систему голосования достаточно безопасной, и позаботились о том, чтобы пользователь не смог проголосовать дважды. А для большей чистоты эксперимента, вы даже ограничили возможность голосовния в 1 голос с 1 IP-адреса.
Но что делать, если какой-то поганец никак не уймется и с усердием трет куки в своем браузере и неуклонно подменяет свой IP адресами общедоступных прокси?
Возможный вариант решения:
- для всех, кто пришел через прозрачные публичные прокси — усовершенствовать поиск IP адреса в переменных окружения.
- не давать возможности голосовать всем, кто пришел через публичные анонимные и элитные прокси.
И если первая задача решаема довольно просто путем определения реального айпи из переменных окружения веб-сервера (HTTP_X_FORWARDED_FOR, HTTP_CLIENT_IP), то с решением второй задачи могут возникнуть определенные трудности.
Например, часть анонимных прокси можно засечь путем наличия в переменных окружения веб-сервера переменной HTTP_VIA, а вот с другой частью и с элитными проксями уже сложнее. Они не оставляют следов. И в такой ситуации остается задуматся лишь о том, что необходимо иметь некий актуальный список анонимных и элтных проки, по которому можно осуществить поиск.
Сбор, анализ и поддержка такого списка — задача нетривиальная и требует определенных затрат. Но она решаема — и вы можете ее решить самомтоятельно.
Или же я вам предложу сейчас другой вариант. Вы используете сторонюю базу данных анонимных прокси и веб-сервис к ней для поиска требуемой информации.
Такие базы есть и одна из них создана в рамках проекта «Ваш IP»
Скажу сразу — база все еще на стадии тестирования, но желающие могут получить к ней доступ. SOAP-сервис доступен по адресу: http://smart-ip.net/webservice/proxy?wsdl
Для тех, кто использует PHP 5 на своем веб-сайте доступен API пакет для работы с сервисом.
Внутри пакета — 2 файла:
- soap-client-php5.php — это и есть библиотека классов (API)
- test-client.php — тестовый клиент, демонстрирующий принципы работы с API
Сервис абсолютно бесплатный и работает очень быстро (двоичный поиск по бинарной базе), поэтому особых проблем со скоростью быть не должно.
Удачи в девелопменте.

15:44:36
Вот вы все ищите какую-то защиту,а ведь это как в вооружении.На каждый вид оружия есть другой вид. И что-бы вы тут не придумывали, — другие придумают какой-нибудь другой обход вашей защиты. Сидят одни и те-же программисты,которые сами и придумывают ЗАЩИТУ,а потом сами-же придумывают обхлд э\той защиты и т. д.
06:53:20
Петр, это называется прогресс — то, ради чего мы живем и работаем.