## Блокиране на VPN и прокси, което наистина знае какво наблюдава
Всеки, който заобикаля забраната, всеки, който разпространява рекламен спам, и всеки трол, който се завръща на сървър на CS 1.6
пристига през същата врата: VPN, отворен прокси или евтин сървър от център за данни.
Блокирайте SteamID-то, блокирайте адреса, и те се връщат след деветдесет секунди на
друг изход.
Този плъгин прекъсва тази възможност. Всеки адрес за свързване се проверява в реално време спрямо
[antivpn.io](https://antivpn.io), както и всичко, което се класифицира като търговска VPN,
открит прокси сървър, хостинг диапазон или изходен сървър на TOR се премахва, преди да може да се възпроизведе.
---
## Защо не списък с IP адреси?
Списъците с VPN мрежи, които могат да се изтеглят, вече са остарели още в деня на публикуването им. Доставчиците
изходите се редуват непрекъснато и нито един статичен файл не може да разпознае редуван изход на NordVPN
от квотата за интернет доставчици за домашно ползване.
API-то предоставя отговори за всеки адрес в реално време и ви информира *какво* е открило:
```
KICKED: nick [STEAM_0:1:12345678] ip=185.220.101.34
provider=TOR Exit Node asn=AS4224 country=DE risk=98
```
Това е нещо, което можеш да покажеш на играч, който оспорва дузпата. `съвпадащ списък
запис № 48213` не е.
---
## Това не струва нищо на вашия сървър
| | |
|---|---|
| **С резба** | Заявките се изпълняват в работна нишка на libcurl. Нито кадър, нито тик, нито милисекунда забавяне |
| **Обединени** | Десет играчи зад един NAT се отчитат като **едно** заявка, а не като десет |
| **В кеша** | По подразбиране една вердиктна оценка се използва повторно в продължение на един час — на натоварен публичен сървър, който отхвърля повече от половината от всички заявки |
| **Предварително филтрирани** | Частните диапазони, запазените диапазони и адресите от белия списък изобщо не достигат до API-то |
Месечната ви квота се използва за адреси, които наистина се нуждаят от проверка.
---
## Показва дали работи
При повечето плъгини разбираш, че не работят, едва когато се появи първият измамник
чрез. Този пример проверява API-то при стартиране и извежда резултата в конзолата:
```
[AntiVPN] plugin loaded successfully.
[AntiVPN] endpoint: https://api.antivpn.io/v2/check
[AntiVPN] API key: av_live_9f... (72 chars)
[AntiVPN] fail mode: fail-open | risk threshold: off | cache: 3600 s
[AntiVPN] SELF-TEST OK - key accepted, endpoint answered.
[AntiVPN] 8.8.8.8 -> proxy true, risk 88, Google LLC (AS15169)
```
Всичко, което не посочва`SELF-TEST OK` точната причина — отхвърлен ключ,
изчерпана квота, липсващ CA пакет, грешка в DNS. Можете да го изпълните отново по всяко време с
`avpn_test`.
Ключът никога не се отпечатва изцяло. Отпечатва се само толкова, колкото е необходимо за неговото идентифициране.
---
## Настройка, която отразява реалния начин на работа на сървърите
| | |
|---|---|
| **Праг на риска** | Можете да се доверите само на `proxy`индикатора или да отхвърляте всичко, което получи оценка над определената от вас граница. Диапазоните на центровете за данни и наскоро обновените изходи често получават високи оценки, преди да бъдат класифицирани |
| **Отваряне при отказ или затваряне при отказ** | Прекъсването на API-то не трябва да изпразни сървъра ви — затова по подразбиране това не се случва. Активирайте тази опция, ако заобикалянето е по-лошо от грешно изключване |
| **Имунитет** | Чрез флага на администратора или чрез SteamID за членове на екипа, които наистина се нуждаят от VPN. Проверката все пак се извършва и достъпът все пак се записва, така че можете да го видите |
| **Списък с разрешени адреси** | Точни адреси, `/24`и символи`/16` за заместване, SteamID-и. Възможност за презареждане на живо |
| **Задръж** | Блокирайте непроверения играч, докато не бъде постановено решението, така че да няма период, в който потребител на VPN да може да играе |
Всичко се конфигурира от
`configs/CodeStrikePlugins/antivpn.cfg`, който плъгинът сам създава, изцяло
се обработва въз основа на собствените му съставени настройки по подразбиране. Никога не се редактира изходен файл.
---
## Администраторски команди
| | |
|---|---|
| `avpn_check <ip\|име>` | Проверявайте всеки адрес или свързан играч по заявка |
| `avpn_status` | Ключово състояние, размер на кеша, проверени / блокирани / грешки в тази карта |
| `avpn_reload` | Прочетете отново списъка с разрешените адреси, изчистете кеша |
| `avpn_test` | Изпълнете отново проверката на удостоверенията |
---
## Честно казано, има едно ограничение
Двигателят GoldSrc не предлага възможност за поддържане на отворена връзка по време на
HTTP заявката се изпълнява. Има кратък период, през който непроверен клиент е
технически погледнато на сървъра — на практика решението се взема, докато те все още са
зарежда картата и ги `avpn_hold`блокира, докато това не стане.
Всеки плъгин, който твърди, че блокира VPN *преди* свързване, или използва статичен
Списъкът с IP адреси или не ви казва истината.
---
## Изисквания
- AMX Mod X 1.9+ (базиран на версия 1.10)
- Модулът AmxxEasyHttp — **включва бинарен файл за Linux и пакет с сертификати
пакет**, Windows `.dll`се изтегля като един файл
- API ключ за antivpn.io
Работи както с крайната `/v2/check`точка „Enterprise“, така и със стандартната
`/api/check` токен на сървъра.
---
## Какво съдържа опаковката
- `plugins/antivpn.amxx` — компилирано, AMXX 1.10
- `scripting/` — **пълен изходен код**, четири файла, с коментари навсякъде
- `modules/`, `data/`— модулът HTTP и неговият пакет с сертификати за Linux
- `README.md` — договорът за API, всяка променлива на сървъра (cvar), указания за квотите, диагностика
таблица, в която всеки ред от лога е свързан с причината и решението му
- `INSTALL.txt` — пет минути, от началото до края
---
**illusion @ CodeStrike** · [codestrike.store](https://codestrike.store)