AutoUBL
This plugin automatically applies bans based on the /r/ultrahardcore Universal Ban-List. Designed to be simple and easy to use whilst providing a wealth of features and configuration options, as well as security and efficiency. Works out-of-the-box on first install. The default settings should be good for the majority of users.
Features
- Simple easy-to-use commands
- Works out-of-the-box, configuration is optional
- Highly efficient and effective
- Automatically downloads and applies the /r/ultrahardcore Universal Ban-List on server startup
- Commands and configuration to set up exemptions to the ban-list
- Configurable regular updates of the ban-list
- By default, reads the ban-list directly from the /r/UHC Ban List Google Spreadsheet
- Configurable ban-list URL for switching to an alternative provider
- Configurable security settings to prevent DoS attacks from the connection of the ban-list server
- Manually force a UBL update using a command
- Manually reload configuration settings using a command without needing to restart
- Displays UBL information to banned players on join attempt
- Compatible with server bans and ban plugins - Anyone you ban manually will stay banned
Commands and Permissions
Command | Permission | Description |
---|---|---|
/ubl exempt [player] | autoubl.commands.exemption (default op) | Adds a player to the exempt list so that they can join the server even if they are on the UBL |
/ubl unexempt [player] | autoubl.commands.exemption (default op) | Removes a player to the exempt list so that they cannot join the server if they are on the UBL |
/ubl update | autoubl.commands.update (default op) | Update the banlist from the banlist-url immediately |
/ubl reload | autoubl.commands.reload (default op) | Reload AutoUBL settings from the config.yml and update the banlist |
Detailed command help is available in-game by typing /ubl. Typing any command without its parameters (if it has any), will display detailed help for that command
Configuration
The config.yml can be located in your plugins folder under AutoUBL after first run. It should be edited using a simple text editor only and is in YAML format. If you are unsure how to do this, please read your CraftBukkit documentation, it is exactly the same as modifying the bukkit.yml.
- banlist-url: The URL to check for the banlist
- max-bandwidth: The maximum bandwidth to allocate to loading the banlist in kB/sec (faster values load the banlist quicker, lower values reduce the impact of denial of service attacks from the banlist server)
- timeout: The time in seconds before the connection to the ban-list server times out (longer time deals with larger ban-lists better, shorter time reduces the duration of denial of service attacks from the ban-list server
- retries: How many times to attempt to reconnect to the server if it fails to connect before falling back on the local UBL backup
- auto-check-interval: How often (in minutes) to check the UBL and update it (0 for startup only)
- exempt: a list of players exempt from the UBL on this server
You can reload changes to the config.yml while the server is running using: /ubl reload
Security Considerations
If you use a custom ban-list URL, ensure that the server you are connected to is a trusted source. Although there are security measures against attacks originating from the connection to the ban-list server, they will still be able to apply and lift bans as they choose.
Development
Sources are available on GitHub: https://github.com/XHawk87/AutoUBL
Ideas
- None yet
Bugs
- None reported yet
Donations
If you'd like to contribute towards the continued development, support and maintenance of this project, please consider joining me on Patreon, and making a one-time or recurring pledge.
Help
This plugin uses Java 7
If you get the followed error on starting up the server with this plugin installed "Unsupported major.minor version 51.0". This means you are using an out of date version of Java. If you don't know how to upgrade, please contact your server hosting provider and ask them for help in upgrading to Java 7, or contact Oracle customer support. Mac OS X users require JDK 7 instead of JRE 7.
Support Channel
If you need help you can leave a comment below and I will get back to you as soon as I can. You can also join my IRC chatroom using the following link, but please read the tutorial first. http://webchat.esper.net/?channels=XHawk87&prompt=1
Please read the documentation before asking for support
Hey any idea what this is?
https://hastebin.com/usixobicez.apache
Idk why it keeps popping up :/
It means someone put a double-quotation mark (") at the start of PinchyDeamon's UUID, but forget to put one at the end too. You should ask someone who maintains the banlist to correct the error.
@ilomplays
It sounds like you're using an old version of AutoUBL as that error message was removed in version 2.0 and now simply waits for AutoUBL to be ready before letting people join. I always try to make my plugins backwards compatible, so updating to the latest version is recommended but may or may not fix your problem.
Try checking your server logs to see if there was some error on startup that is preventing AutoUBL from completing its initialisation. You can use services such as http://pastebin.com to send the full stack trace and I can take a look at it.
When I put this on my 1.7.2 server it would just say "AutoUBL is not ready" whenever I tried to connect, I have tried to wait for it to work, but it just keeps giving me the failed to connect message whenever I try to connect, where have I messed up?
@ThisUsernameIsMine
This information will be present in the console and server logs just like any other connection attempt. The kick message to that player will also be visible there.
It may also be possible to notify Ops or those with a given permission node with an in-game message, however I could see that being abused by players on the UBL, repeatedly making connection attempts in order to annoy the server staff.
@XHawk87
A(n in-game) message (and possibly also in console) for OPs and/or the ones who have the appropiate permission/node to receive this notification that a blacklisted player attempted/tried to join the server.
@ThisUsernameIsMine
Thanks.
I am not sure what you mean by that. What kind of notification would staff get, and when? If it is for UBLed staff, what would be different in the notification from a normal UBLed player? Do you mean that Ops should also be notified, and not just console, when a banned player attempts to join?
Looks neat and complete. Will test it out asap.
btw: •Displays UBL information to banned players on join attempt
No (optional) notification for staff?
Thnx :-)
I do not check the curse pages often. Please only leave comments on the Project Site. Thank you!