✨ ChronAntiVPN | VPN detection! ✨
COMPATIBILITY:
- THE PLUGIN WORKS ON SPIGOT AND BUNGEECORD SERVERS!
FEATURES:
- IP AND VPN CHECK: THE PLUGIN CHECKS WHETHER A GIVEN IP ADDRESS IS FROM A VPN OR PROXY.
- COUNTRY VERIFICATION: ALLOWS DEVELOPERS TO EXCLUDE CERTAIN COUNTRIES AND ALSO VERIFIES FOR MANIPULATED COUNTRY DATA.
- EXCEPTIONS: PROVIDES THE OPTION TO TREAT CERTAIN IP ADDRESSES AS EXCEPTIONS.
- PLAYER MONITORING: WHEN A PLAYER CONNECTS TO THE SERVER, THE PLUGIN CHECKS THEIR IP ADDRESS AND TAKES NECESSARY ACTIONS IF IT'S POTENTIALLY HARMFUL.
- ADDRESS LIMITER: WITH THIS, YOU CAN ALLOW UP TO THREE PLAYERS FROM A SINGLE IP ADDRESS TO JOIN THE SERVER!
- DISCORD NOTIFICATIONS: CAPABLE OF SENDING DISCORD NOTIFICATIONS FOR SPECIFIC EVENTS.
- EJECTION MEASURES: IF AN IP ADDRESS IS DEEMED HARMFUL, THE PLUGIN AUTOMATICALLY KICKS THE PLAYER AND SENDS A NOTIFICATION.
- ASYNCHRONOUS OPERATIONS: THE PLUGIN OPERATES ASYNCHRONOUSLY, MINIMIZING SERVER RESOURCE STRAIN.
- INTEGRATION WITH PROXYCHECK.IO: UTILIZES AN API KEY FROM PROXYCHECK.IO, ENABLING MORE COMPREHENSIVE AND DETAILED IP CHECKS.
SPECIAL FUNCTIONS:
- ALTERNATIVE VPN CHECK: IF THE API STATUS IS POOR, THE PLUGIN CONDUCTS AN ALTERNATIVE VPN CHECK.
- CACHED DATA: IF CERTAIN DATA IS NOT QUERIED FOR AN HOUR, IT'S AUTOMATICALLY REMOVED FROM THE CACHE TO GATHER FRESH INFORMATION.
COMMANDS:
- /checker [address]: CHECKS THE VPN OR PROXY STATUS OF A GIVEN IP ADDRESS!
- /blacklist add [name] [address] [reason]: BANS A PLAYER BASED ON NAME, IP ADDRESS, AND REASON!
- /blacklist remove [user]: REMOVES A PLAYER FROM THE BLACKLIST!
- /blacklist check [user]: DISPLAYS DETAILS (NAME, UUID, ADDRESS, REASON) OF A PLAYER ON THE BLACKLIST!
- /blacklist list: DISPLAYS PLAYERS CURRENTLY ON THE BLACKLIST!
- /addresslimiter clear [address]: YOU CAN DELETE THE NAMES ASSOCIATED WITH THE IP ADDRESS!
- /addresslimiter list [address]: YOU CAN LIST THE NAMES ASSOCIATED WITH THE IP ADDRESS!
- /chronantivpn reload: RELOADS ALL FILES!
PERMISSIONS:
- chronantivpn.checker: GRANTS PERMISSION TO USE THE /checker COMMAND!
- chronantivpn.blacklist.add: GRANTS PERMISSION TO USE /blacklist add COMMAND!
- chronantivpn.blacklist.remove: GRANTS PERMISSION TO USE /blacklist remove COMMAND!
- chronantivpn.blacklist.check: GRANTS PERMISSION TO USE /blacklist check COMMAND!
- chronantivpn.blacklist.list: GRANTS PERMISSION TO USE /blacklist list COMMAND!
- chronantivpn.addresslimiter.clear: GRANTS PERMISSION TO USE /addresslimiter clear COMMAND!
- chronantivpn.addresslimiter.list: GRANTS PERMISSION TO USE /addresslimiter list COMMAND!
- chronantivpn.reload: GRANTS PERMISSION TO USE /chronantivpn reload COMMAND!
- chronantivpn.notification: THIS PERMISSION SENDS ADMIN NOTIFICATIONS!
- chronantivpn.*: THIS ADDS ALL THE PERMISSIONS FROM THE PLUGIN TO YOUR PERMISSIONS!
INSTALLATION:
- PLACE THE PLUGIN'S .JAR FILE INTO THE PLUGINS DIRECTORY OF YOUR MINECRAFT SERVER.
- RESTART YOUR SERVER.
USAGE:
- ONCE INSTALLED, THE PLUGIN AUTOMATICALLY STARTS CHECKING IP ADDRESSES USING PROXYCHECK.IO. IF A PLAYER'S IP ADDRESS IS IDENTIFIED AS HARMFUL, THE PLUGIN TAKES ACTION BY EJECTING THE PLAYER AND SENDING A NOTIFICATION.
CONFIGURATION:
#
#░█████╗░███╗░░██╗████████╗██╗██╗░░░██╗██████╗░███╗░░██╗
#██╔══██╗████╗░██║╚══██╔══╝██║██║░░░██║██╔══██╗████╗░██║
#███████║██╔██╗██║░░░██║░░░██║╚██╗░██╔╝██████╔╝██╔██╗██║
#██╔══██║██║╚████║░░░██║░░░██║░╚████╔╝░██╔═══╝░██║╚████║
#██║░░██║██║░╚███║░░░██║░░░██║░░╚██╔╝░░██║░░░░░██║░╚███║
#╚═╝░░╚═╝╚═╝░░╚══╝░░░╚═╝░░░╚═╝░░░╚═╝░░░╚═╝░░░░░╚═╝░░╚══╝
#
# SELECT PLUGIN LANGUAGE! (en_US, hu_HU)
Locale: en_US
AntiVPN:
# WRITE YOUR API KEY HERE FOR VPN, PROXY, AND COUNTRY CHECK
#░█████╗░███╗░░██╗████████╗██╗██╗░░░██╗██████╗░███╗░░██╗
#██╔══██╗████╗░██║╚══██╔══╝██║██║░░░██║██╔══██╗████╗░██║
#███████║██╔██╗██║░░░██║░░░██║╚██╗░██╔╝██████╔╝██╔██╗██║
#██╔══██║██║╚████║░░░██║░░░██║░╚████╔╝░██╔═══╝░██║╚████║
#██║░░██║██║░╚███║░░░██║░░░██║░░╚██╔╝░░██║░░░░░██║░╚███║
#╚═╝░░╚═╝╚═╝░░╚══╝░░░╚═╝░░░╚═╝░░░╚═╝░░░╚═╝░░░░░╚═╝░░╚══╝
#
# SELECT PLUGIN LANGUAGE! (en_US, hu_HU)
Locale: en_US
AntiVPN:
# WRITE YOUR API KEY HERE FOR VPN, PROXY, AND COUNTRY CHECK
# (OPTIONAL BUT RECOMMENDED! HTTPS://WWW.PROXYCHECK.IO/)
Code: 'none'
Exception:
# ADD IP ADDRESSES HERE THAT YOU DO NOT WANT TO CHECK
# CERTAIN CHECKS THAT ARE NOT OVERRIDDEN: NULLADDRESS, BLACKLIST!
Addresses: []
Blacklist-mode:
# AUTOMATICALLY ADD TO BLACKLIST WHEN KICKED!
Automatic: false
# THESE SOCKETS ARE CHECKED AS VPN SOCKETS!
# YOU CAN ADD MULTIPLE PORTS!
Sockets:
- 80
Whitelist-mode:
# CHECKS AGAINST ISOCODE LIST IF ENABLED!
Check: false
# YOU CAN ADD COUNTRY ISOCODES TO THE LIST!
Isocode:
- 'RS'
- 'HU'
- 'SK'
- 'RO'
- 'UA'
Address-limiter:
# ENABLE IP ADDRESS LIMITING!
Check: false
# IP ADDRESS LIMIT, THE NUMBER OF CONNECTIONS ALLOWED FROM THIS IP ADDRESS!
Max-count: 3
Json-fetcher:
# CACHE THE FETCHED JSON FOR SERVER PERFORMANCE!
Set-use-caches: true
# SET THE TIMEOUT FOR THE WEBSITE TO RESPOND, OTHERWISE THERE IS AN ALTERNATIVE CHECK!
Set-connect-timeout: 3
Set-read-timeout: 3
# PRINT JSON FETCH ERRORS TO CONSOLE IF ENABLED!
Send-console-error: false
Socket-fetcher:
# SET THE SOCKET TIMEOUT, IF NO RESPONSE, IT DOES NOT USE VPN OR PROXY!
Set-socket-timeout: 3
Discord-webhook:
# SEND DISCORD NOTIFICATION IF YOU ENTER THE DISCORD WEBHOOK LINK!
Url: 'none'
Header: 'Server Informations!'
Notifications:
Reason: 'Reason » %reason%'
User: 'User » %user%'
Address: 'Address » %address%'
Iso: 'Iso » %isocode%'
Server: 'Server » %server%'
Footer: '(Unsuccessful server connection!)'
Placeholder:
Unknown: 'Unknown'
Server: 'Unknown'
Console: 'Console'
Code: 'none'
Exception:
# ADD IP ADDRESSES HERE THAT YOU DO NOT WANT TO CHECK
# CERTAIN CHECKS THAT ARE NOT OVERRIDDEN: NULLADDRESS, BLACKLIST!
Addresses: []
Blacklist-mode:
# AUTOMATICALLY ADD TO BLACKLIST WHEN KICKED!
Automatic: false
# THESE SOCKETS ARE CHECKED AS VPN SOCKETS!
# YOU CAN ADD MULTIPLE PORTS!
Sockets:
- 80
Whitelist-mode:
# CHECKS AGAINST ISOCODE LIST IF ENABLED!
Check: false
# YOU CAN ADD COUNTRY ISOCODES TO THE LIST!
Isocode:
- 'RS'
- 'HU'
- 'SK'
- 'RO'
- 'UA'
Address-limiter:
# ENABLE IP ADDRESS LIMITING!
Check: false
# IP ADDRESS LIMIT, THE NUMBER OF CONNECTIONS ALLOWED FROM THIS IP ADDRESS!
Max-count: 3
Json-fetcher:
# CACHE THE FETCHED JSON FOR SERVER PERFORMANCE!
Set-use-caches: true
# SET THE TIMEOUT FOR THE WEBSITE TO RESPOND, OTHERWISE THERE IS AN ALTERNATIVE CHECK!
Set-connect-timeout: 3
Set-read-timeout: 3
# PRINT JSON FETCH ERRORS TO CONSOLE IF ENABLED!
Send-console-error: false
Socket-fetcher:
# SET THE SOCKET TIMEOUT, IF NO RESPONSE, IT DOES NOT USE VPN OR PROXY!
Set-socket-timeout: 3
Discord-webhook:
# SEND DISCORD NOTIFICATION IF YOU ENTER THE DISCORD WEBHOOK LINK!
Url: 'none'
Header: 'Server Informations!'
Notifications:
Reason: 'Reason » %reason%'
User: 'User » %user%'
Address: 'Address » %address%'
Iso: 'Iso » %isocode%'
Server: 'Server » %server%'
Footer: '(Unsuccessful server connection!)'
Placeholder:
Unknown: 'Unknown'
Server: 'Unknown'
Console: 'Console'
Comments