Code Monkey home page Code Monkey logo

vpnguard's Introduction

VPNGuard

PocketMine-MP Plugin: VPNGuard will prevent players from joining your server behind any type of anonymizer.

VPNGuard will prevent players from joining your server behind any type of anonymizer (whether it be a VPN or a Proxy). This will effectively help reduce spammers/bots and Miscellaneous individuals from joining your server by kicking them if they have an IP address which belongs to a hosting organization.

VPNGuard uses a privately managed blocking list which is updated almost daily to Combat new threats Easy installation requires almost no configuration, simply download and install.

Updated for: 3.0.0 + / 4.0.0 +

Latest Plugin Release: VPNGuard v1.0.7-patch1 for API 3.0.0 / VPNGuard v1.0.8-patch1 for API 4.0.0

Commands

Command Description
vpnguard The main command for VPNGuard.
vpnguard clearcache Deletes all locally saved cache files
vpnguard clearip {ip} Deletes the locally saved cache file for the specified IP address
vpnguard lookup {ip/player} Allows you to search any IP address or online player in-game and view IP details
vpnguard subnet {ban/unban} {ip/subnet block} Allows you to ban or unban a IP address subnet
vpnguard country {add/remove} {cc} Allows you to add or remove a country from your blacklist or whitelist
vpnguard about Information about the plugin

Permissions

Node Default Description
vpnguard.command.vpnguard true Allows you to use the /vpnguard command
vpnguard.command.clearcache op Allows you to use the /vpnguard clearcache command
vpnguard.command.clearip op Allows you to use the /vpnguard clearip command
vpnguard.command.lookup op Allows you to use the /vpnguard lookup command
vpnguard.command.subnet op Allows you to use the /vpnguard subnet command
vpnguard.command.country op Allows you to use the /vpnguard country command
vpnguard.command.about true Allows you to use the /vpnguard about command

Frequently Asked Questions

Q. The plugin API is outdated when will you make an update?

A. Please update/bump the API version in the plugin.yml, the plugin should still work. If not please open a Github Issue and let me know.

Q. How many players can the plugin look information up for?

A. At the time of writing this the backend API provider has a 500 monthly request limit. Which means if you enable api-cache within config.yml you can get 500 monthly unique players and lookup information regarding them with no problem!

Q. What happens when the API monthly limit is reached?

A. The API server will no longer provide information regarding additional/new users who attempt to join your server, from there those users would be either allowed to join your server without any sort of checking or they would be kicked, this is based on the value specified in the config.yml under bypass-check.

Q. I have a server and more than 500 new users join per month is it possible I can get more monthly requests?

A. Yes you can you would need to purchase an API key, at the time of writing this its only $5/mo

Q. I have more than one server can I use the API key on more than one server at a time?

A. Yes you can use a single API key on as many servers as you wish, that you own.

Q. Why can't this be completely free for unlimited requests?

A. It costs money to maintain and upkeep such a service. You are not paying for the plugin but are paying for the service to use the API if you choose to do so.

Q. Where can I view details/purchase the API that is being used?

A. You can visit the homepage by the API provider located at: http://bit.ly/host-blocker

Q. Right after I installed the plugin it says "Monthly Limit Reached" but this is the first time im running it what do I do?

A. You most likely are on shared hosting and chances are someone already has used up the 500 Free Monthly Request Limit for the IP Address. You would need to either test the plugin locally on your computer, on a different server or purchase a API Key.

Q. I just installed the plugin I need help configuring command section in the config.

A. Configuring the plugin commands is super simple! Take a look at the config file: https://github.com/HiddenMotives/VPNGuard/blob/master/resources/config.yml it is pretty straight forward, the command section is a list of commands to run when a user joins with a VPN. %p represents the player name connecting and gets replaced automatically.

command:
- kick %p You seem to be using a VPN or Proxy

The above command to run would kick the player trying to connect with a VPN with the message "You seem to be using a VPN or Proxy". Or you could specify more than one command by adding another line like:

command:
- kick %p You seem to be using a VPN or Proxy
- say %p is a naughty crafter.

Which would both kick the player trying to connect to the server and broadcast "playerName is a naughty crafter"

Q. I found a IP from a VPN organization not blocked what do I do?

A. Contact the API provider

Q. My question is not listed here

A. Contact me with your Question!

vpnguard's People

Contributors

darkwav avatar hiddenmotives avatar poggit-bot avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

vpnguard's Issues

VPNGuard crashing my server

My PM hosting company VirtualGladiators just told me to stop using VPN Guard that it's crashing my server.

  1. Don't use VPN Guard. It crashes your server. I've removed it:

Error: Call to a member function close() on null
File: /VPNGuard_v1.0.4.phar/src/basprohop/libraries/Async
Line: 53
Type: notice

THIS CRASH WAS CAUSED BY A PLUGIN
此次åºéç±æ件å¼èµ·
BAD PLUGIN : VPNGuard v1.0.4

Please fix this so I can start using it again.

Getting error: Invalid API Key

I getting an error with VPNGuard v1.0.6. My API key is linked to the Basic subscription. Is the Basic plan no longer supported?

[20:18:34] [Server thread/WARNING]: API Server Returned Error Message: Invalid API Key when NML connected
[20:18:34] [Server thread/CRITICAL]: Shutting down server to prevent blacklisting on API Database

server crash (Shutting down server to prevent blacklisting on API Database)

server shutting down when API error returned

I want the player to be able to connect if API error returned
is my config.yml correct ?
thanks

https://poggit.pmmp.io/r/49539/VPNGuard_dev-17.phar
https://jenkins.pmmp.io/job/PocketMine-MP/1793/artifact/PocketMine-MP.phar

error

2020-05-03 [17:06:07] [Server thread/INFO]: [VPNGuard] Player Quasar RX has connected with the IP: XX.37.XXX.168
2020-05-03 [17:06:07] [Server thread/WARNING]: API Server Returned Error Message: Backend Database Server is Down. when Razir RX connected
2020-05-03 [17:06:07] [Server thread/CRITICAL]: Shutting down server to prevent blacklisting on API Database
2020-05-03 [17:06:07] [Server thread/INFO]: Disabling ChestFinder v1.5

config.yml

...

# Timeout in seconds for connecting to the API server.
# If it takes longer to connect the plugin will assume API server is down.
timeout: 10

# Console Logging, displays detailed information every time a player joins
# the server on console.
logging: true

# Allow users to connect if API Server encounters any errors (Such as Timeout)?
bypass-check: true

...

issue test upgrade API 3.0.0- Call to undefined method pocketmine\Server::getScheduler() on basprohop\VPNGuard

My config test
https://jenkins.pmmp.io/job/PocketMine-MP/1216/artifact/PocketMine-MP.phar
https://poggit.pmmp.io/r/8885/VPNGuard_dev-14.phar
config.yml modified API 3.0.0

the log

2018-06-27 [21:26:02] [Server thread/CRITICAL]: Could not pass event 'pocketmine\event\player\PlayerJoinEvent' to 'VPNGuard v1.0.6-B1': Call to undefined method pocketmine\Server::getScheduler() on basprohop\VPNGuard
2018-06-27 [21:26:02] [Server thread/CRITICAL]: Error: "Call to undefined method pocketmine\Server::getScheduler()" (EXCEPTION) in "VPNGuard-Latest_dev-1.phar/src/basprohop/VPNGuard" at line 90
2018-06-27 [21:26:02] [Server thread/DEBUG]: #0 src/pocketmine/plugin/MethodEventExecutor(38): basprohop\VPNGuard->onPlayerLogin(pocketmine\event\player\PlayerJoinEvent object)
2018-06-27 [21:26:02] [Server thread/DEBUG]: #1 src/pocketmine/plugin/RegisteredListener(98): pocketmine\plugin\MethodEventExecutor->execute(basprohop\VPNGuard object, pocketmine\event\player\PlayerJoinEvent object)
2018-06-27 [21:26:02] [Server thread/DEBUG]: #2 src/pocketmine/plugin/PluginManager(756): pocketmine\plugin\RegisteredListener->callEvent(pocketmine\event\player\PlayerJoinEvent object)
2018-06-27 [21:26:02] [Server thread/DEBUG]: #3 src/pocketmine/Player(1029): pocketmine\plugin\PluginManager->callEvent(pocketmine\event\player\PlayerJoinEvent object)
2018-06-27 [21:26:02] [Server thread/DEBUG]: #4 src/pocketmine/Player(977): pocketmine\Player->doFirstSpawn()
2018-06-27 [21:26:02] [Server thread/DEBUG]: #5 src/pocketmine/level/Level(2459): pocketmine\Player->sendChunk(integer 14, integer 19, pocketmine\network\mcpe\protocol\BatchPacket object)
2018-06-27 [21:26:02] [Server thread/DEBUG]: #6 src/pocketmine/level/Level(2505): pocketmine\level\Level->sendChunkFromCache(integer 14, integer 19)
2018-06-27 [21:26:02] [Server thread/DEBUG]: #7 src/pocketmine/level/format/io/ChunkRequestTask(88): pocketmine\level\Level->chunkRequestCallback(integer 14, integer 19, pocketmine\network\mcpe\protocol\BatchPacket object)
2018-06-27 [21:26:02] [Server thread/DEBUG]: #8 src/pocketmine/scheduler/AsyncPool(285): pocketmine\level\format\io\ChunkRequestTask->onCompletion(pocketmine\Server object)
2018-06-27 [21:26:02] [Server thread/DEBUG]: #9 src/pocketmine/Server(2508): pocketmine\scheduler\AsyncPool->collectTasks()
2018-06-27 [21:26:02] [Server thread/DEBUG]: #10 src/pocketmine/Server(2255): pocketmine\Server->tick()
2018-06-27 [21:26:02] [Server thread/DEBUG]: #11 src/pocketmine/Server(2129): pocketmine\Server->tickProcessor()
2018-06-27 [21:26:02] [Server thread/DEBUG]: #12 src/pocketmine/Server(1710): pocketmine\Server->start()
2018-06-27 [21:26:02] [Server thread/DEBUG]: #13 src/pocketmine/PocketMine(237): pocketmine\Server->__construct(BaseClassLoader object, pocketmine\utils\MainLogger object, string /home/myservertest/, string /home/myservertest/plugins/)
2018-06-27 [21:26:02] [Server thread/DEBUG]: #14 /home/myservertest/PocketMine-MP.phar(1): require(string phar:///home/myservertest/PocketMine-MP.phar/src/pocketmine/PocketMine.php)

player running an anomyzer is not kicked ?

Hi,

My server used SimpleAuth + VPNGuard plugins with an APIkey

Player Steve connected with an anomyzer.
It seems to me that the kick command does not work because player moved too fast reverting movement
No kick message given by the console
I did not changed config.yml excepted add api key

Commands to run if player has connected with a anonymizer

#command:

- kick %p You seem to be using a VPN or Proxy

command: []

should i modify these config line ?
is it correct ?

thanks

Log :

2017-09-20 [20:04:42] �[Server thread/NOTICE]: Player data not found for "Steve", creating new profile�
2017-09-20 [20:04:44] �[Server thread/INFO]: Steve[/147.75.210.241:52463] logged in with entity id 23534 at (world, 3096, 81, 3175)�
2017-09-20 [20:06:15] �[Server thread/INFO]: Steve left the game�
2017-09-20 [20:06:16] �[Server thread/INFO]: Steve[/147.75.210.241:52463] logged out due to Kicked by admin. Reason: Login timer expired!�
....
....
....
2017-09-20 [20:51:46] �[Server thread/INFO]: Steve[/147.75.210.241:62990] logged in with entity id 25259 at (world, 3096, 81, 3175)�
2017-09-20 [20:51:47] �[Server thread/INFO]: [VPNGuard] Player Steve has connected with the IP: 147.75.210.241�
2017-09-20 [20:51:47] �[Server thread/INFO]: Steve joined the game�
2017-09-20 [20:51:47] �[Server thread/INFO]: Steve connected with a anonymizer�
2017-09-20 [20:51:47] �[Server thread/INFO]: Steve Details -> ONAVO �
2017-09-20 [20:52:42] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:42] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:43] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:43] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:43] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:43] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:43] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:43] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:43] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:43] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:43] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:43] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:43] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:43] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:43] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:43] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:43] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:44] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:44] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:44] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:44] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:44] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:44] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:44] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:44] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:44] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:44] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:44] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:44] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:44] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:44] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:45] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:45] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:45] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:45] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:45] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:45] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:45] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:45] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:45] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:45] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:45] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:45] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:45] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:45] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:45] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:45] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:46] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:46] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:46] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:46] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:46] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:46] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:46] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:46] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:46] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:46] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:46] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:46] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:46] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:46] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:46] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:46] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:47] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:47] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:47] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:47] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:47] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:47] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:47] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:47] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:47] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:47] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:47] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:47] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:47] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:47] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:48] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:48] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:48] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:48] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:48] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:48] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:48] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:48] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:48] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:48] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:48] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:48] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:48] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:48] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:48] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:48] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:49] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:49] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:49] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:49] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:49] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:50] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:50] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:51] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:52] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:52] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:53] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:53] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:54] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:54] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:55] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:55] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:55] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:56] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:56] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:56] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:56] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:56] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:56] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:56] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:56] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:56] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:56] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:57] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:57] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:57] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:57] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:57] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:58] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:59] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:59] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:52:59] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:53:00] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:53:01] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:53:02] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:53:02] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:53:02] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:53:02] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:53:03] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:53:04] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:53:04] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:53:05] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:53:06] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:53:06] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:53:06] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:53:06] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:53:07] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:53:09] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:53:09] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:53:09] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:53:09] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:53:09] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:53:10] �[Server thread/WARNING]: Steve moved too fast, reverting movement�
2017-09-20 [20:53:10] �[Server thread/INFO]: Steve left the game�
2017-09-20 [20:53:10] �[Server thread/INFO]: Steve[/147.75.210.241:62990] logged out due to client disconnect�

PMMP Version : PocketMine-MP 1.6.2dev-578

Plugins :
PurePerms 1.4.1-dev2; EconomyAPI 5.7.1-dev2; Jail 1.2.0; ItemCasePE 1.1.0-dev1; BanItem 2.3.2-dev; SimpleAuth 2.1.0-map.4; VPNGuard 1.0.6; AlwaysSpawn 2.2.3-dev1; EconomyShop 2.0.8-dev2; KillMoney 1.1.2; PiggyCustomEnchants 1.0.2; ChatToDiscord 1.1.0; AllSigns 1.0.3; essentialsTP 1.2.0-dev1; SimpleAuthHelper 2.0.6; CrateKeys 1.0.0; iProtector 4.0.1#3.1b; Slapper 1.3.5; Parkour 1.5.6; xyz 1.0.3; FactionsPro 1.3.11-2.alpha8; PureChat 1.4.10-dev2

[Crash Server] Trying to get permissions of closed player" (EXCEPTION) in "src/pocketmine/Player" at line 623

@HiddenMotives
@DarkWav

server crash when a banned ip player try to connect to the server with a new name account

62.XXX.107.16 is a banned ip in the config banned.yml =) 62.XXX.107.16/32
62.XXX.107.16 is not a VPN IP
theo666 is the new name of the banned player
player try to connect 2 times at same time

https://poggit.pmmp.io/r/43245/VPNGuard_dev-16.phar
https://jenkins.pmmp.io/job/PocketMine-MP/1642/artifact/PocketMine-MP.phar

2018-12-02 [09:30:33] [Server thread/NOTICE]: Player data not found for "theo666", creating new profile
2018-12-02 [09:30:34] [Server thread/INFO]: theo666[/62.XXX.107.166:59391] logged in with entity id 47765 at (lobby, 0, 6, 0)
2018-12-02 [09:30:36] [Server thread/INFO]: [VPNGuard] Player theo666 has connected with the IP: 62.XXX.107.166
2018-12-02 [09:30:36] [Server thread/INFO]: [09:30:36] theo666 [-]
2018-12-02 [09:30:36] [Server thread/INFO]: theo666[/62.XXX.107.166:59391] logged out due to Votre sous-réseau IP est banni !
2018-12-02 [09:30:36] [Server thread/INFO]: [VPNGuard] theo666 has been disconnected for being in the subnet 62.XXX.107.166/32 which is banned.
2018-12-02 [09:30:36] [Server thread/INFO]: [09:30:36] theo666 [+]
2018-12-02 [09:30:36] [Server thread/CRITICAL]: InvalidStateException: "Trying to get permissions of closed player" (EXCEPTION) in "src/pocketmine/Player" at line 623
2018-12-02 [09:30:36] [Server thread/DEBUG]: #0 src/pocketmine/Player(1057): pocketmine\Player->hasPermission(string pocketmine.broadcast.admin)
2018-12-02 [09:30:36] [Server thread/DEBUG]: #1 src/pocketmine/Player(985): pocketmine\Player->doFirstSpawn()
2018-12-02 [09:30:36] [Server thread/DEBUG]: #2 src/pocketmine/level/Level(2464): pocketmine\Player->sendChunk(integer -2, integer 3, pocketmine\network\mcpe\protocol\BatchPacket object)
2018-12-02 [09:30:36] [Server thread/DEBUG]: #3 src/pocketmine/level/Level(2488): pocketmine\level\Level->sendChunkFromCache(integer -2, integer 3)
2018-12-02 [09:30:36] [Server thread/DEBUG]: #4 src/pocketmine/level/Level(792): pocketmine\level\Level->processChunkRequest()
2018-12-02 [09:30:36] [Server thread/DEBUG]: #5 src/pocketmine/Server(2370): pocketmine\level\Level->doTick(integer 248782)
2018-12-02 [09:30:36] [Server thread/DEBUG]: #6 src/pocketmine/Server(2519): pocketmine\Server->checkTickUpdates(integer 248782, double 1543739436.5459)
2018-12-02 [09:30:36] [Server thread/DEBUG]: #7 src/pocketmine/Server(2265): pocketmine\Server->tick()
2018-12-02 [09:30:36] [Server thread/DEBUG]: #8 src/pocketmine/Server(2135): pocketmine\Server->tickProcessor()
2018-12-02 [09:30:36] [Server thread/DEBUG]: #9 src/pocketmine/Server(1701): pocketmine\Server->start()
2018-12-02 [09:30:36] [Server thread/DEBUG]: #10 src/pocketmine/PocketMine(249): pocketmine\Server->__construct(BaseClassLoader object, pocketmine\utils\MainLogger object, string /home/myserver/, string /home/myserver/plugins/)
2018-12-02 [09:30:36] [Server thread/DEBUG]: #11 /home/myserver/PocketMine-MP.phar(1): require(string phar:///home/myserver/PocketMine-MP.phar/src/pocketmine/PocketMine.php)
2018-12-02 [09:30:36] [Server thread/EMERGENCY]: An unrecoverable error has occurred and the server has crashed. Creating a crash dump
2018-12-02 [09:30:36] [Server thread/EMERGENCY]: Please upload the "/home/myserver/crashdumps/Sun_Dec_2-09.30.36-CET_2018.log" file to the Crash Archive and submit the link to the Bug Reporting page. Give as much info as you can.

PocketMine-MP Crash Dump Sun Dec 2 09:30:36 CET 2018

Error: Trying to get permissions of closed player
File: src/pocketmine/Player
Line: 623
Type: InvalidStateException

Code:
[614] 	/**
[615] 	 * @param permission\Permission|string $name
[616] 	 *
[617] 	 * @return bool
[618] 	 *
[619] 	 * @throws \InvalidStateException if the player is closed
[620] 	 */
[621] 	public function hasPermission($name) : bool{
[622] 		if($this->closed){
[623] 			throw new \InvalidStateException("Trying to get permissions of closed player");
[624] 		}
[625] 		return $this->perm->hasPermission($name);
[626] 	}
[627] 
[628] 	/**
[629] 	 * @param Plugin $plugin
[630] 	 * @param string $name
[631] 	 * @param bool   $value
[632] 	 *
[633] 	 * @return PermissionAttachment

Backtrace:
#0 src/pocketmine/Player(1057): pocketmine\Player->hasPermission(string pocketmine.broadcast.admin)
#1 src/pocketmine/Player(985): pocketmine\Player->doFirstSpawn()
#2 src/pocketmine/level/Level(2464): pocketmine\Player->sendChunk(integer -2, integer 3, pocketmine\network\mcpe\protocol\BatchPacket object)
#3 src/pocketmine/level/Level(2488): pocketmine\level\Level->sendChunkFromCache(integer -2, integer 3)
#4 src/pocketmine/level/Level(792): pocketmine\level\Level->processChunkRequest()
#5 src/pocketmine/Server(2370): pocketmine\level\Level->doTick(integer 248782)
#6 src/pocketmine/Server(2519): pocketmine\Server->checkTickUpdates(integer 248782, double 1543739436.5459)
#7 src/pocketmine/Server(2265): pocketmine\Server->tick()
#8 src/pocketmine/Server(2135): pocketmine\Server->tickProcessor()
#9 src/pocketmine/Server(1701): pocketmine\Server->start()
#10 src/pocketmine/PocketMine(249): pocketmine\Server->__construct(BaseClassLoader object, pocketmine\utils\MainLogger object, string /home/gsp_1485/g3.hmserv.eu-19144/, string /home/gsp_1485/g3.hmserv.eu-19144/plugins/)
#11 /home/gsp_1485/g3.hmserv.eu-19144/PocketMine-MP.phar(1): require(string phar:///home/gsp_1485/g3.hmserv.eu-19144/PocketMine-MP.phar/src/pocketmine/PocketMine.php)

PocketMine-MP version: 3.3.2 [Protocol 291]
Git commit: 200de3fe8460d180a4fd9f5a0e0768bd3085fd50
uname -a: Linux g1 4.5.0-0.bpo.2-amd64 #1 SMP Debian 4.5.4-1~bpo8+1 (2016-05-13) x86_64
PHP Version: 7.2.9
Zend version: 3.2.0
OS : Linux, linux

Did not kick VPN user

03.12 23:33:21 [Server] Server thread/INFO Player TestAccount has connected with the IP: 165.227.62.80
03.12 23:33:21 [Server] Server thread/INFO TestAccount joined the game.
03.12 23:33:22 [Server] Server thread/INFO TestAccount connected with a anonymizer
03.12 23:33:22 [Server] Server thread/INFO TestAccount Details -> ASN - DigitalOcean / Remaining API Requests: 56

Error: "Call to a member function broadcastPacketToViewers() on null" (EXCEPTION) in "src/pocketmine/entity/Entity" at line 1218

@HiddenMotives
@DarkWav

https://poggit.pmmp.io/r/49539/VPNGuard_dev-17.phar
with latest stable PMMP build
https://jenkins.pmmp.io/job/PocketMine-MP/1737/artifact/PocketMine-MP.phar

issue when a banned ip player try to connect

[Server thread/INFO]: [VPNGuard] Player GamerMCY has connected with the IP: 88.XXX.XXX.220
2019-01-20 [08:13:49] [Server thread/INFO]: GamerMCY [-]
2019-01-20 [08:13:49] [Server thread/INFO]: GamerMCY[/88.XXX.XXX.220:56053] logged out due to Votre sous-réseau IP est banni !
2019-01-20 [08:13:49] [Server thread/INFO]: [VPNGuard] GamerMCY has been disconnected for being in the subnet 88.XXX.XXX.220/32 which is banned.
2019-01-20 [08:13:49] [Server thread/INFO]: GamerMCY [+]
2019-01-20 [08:13:49] [Server thread/CRITICAL]: Error: "Call to a member function broadcastPacketToViewers() on null" (EXCEPTION) in "src/pocketmine/entity/Entity" at line 1218
2019-01-20 [08:13:49] [Server thread/DEBUG]: #0 src/pocketmine/Player(1688): pocketmine\entity\Entity->broadcastMotion()
2019-01-20 [08:13:49] [Server thread/DEBUG]: #1 src/pocketmine/entity/Entity(1924): pocketmine\Player->setMotion(pocketmine\math\Vector3 object)
2019-01-20 [08:13:49] [Server thread/DEBUG]: #2 src/pocketmine/Player(3733): pocketmine\entity\Entity->teleport(pocketmine\level\Position object, NULL , NULL )
2019-01-20 [08:13:49] [Server thread/DEBUG]: #3 src/pocketmine/Player(3644): pocketmine\Player->teleport(pocketmine\level\Position object)
2019-01-20 [08:13:49] [Server thread/DEBUG]: #4 src/pocketmine/Player(1098): pocketmine\Player->respawn()
2019-01-20 [08:13:49] [Server thread/DEBUG]: #5 src/pocketmine/network/mcpe/PlayerNetworkSessionAdapter(296): pocketmine\Player->doFirstSpawn()
2019-01-20 [08:13:49] [Server thread/DEBUG]: #6 src/pocketmine/network/mcpe/protocol/SetLocalPlayerAsInitializedPacket(45): pocketmine\network\mcpe\PlayerNetworkSessionAdapter->handleSetLocalPlayerAsInitialized(pocketmine\network\mcpe\protocol\SetLocalPlayerAsInitializedPacket object)
2019-01-20 [08:13:49] [Server thread/DEBUG]: #7 src/pocketmine/network/mcpe/PlayerNetworkSessionAdapter(108): pocketmine\network\mcpe\protocol\SetLocalPlayerAsInitializedPacket->handle(pocketmine\network\mcpe\PlayerNetworkSessionAdapter object)
2019-01-20 [08:13:49] [Server thread/DEBUG]: #8 src/pocketmine/network/mcpe/protocol/BatchPacket(119): pocketmine\network\mcpe\PlayerNetworkSessionAdapter->handleDataPacket(pocketmine\network\mcpe\protocol\SetLocalPlayerAsInitializedPacket object)
2019-01-20 [08:13:49] [Server thread/DEBUG]: #9 src/pocketmine/network/mcpe/PlayerNetworkSessionAdapter(108): pocketmine\network\mcpe\protocol\BatchPacket->handle(pocketmine\network\mcpe\PlayerNetworkSessionAdapter object)
2019-01-20 [08:13:49] [Server thread/DEBUG]: #10 src/pocketmine/Player(3097): pocketmine\network\mcpe\PlayerNetworkSessionAdapter->handleDataPacket(pocketmine\network\mcpe\protocol\BatchPacket object)
2019-01-20 [08:13:49] [Server thread/DEBUG]: #11 src/pocketmine/network/mcpe/RakLibInterface(170): pocketmine\Player->handleDataPacket(pocketmine\network\mcpe\protocol\BatchPacket object)
2019-01-20 [08:13:49] [Server thread/DEBUG]: #12 vendor/pocketmine/raklib/src/server/ServerHandler(99): pocketmine\network\mcpe\RakLibInterface->handleEncapsulated(string 88.XXX.XXX.220 56053, raklib\protocol\EncapsulatedPacket object, integer 0)
2019-01-20 [08:13:49] [Server thread/DEBUG]: #13 src/pocketmine/network/mcpe/RakLibInterface(110): raklib\server\ServerHandler->handlePacket()
2019-01-20 [08:13:49] [Server thread/DEBUG]: #14 src/pocketmine/network/mcpe/RakLibInterface(100): pocketmine\network\mcpe\RakLibInterface->process()
2019-01-20 [08:13:49] [Server thread/DEBUG]: #15 vendor/pocketmine/snooze/src/SleeperHandler(123): pocketmine\network\mcpe\RakLibInterface->pocketmine\network\mcpe\{closure}()
2019-01-20 [08:13:49] [Server thread/DEBUG]: #16 vendor/pocketmine/snooze/src/SleeperHandler(85): pocketmine\snooze\SleeperHandler->processNotifications()
2019-01-20 [08:13:49] [Server thread/DEBUG]: #17 src/pocketmine/Server(2349): pocketmine\snooze\SleeperHandler->sleepUntil(double 1547968429.358)
2019-01-20 [08:13:49] [Server thread/DEBUG]: #18 src/pocketmine/Server(2209): pocketmine\Server->tickProcessor()
2019-01-20 [08:13:49] [Server thread/DEBUG]: #19 src/pocketmine/Server(1785): pocketmine\Server->start()
2019-01-20 [08:13:49] [Server thread/DEBUG]: #20 src/pocketmine/PocketMine(249): pocketmine\Server->__construct(BaseClassLoader object, pocketmine\utils\MainLogger object, string /home/gsp_1485/g3.hmserv.eu-19144/, string /home/gsp_1485/g3.hmserv.eu-19144/plugins/)
2019-01-20 [08:13:49] [Server thread/DEBUG]: #21 (1): require(string phar:///home/gsp_1485/g3.hmserv.eu-19144/PocketMine-MP.phar/src/pocketmine/PocketMine.php)
2019-01-20 [08:13:49] [RakLibServer thread/NOTICE]: Blocked 88.XXX.XXX.220 for 5 seconds

Shutting down server to prevent blacklisting on API Database

Today my server shutting down when player connected.
thanks

Configuration :

PocketMine-MP 1.7dev-151
VPNGuard 1.0.6 bumped Alpha9 + API key Basic

in config.yml =) bypass-check: true
...
Allow users to connect if API Server encounters any errors (Such as Timeout)?
bypass-check: true
...

I related this in PMMP Forum
https://forums.pmmp.io/threads/backend-database-server-is-down-when-player-connected.

2017-10-05 [08:38:15] [Server thread/INFO]: [VPNGuard] Player Steve has connected with the IP: 80.215.165.159
2017-10-05 [08:38:15] [Server thread/INFO]: Steve joined the game
2017-10-05 [08:38:16] [Server thread/WARNING]: API Server Returned Error Message: Backend Database Server is Down. when Steve connected
2017-10-05 [08:38:16] [Server thread/CRITICAL]: Shutting down server to prevent blacklisting on API Database
2017-10-05 [08:38:16] [Server thread/INFO]: Disabling ChatToDiscord v1.1.0
2017-10-05 [08:38:16] [Server thread/INFO]: [ChatToDiscord] Disabled
2017-10-05 [08:38:16] [Server thread/INFO]: Disabling VPNGuard v1.0.6
2017-10-05 [08:38:16] [Server thread/INFO]: Disabling essentialsTP v1.2.0-2
2017-10-05 [08:38:16] [Server thread/INFO]: [essentialsTP] essentialsTP+ Disabled
2017-10-05 [08:38:16] [Server thread/INFO]: Disabling Parkour v1.5.6-2
2017-10-05 [08:38:16] [Server thread/INFO]: Disabling AllSigns v1.0.4
2017-10-05 [08:38:16] [Server thread/INFO]: Disabling PiggyCustomEnchants v1.0.2
2017-10-05 [08:38:16] [Server thread/INFO]: Disabling iProtector v3.1.0-3
2017-10-05 [08:38:16] [Server thread/INFO]: Disabling VoteReward v3.0.2-2
2017-10-05 [08:38:16] [Server thread/INFO]: Disabling xyz v1.0.4
2017-10-05 [08:38:16] [Server thread/INFO]: [xyz] /xyz disabled.
2017-10-05 [08:38:16] [Server thread/INFO]: Disabling AlwaysSpawn v2.2.3-3
2017-10-05 [08:38:16] [Server thread/INFO]: Disabling PurePerms v1.4.1-2
2017-10-05 [08:38:16] [Server thread/INFO]: Disabling ItemCasePE v1.2.1
2017-10-05 [08:38:16] [Server thread/INFO]: Disabling Slapper v1.3.7
2017-10-05 [08:38:16] [Server thread/INFO]: Disabling EconomyAPI v5.7.1-3
2017-10-05 [08:38:16] [Server thread/INFO]: Disabling BanItem v2.3.2-2.alpha8
2017-10-05 [08:38:16] [Server thread/INFO]: Disabling EconomyShop v2.0.8-2
2017-10-05 [08:38:16] [Server thread/INFO]: Disabling PureChat v1.4.10-3
2017-10-05 [08:38:16] [Server thread/INFO]: Disabling FactionsPro v1.4.5-5
2017-10-05 [08:38:16] [Server thread/INFO]: Steve left the game
2017-10-05 [08:38:16] [Server thread/INFO]: Steve[/88.226.166.155:47732] logged out due to Server en maintenance
2017-10-05 [08:38:16] [Server thread/INFO]: Unloading level "world"
2017-10-05 [08:38:21] [Server thread/INFO]: Stopping other threads```



PocketMine-MP 1.7dev-151: ChatToDiscord 1.1.0; VPNGuard 1.0.6; essentialsTP 1.2.0-2; Parkour 1.5.6-2; AllSigns 1.0.4; PiggyCustomEnchants 1.0.2; iProtector 3.1.0-3; VoteReward 3.0.2-2; xyz 1.0.4; AlwaysSpawn 2.2.3-3; PurePerms 1.4.1-2; ItemCasePE 1.2.1; Slapper 1.3.7; EconomyAPI 5.7.1-3; BanItem 2.3.2-2.alpha8; EconomyShop 2.0.8-2; PureChat 1.4.10-3; FactionsPro 1.4.5-5


Upgrade Alpha8

Hi,
Could you please upgrade VPNGuard on Alpha8
thanks

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.