Loosely based on Wooly Spud's Advanced Banned User Manager
(although it has nearly gone through an entire rewrite since I started working on it), I give you Bantron:
The major differences between Bantron, and Wooly Spud's version is it introduces a more robust reasons feature and also allows expire times for each ban.
Bantron has two different reasons. The first is the private reason, the second the public reason. The private reason is only viewable from within Bantron and the admin panel, so this is where you can keep all sorts of good information on why you banned the user, being as nasty as you want. The public reason is displayed to the user whenever they attempt to log in (or in the case of an IP ban, whenever they access a page). Basically, this replaces the generic ban error with one where you can explain to the user why they've been banned. Or you can also opt to keep the generic message. The public reason can have three settings--you can keep it as the generic message, you can have it mirror the private message (in case you've already explained everything in the private message, and just want the user to get that same message), or you can create your own custom public message.
Expire time allows you to set a time for each ban after which point the ban will stop working (it will remain in the database, but it won't be effective). This also has a few settings: never, relative time, or absolute time. Never is self-explanatory, the ban simply remains effective forever just like normal bans. Relative time allows you to specify a number of minutes/hours/days/weeks/months/years into the future after which the ban will become inactive. Absolute time, allows you to specify a certain date and time (hh:mm am/pm/24-hour mm/dd/yyyy) after which the ban will become inactive).
Bantron also features the list type interface for looking at bans like the Advanced Banned User Manager, and keeps track of all that other good stuff as well (when the ban was put into place, by which administrator, etc). I've also reworked the general interface from the Advanced Banned User Manager a bit to more of my liking.