Whois Ban

Whois Ban
Прямая 5 Кб
  • Размер: 5 Кб
  • Просмотров: 1
  • Комментариев: 0
  • Оценка: 0

Whois Ban -  через стандартный модуль sockets, он обращается на API сайта ip-api.com для получения Whois данных. К сожалению, альтернативных сайтов практически нет, т.к. все перешли на https, а предлагаемый AMX модуль такое не поддерживает (правда есть сторонние решения в виде модуля Curl, но об этом в другой раз).

Сайт ip-api.com имеет ряд ограничений на бесплатном тарифе (регистрация не требуется), по этому в плагине встроено кеширование, чтобы он по дружески относился к вашему серверу и сайту.

Что можно получить через Whois данные ?
В нашем случае, мы можем получить самое главное - это AS провайдера (вики), с которого заходит игрок. Проще говоря, нам не нужно определять диапазоны IP адресов и заниматься подобной дичью, а можем выдавать бан сразу по AS, отрубив всего провайдера целиком.

Подобную идею реализовал Lev и своем плагине СубнетБан, в виде отдельного амх модуля, но та разработка реально старая, а модуль на новых билдах серверов (в частности на линуксе), толком не работает.

Код для этого плагина я писал для себя, чтобы бороться с обходами. Весь код снабжен комментариями. Можете использовать в своих целях. Ничего подобного по реализации вы в Интернетах не найдете. Используются отложенные запросы, что не вызывает фризов на сервере, но на всяких случай в плагин встроен предохранитель, отключающий его работы, если по какой-то причине функция socket_open начнет капризничать.

Как это работает ?
При получении данных с Whois через Api, плагин их кеширует и сверяется со списком из файла whois_banlist.ini
Если AS игрока совпадает, он кикается.
В сам файли я уже добавил несколько AS хостингов и дата-центров.
Я предлагаю продолжить тему и публиковать IP адреса AS провайдеров игроков, которые играют через прокси. Я, по мере возможности, буду их добавлять и обновлять список.

Что такое Whois данные и что с ними делать ?
Самый простой способ получения Whois данных и AS по IP адресу здесь: https://2ip.ru/whois/
Отличить хостинг/дата-центр от домашнего провайдера достаточно легко. Многие указывают в данных слова Hosting, vds, и т.д.
Так же, практически всегда есть почта, которая и является сайтом провайдера или название фирмы, которое легко гуглится. С хостингов и дата-центров обычные игроки не заходят.

Минимальные требования 
AmxModX 1.8.3 и выше с поддержкой SOCK_NON_BLOCKING

Дополнительно
В плагин добавлено логгирование, в тех случаях, когда не удается получить ответ от сайта или определить AS. Это бывает редко и я грешу на сам модуль sockets, т.к. тот же Curl справляется с более сложными задачами без проблем.


Автор: SISA
Версия: 2.0

Автор новости:
Создатель многих сайтов и мониторингов, программист со стажем. Обожаю игры CS 1.6 и CSS v34. Каждый день обновляю свои сайты и делаю все что бы вам было интересно.

Модуль защиты ReAuthCheck
Модуль защиты ReAuthCheck
Модуль предназначенный для защиты и борьбы с различными рода
Запуск сервера CS 1.6 на VDS Linux
Запуск сервера CS 1.6 на VDS Linux
Краткий и простой мануал по запуску личного сервера CS 1.6 на VDS.
Counter-Strike 1.6 Extra
Counter-Strike 1.6 Extra
Counter Strike 1.6 Extra — неофициальная версия игры, созданная
Counter-Strike 1.6 Enot
Counter-Strike 1.6 Enot
CS 1.6 Enot - имеет уникальное фоновое изображение в главном меню, на
[ReAPI] Stop the Bastards - Наказания для игрока
[ReAPI] Stop the Bastards - Наказания для игрока
Плагин Stop the Bastards для CS 1.6 позволяет организовать защиту на
Counter-Strike 1.6 Santehnik
Counter-Strike 1.6 Santehnik
CS 1.6 от Santehnik приправлен юмором, присущим автору, который
Movie

Нет комментариев. Гость, не желаешь оставить первый комментарий?

Перед публикацией, советую ознакомится с правилами!

{login}

Твой комментарий..

Кликните на изображение чтобы обновить код, если он неразборчив