How can I combat and prevent hacking on a vanilla Minecraft server?

I have a vanilla minecraft server (1.8.7) and I've taken some measures to prevent hacking, but I still have people logging in and breaking stuff at spawn.

Here are some things I've tried to prevent hacking:

  1. Ops.json file is read-only, which is preventing people from adding themselves as OP using certain software.
  2. Command blocks constantly change gamemodes from creative to survivor for anyone in creative that isn't me.
  3. Command blocks kill any activated TNT in the spawn protected area.
  4. Books and quills are removed from peoples inventories to prevent them from using them to hack.
  5. The spawn-protection setting in server.properties set to about 70 (but people are still managing to break individual blocks somehow).
  6. Ban people who are cheating (but I can't always be online)

I've also read that the Bukkit anti-cheat mods aren't 100% when it comes to hacked clients themselves.

Is there anything else I can do to prevent people from logging in and breaking stuff? I have some loyal players and I hate having to do roll-backs and make everyone lose hours of work on the server...


I tried giving everyone adventure mode using a clock, but the hacked clients seem to get around that somehow. I ended up solving the problem by increasing my spawn protection to a lot and also making sure the ops.json file was read only (even at the server level). When I need to, I can use root to set chmod the file and edit it and set it back.