Note: The tool was tested with PHP 5.3.3 and Unreal IRCd 3.2.10. Other setups may cause problems or not work at all.
-
Set up your Unreal IRCd. You can get the sources for this via http://www.unrealircd.com/
-
Copy the files
index.php
andconfiguration.php.dist
to a directory that can be accessed by your webserver. You may want to use HTTP Authentification to protect the directory from unwanted access. -
Create an empty file
whitelist.conf
or copy the one that was delivered to a directory, that can be accessed both by your webserver and your IRCd. -
Adjust your
unrealircd.conf
4.1 Deny all the channels:
deny channel { channel "#*"; reason "Channel not allowed"; };
4.2 Add an oper account that can rehash:
oper rehashbot { class clients; from { userhost *; }; password "password"; flags { can_rehash; }; };
4.3 Include the file with the whitelist definitions.
include "/path/to/directory/whitelist.conf";
-
Copy
configuration.php.dist
toconfiguration.php
. -
Adjust
configuration.php
. The value ofIRC_PASS
can be something random. -
You're done.
Access the file index.php
via HTTP. Everything else should be clear.
The tool maintains a file that is included in the users's unrealircd.conf
.
In this file there are Allow-Statements for all the channels that may be accessed.
Every time the file is changed, the tool connects to the IRC Server, authenticates as an oper
and let's the demon rehash the configuration.
PHP 5 or later, allowed to use fsockopen to connect to remote hosts. (Tested with 5.3.3)
UnrealIRCd 3 or later (Tested with 3.2.10)
Unreal IRCd Whitelist Editor let's you edit the channel whitelist of an Unreal IRCd
Copyright (C) 2013 Simon Plasger
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.
See COPYING for details.