## Blokowanie sieci VPN i serwerów proxy, które faktycznie rozpoznaje, z czym ma do czynienia
Każdy, kto omija blokadę, każdy, kto rozsyła spam reklamowy, oraz każdy powracający troll na serwerze CS 1.6
trafia przez te same drzwi: przez VPN, otwarty serwer proxy lub tanie urządzenie z centrum danych.
Zablokuj SteamID, zablokuj adres, a oni wrócą w dziewięćdziesiąt sekund na
inne wyjście.
Ta wtyczka eliminuje to zagrożenie. Każdy adres łączący się z serwisem jest na bieżąco sprawdzany pod kątem
[antivpn.io](https://antivpn.io) oraz wszelkie serwisy zaklasyfikowane jako komercyjne sieci VPN,
otwarty serwer proxy, zakres adresów hostingowych lub węzeł wyjściowy sieci TOR są usuwane, zanim będą mogły zacząć działać.
---
## A może lista adresów IP?
Listy dostępnych sieci VPN do pobrania tracą aktualność już w dniu ich opublikowania. Dostawcy
Wyjścia są na bieżąco rotowane i żaden statyczny plik nie jest w stanie zidentyfikować rotowanego wyjścia NordVPN
z puli przydzielonej dostawcy usług internetowych dla klientów indywidualnych.
Interfejs API zwraca wyniki dla każdego adresu w czasie rzeczywistym i informuje o znalezionych danych:
```
KICKED: nick [STEAM_0:1:12345678] ip=185.220.101.34
provider=TOR Exit Node asn=AS4224 country=DE risk=98
```
To jest coś, co możesz pokazać graczowi, który kwestionuje decyzję o rzucie karnym. `lista dopasowań
„wpis nr 48213” nie jest.
---
## To nic nie kosztuje Twojego serwera
| | |
|---|---|
| **Z gwintem** | Żądania są przetwarzane w wątku roboczym biblioteki libcurl. Żadnego zacięcia – ani w ramce, ani w cyklu, ani nawet w milisekundzie |
| **Połączone** | Dziesięciu graczy za jednym serwerem NAT to **jedno** żądanie, a nie dziesięć |
| **W pamięci podręcznej** | Domyślnie wynik jest ponownie wykorzystywany przez godzinę — na obciążonym serwerze publicznym, który odrzuca ponad połowę wszystkich połączeń |
| **Wstępnie przefiltrowane** | Adresy z zakresów prywatnych, zastrzeżonych oraz znajdujące się na białej liście nigdy nie trafiają do interfejsu API |
Twój miesięczny limit jest wykorzystywany na adresy, które faktycznie wymagały sprawdzenia.
---
## To pokazuje, czy to działa
W przypadku większości wtyczek można stwierdzić, że nie działają prawidłowo, gdy pojawi się pierwszy oszust
. Ten program sprawdza API podczas uruchamiania systemu i wyświetla wynik w konsoli:
```
[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)
```
Wszelkie inne przypadki poza tymi, w których podano`SELF-TEST OK` dokładną przyczynę — odrzucony klucz,
wykorzystany limit, brakujący pakiet CA, błąd DNS. Można to uruchomić ponownie w dowolnym momencie za pomocą
`avpn_test`.
Klucz nigdy nie jest drukowany w całości. Podaje się tylko tyle, ile potrzeba do jego zidentyfikowania.
---
## Optymalizacja dostosowana do rzeczywistego sposobu działania serwerów
| | |
|---|---|
| **Próg ryzyka** | Możesz polegać wyłącznie na `proxy`fladze lub dodatkowo odrzucać wszystko, co uzyska wynik powyżej ustalonej przez Ciebie granicy. Zakresy centrów danych i świeżo rotowane wyjścia często osiągają wysokie wyniki, zanim zostaną sklasyfikowane |
| **Tryb „fail-open” lub „fail-closed”** | Awaria API nie może spowodować opróżnienia serwera — dlatego domyślnie tak się nie dzieje. Zmień to ustawienie, jeśli obejście jest gorsze niż fałszywy wykluczenie |
| **Odporność** | Na podstawie flagi administratora lub identyfikatora SteamID w przypadku pracowników, którzy rzeczywiście potrzebują VPN. Sprawdzanie nadal się odbywa, a wynik jest nadal rejestrowany, więc można to zobaczyć |
| **Lista dozwolonych adresów** | Dokładne adresy, `/24`oraz symbole`/16` wieloznaczne, identyfikatory SteamID. Możliwość ponownego załadowania na żywo |
| **Wstrzymaj** | Zablokować niezweryfikowanego gracza do czasu ogłoszenia werdyktu, tak aby nie było okresu, w którym użytkownik VPN mógłby grać |
Wszystko konfiguruje się z poziomu
`configs/CodeStrikePlugins/antivpn.cfg`, który wtyczka tworzy samodzielnie, w całości
komentowane na podstawie własnych, skompilowanych ustawień domyślnych. Żaden plik źródłowy nie jest nigdy edytowany.
---
## Polecenia administracyjne
| | |
|---|---|
| `avpn_check <ip\|nazwa>` | Sprawdź dowolny adres lub podłączonego gracza na żądanie |
| `avpn_status` | Stan klucza, rozmiar pamięci podręcznej, zaznaczone / zablokowane / błędy tej mapy |
| `avpn_reload` | Przeczytaj ponownie listę dozwolonych adresów i wyczyść pamięć podręczną |
| `avpn_test` | Ponownie uruchom test poświadczeń |
---
## Szczera rozmowa o tym jednym ograniczeniu
Silnik GoldSrc nie oferuje możliwości utrzymania otwartego uzgodnienia połączenia podczas
Żądanie HTTP jest realizowane. Występuje krótki okres, w którym niezweryfikowany klient jest
technicznie rzecz biorąc, na serwerze — w praktyce werdykt zapada, gdy oni są jeszcze
ładuje mapę i `avpn_hold`wstrzymuje ich działanie do momentu zakończenia ładowania.
Każda wtyczka, która twierdzi, że blokuje VPN *przed* nawiązaniem połączenia, zawiera albo statyczny
Lista adresów IP albo nie mówi prawdy.
---
## Wymagania
- AMX Mod X 1.9+ (oparty na wersji 1.10)
- Moduł AmxxEasyHttp — **zawiera plik binarny dla systemu Linux oraz pakiet certyfikatów CA**
pakiet**, system Windows `.dll`to plik do pobrania składający się z jednego pliku
- Klucz API serwisu antivpn.io
Działa zarówno z punktem `/v2/check`końcowym Enterprise, jak i standardowym
`/api/check` token serwera.
---
## Co znajduje się w opakowaniu
- `plugins/antivpn.amxx` — opracowano, AMXX 1.10
- `scripting/` — **pełny kod źródłowy**, cztery pliki, z komentarzami w całym tekście
- `modules/`, `data/`— moduł HTTP i jego pakiet certyfikatów CA dla systemu Linux
- `README.md` — specyfikacja API, wszystkie zmienne konfiguracyjne (cvar), wytyczne dotyczące limitów oraz narzędzia diagnostyczne
tabela przyporządkowująca każdy wiersz dziennika do jego przyczyny i sposobu usunięcia usterki
- `INSTALL.txt` — pięć minut, od początku do końca
---
**illusion @ CodeStrike** · [codestrike.store](https://codestrike.store)