shroudBNC is a modular IRC proxy written in C++. It is capable of proxying IRC connections for multiple users. Using TCL scripts it can be extended.
Amongst its features you can find a user-friendly web interface (coded in TCL and PHP) which allows you to easily create and manage users. A live demonstration of the web interface can be viewed here. Some screenshots are also available.
A variety of operating systems are currently supported: Linux, FreeBSD (and possibly other variations of BSD) and Windows.
Features (summary)
- support for TCL scripts and partial emulation of eggdrop commands
- web interface (which can easily be customized)
- SSL support for both IRC and client connections; including support for client-certificates (and thus public key/passwordless authentication)
- built-in flood protection (so you do not get "excess flood" errors)
- module support (c++ shared libraries)
- asynchronous dns resolving so the bouncer does not freeze while users reconnect
- private messages are logged when users are not connected to the bouncer
- support for IPv6
- vhost.tcl: limit number of users per virtual host
- virtual.tcl: adds "groups" and "virtual admins" who are able to create/manage users within their own group
- lock.tcl: allows you to disable settings for specific users or globally
- partyline.tcl: "internal" channels for bouncer users
- and a lot more...