️ ⭕ VPNShield ✅ Easy and fast VPN protection icon

️ ⭕ VPNShield ✅ Easy and fast VPN protection -----

AntiVPN / VPN protection | Only for Velocity & Bungeecord



[​IMG]


VPNShield uses Third Party IP address information providers to detect if an IP address is a VPN or not

Overview
  • VPNShield will cache the information gathered if the ip adress is an VPN or not.
    • You can configure how long the information will be cached
  • You can manually whitelist or blacklist IP adresses
  • Parallel and Async checking minimize the time of the login request and the detection wether a connection is via a VPN or not
  • Supported IP adress information provider (You need to create an account on their website). Most providers offer more requests when purchasing a plan
    • ProxyCheck 1,000 Free daily requests
    • IP-Api 45 Free request per minute
    • IpHub 1,000 Free daily requests
    • NoVPN 2,000 Free daily requests (From my experience many false positives)
  • Choose between 3 VPN detection modes
    1. The result of the first provider will be used (Minimal request usage, might be less accurate)
    2. All enabled providers will be checked. If at least your configured amount of providers detected the connection as a VPN, the connection is flagged (High request usage, more accurate)
    3. Check until the configured number of valid results has been reached (a result is invalid if for example the daily request limit is reached) and if then at least your configured amount of providers detected the connection as a VPN, the connection is flagged.Read more at Detection modes (Balanced request usage and accurate, but depends on configuration)
  • Take action if a VPN got detected
    • Kick the player with a configured message
    • Execute one or more commands
    • Notify online staff on the server
Detection modes
In the config is an order list, the providers are entered there and checked from top to bottom.

Mode 1
Uses the first valid result and blocks the player accordingly. A result is for example invalid if the provider is unreachable or the daily quota is reached

Mode 2
The IP is checked according to the order. If at least your configured amount of providers detected the connection as a VPN, the connection is flagged.
Example: You activated 3 providers via entereing them in the order list, created the API keys and entered that an IP gets flagged if 2 at least provider detect the IP as a VPN.
If the first and second provider detect the IP as an VPN the connection gets flagged and the third provider won't be checked
If only the second provider detects the IP as an VPN the connection doesn't get flagged and all 3 provider got checked.


Mode 3:
The ip is checked until the configured number of valid results has been reached (a result is invalid if for example the daily request limit is reached) and if then at least your configured amount of providers detected the connection as a VPN, the connection is blocked.
Example:
You activated 4 providers via entereing them in the order list, created the API keys, entered that an IP gets flagged if at least 2 provider detect the IP as a VPN and that you need at least 3 valid results.
It will now check the first 3 providers and if they all have valid results it wil check if at least 2 of them detect the IP as a VPN. If so the IP get's flagged. Only if one of the 3 checked providers return a invalid result it will check the fourth provider.


Requirements
  • Java 17
  • Velocity or Bungeecord proxy to use the plugin
Commands
  • /vpnshield whitelist/blacklist <IP>
  • /vpnshield remove <IP> | Removes the IP from the cache/whitelist/blacklist
  • /vpnshield list [page] | Shows the manually whitelisted/blacklisted entries. Page number is optional
  • /vpnshield check <IP> | Checks if the IP is detected as VPN or not
  • /vpnshield rl
Permissions
  • vpnshield.admin | Allows access to all commands
  • vpnshield.notify | Notifies you if a player tried to join with a VPN
  • vpnshield.bypass | Bypasses VPN checks [Works only if using LuckPermsBungee]
Config
Code (Text):
#How long the ip is getting cached

#The maximum is 7 days in total. A higher value makes no sense
cached:
  days: 3
  hours: 0

# 1 first valid result will be used
# 2 all enabled provider will be checked. If "amount_until_blocked" or more detects it's a VPN the IP will be blocked
# 3 Checking until "amount_until_valid" of the enabled options return valid results.
#            After that mode 2 will be used on the valid results
# A check is invalid if for example the server not reachable or the query limit is reached
detection_mode: 3
amount_until_blocked: 1
amount_until_valid: 2

#Providers are checked from top to bottom
#Valid entries: ip-api, novpn, proxycheck, iphub
order:
  - ip-api


#API-Keys
#You must enter this when you have entered the provider in the order list
proxycheck_key: ""
novpn_key: ""
iphub_key: ""

kick:
  enabled: true
  #kick message if using action KICK
  message:
    - "&cVPNs or Proxies are not allowed on our server"
    - "&cPlease disable it in order to play"

command:
  enabled: false
  #don't enter the first / here
  commands: []


staff_notify:
  #Player with the permission vpnshield.notify will receive a message if a player joins with a detected VPN
  enabled: true
  message: "&3VPNShield &8▎ &c{player} tried to join with a VPN"

 


Support

If you have any questions, found a bug or need help with the plugin create a ticket on my Discord server
[​IMG]



Terms and Conditions which you accept with buying the plugin:


► As a user of this plugin, you automatically agree to these terms (which are liable to change)
► You will not distribute or leak this plugin.
► No refunds, as such a digital item is not eligible for a refund as it was immediately accessible to you and you may have used it
► Not redistribute this plugin, share any part of the code or resell it.
► Not edit any of the plugin's code, decompile the plugin, or take some parts of it.
► You will not post my source code online or offline on any website or in the internet.
► Support is offered voluntarily and is not included in the price. Support can be discontinued at any time. I reserve the right to give support who I want and who I don't
Resource Information
Author:
----------
Total Downloads: 46
First Release: Oct 28, 2022
Last Update: Jun 14, 2024
Category: ---------------
All-Time Rating:
4 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings