AntiVPN [Free] 1.8


Tested Minecraft Versions:
  • 1.9
  • 1.10
  • 1.11
  • 1.12
[​IMG]
What is a VPN? A virtual private network (VPN) extends a private network across a public network, and enables users to send and receive data across shared or public networks as if their computing devices were directly connected to the private network. Applications running across the VPN may therefore benefit from the functionality, security, and management of the private network. (Thanks to Wikipedia) What does this mean for server owners?
When you IP-ban a player, they can simply turn on a VPN and join the server again. Small image that explais a VPN (Thanks to Wikipedia, again :p):
[​IMG]


Even Player Analytics is supported. Click here to download it.


[​IMG]
- Commands:
  • /avpn check <player> - Check if a player is using a VPN. (antivpn.mod)
  • /avpn reload - Reload the config (antivpn.mod)
  • /avpn purge - Clear the cache. (antivpn.mod)
- Permissions:
  • antivpn.bypass - Bypass the VPN check
[​IMG]
  1. Stop your server
  2. Place AntiVPN.jar in your plugins folder.
  3. Start your server. A config file will be generated.
  4. Open your config and edit the config to your liking. Be sure to change the "email" to a valid e-mail address. If you don't do this, the database firewall might block your server and you won't be able to use the plugin.
  5. Save the config and restart the server.
Player Analytics:
  1. Make sure you have the latest Player Analytics (Plan) version installed. (3.1.0 and up)
  2. Done. Everything will connect by itself and will show how many times a player (tried to) join(ed) with a VPN-connection in the plugins section on the web page. [Using /plan inspect <player>]
Plugin returning errors? Please check if your config has all the strings, booleans, integers for your version.
Most recent config:
Code (Text):

######################################################################################
#                AntiVPN by brooky1010  #
#                                            #
#  Twitter: @BrooklynDewolf1 or @TheMilkyWalrus  #
#  #
#            Website: themilkywalrus.com  #
#  #
#  THIS PLUGIN IS FREE TO USE AND NOT AFFILIATED WITH GETIPINTEL.ORG  #
#            USE AT YOUR OWN RISK - NO DATABASE IS 100% PERFECT  #
#                                         #
######################################################################################

#A valid e-mail adress is required to access the IP database. [Ex. [email protected]]
#If you do not change this value, you might be banned from the database.
email: "[email protected]"

#What should the plugin do to players who join with a VPN? (kick OR none)
#Kick: Kicks the player every time they join with a VPN.
#None: Do nothing. You can use /avpn check <player> to see if the player is using a VPN-connection.
punishment: "kick"

#Enable logging? Every time a player (tries to) join(s) the server with a VPN-connection, it will be logged to log.txt. [true/false]
log: true

#Messages

#Plugin prefix (Prefix displayed before every message)
prefix: "&c&lAnti&8&lVPN&c&l>>"

#Kick message (Message displayed when a player gets kicked for joining the server with a VPN)
kickmessage: "&4You may not join this server with a VPN-connection."

#Notification message ("antivpn.mod")
notificationmessage: "&4Player &c%player% &4(tried to) join(ed) with a VPN-connection."

#Should players with "antivpn.mod" receive a message when a player (tries to) join(s) the server with a VPN-connection? [true/false]
notification: true

#IP-whitelist: Add any IP-addresses to this list and they won't be blocked by AntiVPN. (Example below)
whitelist:
  - 123.456.78.90

#Probability: Number from 1-100. The lower this number, the faster it will think an IP is a VPN-connection.
#Example: IP 123.456.78.90 has 20% chance of being a VPN, but the probability is set to 90%, it won't think the IP is a VPN-connection.
#If the probability is set to 10%, it will think the IP is a VPN and it will block it.
#It is not recommended going under 95%, as it will increase the chance of false kicking someone for a VPN.
percent: 98


#Enable flood protection? This will kick any player that tries to join the server when the query limit is reached.
#Players will be able to join again when the query limit is reset. (Default: 15 queries/minute) [true/false]
#Setting this to false will let any player join the server when the query limit is reached (even players with VPNs).
#Setting this to true will kick any player that tries to join the server when the query limit is reached (even players WITHOUT VPNs).
#False is recommended on big servers, otherwise a lot of players will have to wait 1 minute before joining again.
floodprotection: false
floodmessage: "&eAntiVPN flood protection is active. Please join again in 1 minute."

#Enable downtime protection? This will kick any player that tries to join the server when the database returns an error.
#This could be: Scheduled maintenance, an attack, or the daily query limit is reached (500 queries/day).
#This is NOT recommended to set to true.
downprotection: false
downmessage: "&eAntiVPN down protection is active. Try again soon."

#Enable caching? Caching will save the IP and probability temporary so if a player joins with the same IP, it doesn't need to make a request
#to the database again, which saves you a query. It is recommended that you leave this on.
#Specify a time in HOURS a value will be cached. It is NOT recommended caching a particular value for more than 6 hours.
#The Internet drastically changes over a short period of time. Hijacked networks pop up and go away relatively quickly.
#A low scoring IP's behavior can change in a matter of seconds, as well as a high scoring IP.
#All cached values will be cleared when the plugin/server reloads or restarts.
caching:
  enabled: true
  time: 4

#Enable debug? This will output stacktraces and more to the console. [true/false]
debug: false

#Subdomain that is used to check players on getipintel.net. (ONLY CHANGE WHEN YOU PURCHASED EXTRA QUERIES BY CONTACTING THE DEVELOPER OF GETIPINTEL.NET)
#Default: check
#Example: abcd.getipintel.net -> "abcd"  -- Fill in the part before '.getipintel.net' when you purchased more queries at getipintel.net
#Changing this to an invalid value will completely break this plugin.
subdomain: "check"

 
[​IMG]
- Do NOT change the subdomain in the config.
- You can only check 15 players/minute, 500/day. (Learn more in the "Queries" section.)
- Anti-Down is NOT recommended on big servers.

[​IMG]

- You can only check 15 players/minute, 500/day. This is not my limit, the database limits it. When you hit the limit, it will log a message in the console. If you have a bigger server, you can always message the creator of getipintel.net and purchase more queries. After your purchase, you will be supplied with a different subdomain. Change subdomain "check" to the subdomain you got from the developer of getipintel.net.

[​IMG]
- This plugin uses bStats to collect data.
What does bStats collect?
  • Your server's randomly generated UUID
  • - The amount of players on your server
  • - The online mode of your server
  • - The bukkit version of your server
  • - The java version of your system (e.g. Java 8)
  • - The name of your OS (e.g. Windows)
  • - The version of your OS
  • - The architecture of your OS (e.g. amd64)
  • - The system cores of your OS (e.g. 8)
  • - bStats-supported plugins
  • - Plugin version of bStats-supported plugins
  • - Amount of players that join with/without VPN.
- You can disable bStats in the bStats config. (/plugins/bStats/config.yml)

Resource icon made by Google at flaticons.com.
Icon license: CC 3.0 BY.

FAQ:


Q: When a player joins, it returns a 400 error in console.
A: Your server IP might've been banned from the database.
Make sure you insert a VALID e-mail in the config.

Q: Caching won't work, even when it is enabled.
A: Make sure you have the correct strings and values in your config file.
You can always check the config above if you think you're missing something.

Q: When a player joins, it returns a 429 error.
A: You exceeded the query/minute limit. If you need more queries, you can buy more
by contacting the developer of getipintel.net.

Servers that use this plugin:

  • Azurianmines - play.azurianmines.us

Please read the entire page before posting a bad review. I will ignore your review if you didn't contact me first if something isn't working.