NoVPN is a plugin that blocks players from 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)
Antibot protection
Firewall system
Console filter
Discord webhook
COMMANDS & PERMISSIONS Commands:
/nvp help | Shows available commands
/nvp lookup | 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 | 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 | 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: [dropdown]
# NoVPN config for version ${project.version}
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
# 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: "" [/dropdown]
The list of all supported countries [dropdown=Country list]
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 [/dropdown]
COMPATIBILITY This plugin is compatible with Spigot, Bungeecord, and Velocity. And with Bedrock Edition with Nukkit. Only for Java 8+.
CONTRIBUTE You can contribute to the bad account checker here.
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. We 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