Author: Andreas Pschorn
mIAuthd is an authentication daemon primarily designed to work with IRC daemons (such as snircd and wircd) to provide enhanced authentication support, especially for webchat clients like qwebirc or jwebirc. It also supports the SASL authentication mechanism for integration with IRC services such as newserv and various IRCd implementations.
The project enables secure authentication and communication between IRC daemons and trusted backends, offering verdicts (e.g., KILL, PASS, UNTHROTTLE) based on backend responses, and supporting HMAC-based challenge-response authentication.
- Acts as an authentication backend for IRC daemons (snircd, wircd, etc.)
- Supports SASL authentication for integration with IRC services (newserv)
- Challenge-response authentication using HMAC (MD5)
- Backend communication and verdict handling (KILL/PASS/UNTHROTTLE commands)
- Easy configuration via JSON config file
- Designed for use with webchat frontends like qwebirc
- Java 17 or higher
- Maven (for building from source)
- Compatible IRCd (snircd, wircd)
- Download the Release:
- Download the latest release ZIP: mIAuthd.zip
- Extract the ZIP file on your server.
-
Java Setup:
- Ensure Java 17 or newer is installed (
java -version).
- Ensure Java 17 or newer is installed (
-
Configure IRCd:
- Clone and build your IRC daemon, e.g.:
git clone https://github.com/WarPigs1602/wircd.git cd wircd ./configure make -j$(cat nproc) make install - The IRCd binary will be located in
~/bin/.
- Clone and build your IRC daemon, e.g.:
-
Configuration:
- Copy
config.jsonto your~/lib/directory and edit it as needed. - Copy
example.conftoircd.confin the same folder:cp example.conf ircd.conf
- Copy
-
IRCd Integration:
- Edit the
ircd.confin~/lib/to include:IAuth { program = "java" "-jar" "path to mIAuthd.jar" <optional full path to config file>; }; - In the features section, enable:
"HIS_STATS_IAUTH" = "TRUE";
- Edit the
Start your IRCd as usual. The mIAuthd daemon will handle authentication requests from the IRCd and communicate with the trusted backend for user verification.
This project is licensed under the MIT License. See the LICENSE file for details.
Developed and maintained by Andreas Pschorn.
Have fun using mIAuthd!