NoVPN | Block VPN & McLeaks/TheAltening icon

NoVPN | Block VPN & McLeaks/TheAltening -----

Protect your server.



[​IMG]
NoVPN
is a plugin that blocks players using VPNs or proxies . Based on a high-performance API.

FEATURES

  • Private API detection
  • Blacklist/Whitelist
  • Async plugin
  • Unlimited request
  • Bad account detection (McLeaks/TheAltening/EasyMC)
  • Antibot protection
  • Firewall system
  • Console filter
  • Discord webhook
  • Packet events
  • MySQL support
COMMANDS & PERMISSIONS
Commands:

  • /nvp help | Shows available commands
  • /nvp lookup <ip/player> | Shows information about a player or an IP
  • /nvp blacklist | Shows available blacklist commands
  • /nvp blacklist enable/disable | Enables or disables the blacklist
  • /nvp blacklist <add/remove> <player/ip/country> | Adds or removes a player, IP, or country to/from the blacklist
  • /nvp blacklist list | Shows elements in the blacklist
  • /nvp whitelist | Shows available whitelist commands
  • /nvp whitelist enable/disable | Enables or disables the whitelist
  • /nvp whitelist <add/remove> <player/ip/country> | Adds or removes a player, IP, or country to/from the whitelist
  • /nvp whitelist list | Shows elements in the whitelist
  • /nvp antibot | Shows available antibot commands
  • /nvp antibot enable/disable | Enables or disables antibot protection
  • /nvp antibot satus | Shows antibot status
  • /nvp antibot protection_mode start/stop | Starts or stops antibot under attack mode

Permissions:

  • novpn.* | Allow everything in the plugin
  • novpn.help | Access to help command
  • novpn.antibot | Access to /nvp antibot command
  • novpn.antibot.disable | Access to /nvp antibot disable command
  • novpn.antibot.enable | Access to /nvp antibot enable command
  • novpn.antibot.start | Access to start protection mode
  • novpn.antibot.stop | Access to stop protection mode
  • novpn.antibot.status | Access to antibot status command
  • novpn.blacklist.add | Access to /nvp blacklist add command
  • novpn.blacklist | Access to /nvp blacklist command
  • novpn.blacklist.disable | Access to /nvp blacklist disable command
  • novpn.blacklist.enable | Access to /nvp blacklist enable command
  • novpn.blacklist.list | Access to /nvp blacklist list command
  • novpn.blacklist.remove | Access to /nvp blacklist remove command
  • novpn.lookup | Access to /nvp lookup command
  • novpn.whitelist | Access to /nvp whitelist command
  • novpn.whitelist.add | Access to /nvp whitelist add command
  • novpn.whitelist.remove | Access to /nvp whitelist remove command
  • novpn.whitelist.list | Access to /nvp whitelist list command
  • novpn.whitelist.enable | Access to /nvp whitelist enable command
  • novpn.whitelist.disable | Access to /nvp whitelist disable command
  • novpn.notify | Receive notifications
CONFIGURATION
You can find a copy of the config file here:
Code (YAML):
debug : false

# Define how many player can connect with same IP (-1 to disable)
max_ip
: 1

# Enable caching api responses
cache
: true

# Reduce spam logs in the console
console_filter
: true

# Run events from packets instead of default event system
packet_events
: false

# Configuration about bad IP detection from the NoVPN API
bad_ip
:
  # Enable or disable bad ip check
  check
: true
  min_score
: 0.6 # Minimum score required to be triggered as a bad actor

  # Make sure to only enable 1 of the 2
  kick
: true
  ban
: false

  # Send a notification to all connected players with permission (novpn.notify)
  notify
: true

  # Executed command when user is banned from the bad ip check
  # Don't add the '/'
  # Use can use multiples placeholder such as %ip%, %player%, %reason%
  # Warning: Bungeecord/Velocity only work with an external ban plugin!
  ban-cmd
: "ban %player% %reason%"

# Check if player is using McLeaks/TheAltening or EasyMC account
bad_account
:
  enabled
: true # Warning: Only enable this in online-mode server since verification use UUID

  # Make sure to only enable 1 of the 2
  kick
: true
  ban
: false

  # Check ban-cmd in bad_ip section for more details
  ban-cmd
: "ban %player% %reason%"

# Block detected IPs directly from the system, you can use any command you want
firewall
:
  enabled
: false
  command
: "iptables -A INPUT -s %ip% -p tcp --destination-port 25565 -j DROP"

# You can add player's name, IP or country to bypass every verification (BE CAUTION with country whitelist!)
whitelist
: true

# No checks will be performed for player/ip/country in this list and they will be directly kicked
blacklist
: true

antibot
:
  enabled
: false

  # If the average is higher it will trigger the antibot protection mode
  max_average
: 125.0

  # How long the server will stay in protection mode in seconds
  protection_duration
: 60

  # Notify players with permission novpn.antibot.notify
  notify
:
    message
: true # Notify player with a message in the chat
    action_bar
: true # Notify with a message in the action bar

  # Plays will receive one of these checks when the server is in protection mode
  checks
:
    # If a player was connected before protection mode, he will not receive any checks
    already_connected
: true

    # Player need to add the server in server list and ping to join the server!
    ping_to_join
: true

    # Rejoin to access to the server
    rejoin
: false

webhook
:
  bad_ip
: false # Enable webhook requests for bad ip
  bad_account
: false # Enable webhook requests for bad account

  url
: ""

mysql
:
  enabled
: false
  host
: "localhost"
  port
: 3306
  ssl
: false
  database
: "novpn"
  user
: "root"
  password
: ""
 

The list of all supported countries
Code (Text):
Afghanistan
Aland Islands
Albania
Algeria
Andorra
Angola
Antarctica
Antigua and Barbuda
Argentina
Armenia
Aruba
Australia
Austria
Azerbaijan
Bahrain
Bangladesh
Barbados
Belarus
Belgium
Belize
Benin
Bermuda
Bolivia
Bosnia and Herzegovina
Botswana
Brazil
Brunei
Bulgaria
Burkina Faso
Burundi
Cambodia
Cameroon
Canada
Central African Republic
Chad
Chile
China
Colombia
Costa Rica
Croatia
Curaçao
Cyprus
Czechia
Democratic Timor-Leste
Denmark
Djibouti
Dominican Republic
Ecuador
Egypt
El Salvador
Equatorial Guinea
Estonia
Eswatini
Ethiopia
Fiji
Finland
France
French Guiana
French Polynesia
Gabon
Georgia
Germany
Ghana
Greece
Greenland
Guadeloupe
Guam
Guatemala
Guernsey
Guinea
Guyana
Haiti
Hashemite Kingdom of Jordan
Honduras
Hong Kong
Hungary
Iceland
India
Indonesia
Iran
Iraq
Ireland
Israel
Italy
Ivory Coast
Jamaica
Japan
Jersey
Kazakhstan
Kenya
Kosovo
Kuwait
Kyrgyzstan
Laos
Latvia
Lebanon
Lesotho
Liberia
Libya
Luxembourg
Macao
Madagascar
Malawi
Malaysia
Maldives
Mali
Malta
Martinique
Mauritius
Mayotte
Mexico
Monaco
Mongolia
Montenegro
Morocco
Mozambique
Myanmar
Namibia
Nepal
Netherlands
New Caledonia
New Zealand
Nicaragua
Nigeria
North Macedonia
Norway
Oman
Pakistan
Palestine
Panama
Papua New Guinea
Paraguay
Peru
Philippines
Poland
Portugal
Puerto Rico
Qatar
Lithuania
Moldova
Congo
Romania
Russia
Rwanda
Réunion
Saint Martin
Saint Pierre and Miquelon
Samoa
Saudi Arabia
Senegal
Serbia
Seychelles
Sierra Leone
Singapore
Sint Maarten
Slovakia
Slovenia
Somalia
South Africa
South Korea
Spain
Sri Lanka
Sudan
Suriname
Sweden
Switzerland
Syria
Taiwan
Tajikistan
Tanzania
Thailand
Togo
Trinidad and Tobago
Tunisia
Turkey
Turks and Caicos Islands
U.S. Virgin Islands
Uganda
Ukraine
United Arab Emirates
United Kingdom
United States
Uruguay
Uzbekistan
Venezuela
Vietnam
Yemen
Zambia
Zimbabwe

Config packet events

To enable packet events you need "packetevents-api" plugin.
- Download version for spigot, bungeecord or velocity.
- Add the plugin on your server.
- Enable "packet_events" in NoVPN config.


COMPATIBILITY
This plugin is compatible with Spigot/Bungeecord/Velocity. And for Bedrock Edition with Nukkit.
Only for Java 8+.

CONTRIBUTE
You can contribute to the bad account checker here.

SUPPORT

If you have any questions or issues with the plugin/api you can send me a private message on spigotmc or join the novpn discord.

WARNING
If you want to use the anti-bad account make sure you use an online mode server. UUIDs on an offline server are not real! If you have any issues with the plugin, please report it to me via DM.

TERMS

By downloading this plugin you agree with the content below:
1. You are not permitted to redistribute the plugin in any form, including as a part of any software package.
2. You are not permitted to decompile or modify the plugin in any form.
3. You agree to make an effort to get help (by besuper me) if you are having problems, before leaving a review.
4. No refunds are authorized in Paypal!
5. I reserve the right to change these terms at any time, and you agree to abide by the most recent version of this.
6. You have read the description


[​IMG]
Resource Information
Author:
----------
Total Downloads: 606
First Release: Feb 25, 2017
Last Update: Nov 16, 2024
Category: ---------------
All-Time Rating:
62 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings