Перейти к содержимому
Mineforgian

Kauri AntiVPN

The most accurate and lightweight AntiVPN. Stop cheaters and malicious players in their tracks!

Загрузки
2K
Подписчики
2
Обновлён
3 мая 2026 г.
Лицензия
Apache-2.0

Опубликован 26 января 2025 г.

Kauri AntiVPN Logo

KauriVPN

The most accurate and lightweight AntiVPN plugin

If you're enjoying the service, please leave a review!

Join our Discord for support!

Web Based Proxy Lookup: isitbad.io


Description

This AntiVPN plugin isn't like other AntiVPN plugins, which use external databases and services not made by the developer themselves. We use our own in-house API to keep things fast and well integrated. And, it's compatible with Velocity, BungeeCord, and Spigot in the same JAR!

Why KauriVPN?

We don't use any external APIs on our backend, just our homemade special sauce for detecting VPNs, Proxies, and TOR. Not only do we have a high accuracy and detection rate, but we also process your queries fast in under 2ms! Our API updates its IP tables every 10 minutes, so you don’t have to worry about outdated information allowing bad actors on your server or blocking legitimate connections.

We have multiple regions for our API, allowing for extremely low network latency for most locations!

You can test our API with your own VPN here!


Plugin Features!

  • Optional use of MySQL databases to cache query results.
  • Exemption of individual uuids/players from VPN checking.
  • Block players based on prefix so you can exempt Bedrock players.
  • Ingame player IP lookups, with very extensive detail.
  • Get alerts when players join on VPNs!

User Joining on a VPN Viewing API Queries used by the plugin

Plugin Information (IMPORTANT TO READ)

Compatibility

  • BungeeCord Versions: b1100 and newer have been tested to work
  • Bukkit/Spigot Versions: 1.7.10 and newer have been tested to work
  • Velocity Versions: 3.0.1 and newer have been tested to work

TCPShield

If you are going to be using TCPShield, please ensure you are using their provided "RealIP" plugin. Without this plugin, KauriVPN will see players joining from TCPShield proxies. This means players will always be seen as on a VPN, even if they are not using one.

GeyserMC Users

Be wary of how you configure GeyserMC for your server. Some configurations of KauriVPN and GeyserMC will result in all Bedrock players being detected as using a proxy. If this is the case for you, please set your player names to use a prefix and configure the prefixWhitelist section of KauriVPN with your prefix to prevent detection.

Commands

  • /antivpn - View all commands you can use. - antivpn.command
  • /antivpn lookup <player> - Lookup player IP information - antivpn.command.lookup
  • /antivpn alerts - Toggle your VPN usage alerts - antivpn.command.alerts
  • /antivpn allowlist <add/remove> <player/uuid/ip> - Exempt players or IPs from proxy checks - antivpn.command.allowlist
  • /antivpn clearcache - Clear the API response cache if problems occur
  • /antivpn plan - View your KauriVPN Plan and Queries Info
  • /antivpn reload - Reload the KauriVPN plugin

Other Permissions

  • antivpn.bypass: Allow a player to bypass the checking/kicking for proxies.

Generated Files

**config.yml**
#####################################################
#                  KauriVPN Config                  #
#              by Brighten Development              #
#####################################################
# If you find that you run out of your free 20,000 queries, you may purchase a license on https://funkemunky.cc/shop
license: ''
# Message only sent with commands disabled below. Supports color codes ('&')
kickMessage: Proxies are not allowed on our server
# Caching results will lower your query usage, but results may be out of date.
cachedResults: true
# All players with any of the following characters in the beginning of their name will be whitelisted
# This is a useful feature for servers that allow players through Geyser and their IPs are not forwarded, causing
# players to be removed falsely for use of proxy.
prefixWhitelists: []
# Configure your database here.
database:
  # Enable to cache queries and save alerts state beyond restarts
  enabled: false
  useCredentials: true
  #Options Mongo and MySQL
  type: MySQL
  # The database name you would like to use
  database: kaurivpn
  # Can be used if you prefer to authenticate via Mongo URL
  mongoURL: ''
  # Your database username
  username: root
  # Your database password
  password: password
  # The IP of your database goes here
  ip: localhost
  # -1 will use default port of databases (MySQL:3306, Mongo:27017). Otherwise, enter alternative ports here.
  port: -1
commands:
  # Enable this to override the default kick function of the plugin with your own commands
  enabled: false
  # List of commands to run when a player is detected to be using a proxy. Supports color codes ('&')
  execute:
    - kick %player% VPNs are not allowed on our server!
# Enable/disable the default kicking feature of KauriVPN.
kickPlayers: true
# Configure all alerting functionality
alerts:
  # You may set to 'false' to disable all alerts functionality
  enabled: true
  # Message to send to users with alerts enabled
  # Placeholders: %country% (Country name), %player% (Player name), %reason% (Proxy detection method),
  # %city% (City name).
  message: '&8[&6KauriVPN&8] &e%player% &7has joined on a VPN/proxy &8(&f%reason%&8)
    &7in location &8(&f%city%&7, &f%country%&8)'
# Configuration for country gatekeepings
countries:
  # You must use ISO codes for country configuration: https://www.iban.com/country-code
  # Leave empty to disable this configuration
  list: []
  # Set whitelist to true to only allow listed country codes, and false to deny listed country codes.
  whitelist: true
  # The commands to be run if the player is not allowed on the server with the above configured conditions
  # Placeholders: %country% (Country name), %player% (Player name), %code% (Country ISO Code)
  # Keep this empty with "[]" if you want to use the built-in kicking system.
  commands: []
  # The kick message that will be used if commands are configured to use the built-in kicking sytem.
  # PlaceHolders: %country% (Country name), %player% (Player name), %code% (Country ISO Code)
  vanillaKickReason: "&cSorry, but our server does not allow connections from\n&f%country%"
# This will disable any information being sent to https://bstats.org. We recommend you keep this enabled as it helps
# us understand our users and put effort where it is needed. All information sent goes under their privacy as seen
# here: https://bstats.org/privacy-policy
bstats: true

Dependencies

None :)


Free AntiVPN?

Yes, it's free! You don't even have to pay for an external API. Our service offers a generous 20,000 queries per month for free. If you are a server with less than 80 players concurrently, you are highly unlikely to reach this cap and won't need to upgrade. If you start reaching the cap, you can upgrade your plan on https://funkemunky.cc/shop and insert your license into the config.yml.

Ченджлог

1.10.1.2Релиз26.1, 26.1.1, 26.1.2 · 3 мая 2026 г.

[1.10.1.2] 2026-05-03

Fixed

  • Kick spam on non-cached VPN detection events.

Changed

  • Project cleanup and performance improvements.
1.10.1.1Релиз26.1, 26.1.1, 26.1.2 · 30 апреля 2026 г.

[1.10.1.1] 2026-04-29

Fixed

  • Startup error on velocity instances is now corrected.

Changed

  • Bumped dependency versions for H2 database.
1.10.1Релиз26.1, 26.1.1, 26.1.2 · 29 апреля 2026 г.

[1.10.1] - 2026-04-28

Fixed

  • Async kick error that caused issues during player removal when running commands.
  • Startup error caused by a packaging issue is now corrected.

Changed

  • Players can now be whitelisted even while offline (on non-cracked servers)
1.10.0Релиз1.21.11, 26.1, 26.1.1 · 7 апреля 2026 г.

[1.10.0] - 2026-04-07

Added

  • CIDR allowlisting, including commands to add, remove, view, and search entries
  • MongoDB support for CIDR allowlist storage
  • VPN detection webhooks with Discord and Slack formatting options
  • Mojang API fallback support for player lookups
  • Folia support

Changed

  • Improved player blocking so flagged users are removed more reliably across platforms
  • Updated allowlist handling to validate CIDR entries more consistently
  • Improved database cleanup for outdated cached responses

Fixed

  • SQL startup and loading issues, including MySQL library injection problems
  • CIDR parsing issues and MongoDB CIDR lookup failures
  • Allowlist-related SQL errors
  • Repeated webhook spam from duplicate VPN detection events

Documentation

  • Expanded webhook setup documentation for Discord and Slack
1.9.4Релиз1.21.7, 1.21.8, 1.21.9 · 30 сентября 2025 г.

[1.9.4] - 2025-09-30

Added

  • New dependency management system with automatic library loading and relocation
  • Caffeine cache implementation to replace Guava
  • Sponge platform support with full event handling and command system
  • UUID lookup functionality for player validation
  • Enhanced kick checking system with scheduled task execution
  • Support for Java 17 and Java 21 runtime environments
  • New database metrics tracking for bStats

Changed

  • BREAKING: Minimum Java version upgraded from 8 to 17
  • Replaced Guava cache with Caffeine cache for better performance
  • Modernized player checking system with asynchronous processing
  • Improved database connection handling with proper resource management
  • Enhanced VPN/Proxy detection with new CheckResult and ResultType system
  • Updated Maven dependencies and build process
  • Reorganized project structure (Assembly → Universal module)
  • Improved error handling and exception logging throughout codebase

Fixed

  • H2 database compatibility issues with automatic backup and recovery
  • Memory leaks in database result set handling with try-with-resources
  • Thread safety issues in player cache management
  • Command registration and unregistration during plugin lifecycle
  • Proper cleanup of database drivers on shutdown
  • Resource management in SQL connections and prepared statements

Removed

  • Guava dependency (replaced with Caffeine and built-in utilities)
  • Legacy cached response handling system
  • Old table format compatibility code
1.9.4Релиз1.21.7, 1.21.8, 1.21.9 · 30 сентября 2025 г.

[1.9.4] - 2025-09-30

Added

  • New dependency management system with automatic library loading and relocation
  • Caffeine cache implementation to replace Guava
  • Sponge platform support with full event handling and command system
  • UUID lookup functionality for player validation
  • Enhanced kick checking system with scheduled task execution
  • Support for Java 17 and Java 21 runtime environments
  • New database metrics tracking for bStats

Changed

  • BREAKING: Minimum Java version upgraded from 8 to 17
  • Replaced Guava cache with Caffeine cache for better performance
  • Modernized player checking system with asynchronous processing
  • Improved database connection handling with proper resource management
  • Enhanced VPN/Proxy detection with new CheckResult and ResultType system
  • Updated Maven dependencies and build process
  • Reorganized project structure (Assembly → Universal module)
  • Improved error handling and exception logging throughout codebase

Fixed

  • H2 database compatibility issues with automatic backup and recovery
  • Memory leaks in database result set handling with try-with-resources
  • Thread safety issues in player cache management
  • Command registration and unregistration during plugin lifecycle
  • Proper cleanup of database drivers on shutdown
  • Resource management in SQL connections and prepared statements

Removed

  • Guava dependency (replaced with Caffeine and built-in utilities)
  • Legacy cached response handling system
  • Old table format compatibility code
1.9.3.1Релиз1.21.3, 1.21.4, 1.21.5 · 27 марта 2025 г.

Fixed bug that prevented plugin from loading when updating from 1.9.2 using the H2 database.

1.9.3Релиз1.21.2, 1.21.3, 1.21.4 · 26 января 2025 г.
  • Corrected ISO Codes link within the config file.
  • Corrected error on Bukkit servers when using vanilla kick feature.
  • Improved caching to include more information, using less backend queries.
  • Updated H2 to non-vulernable version.
  • Fixed bug where players getting kicked from velocity proxies would receive an error instead of configured message.
  • Changed the way dependencies are handled to add compatibility for Java 17+ versions without having to use runtime arguments to allow deprecated Java features.
  • Tested compatibility on 1.21 Bukkit, Bungeecord, and Velocity proxies.

Комментарии

Загружаем…