Installieren / Updaten von UnrealIRCD (getestet mit Version 6.1.0)
wget -O- https://raw.githubusercontent.com/unrealircd/unrealircd/unreal60_dev/doc/KEYS|gpg --import
Zuerst laden wir die Source Dateien herunter. Die aktuelle Version wird anstatt der x.x.x ersetzt (z.B. unrealircd-6.1.0.tar.gz).
wget https://www.unrealircd.org/downloads/unrealircd-x.x.x.tar.gz
wget https://www.unrealircd.org/downloads/unrealircd-x.x.x.tar.gz.asc gpg --verify unrealircd-x.x.x.tar.gz.asc unrealircd-x.x.x.tar.gz
Nun entpacken wir das Archiv.
tar xfvz unrealx.x.x.tar.gz
Um die config Dateien zu schützen, sollte das Verzeichnis mit dem veralteten IRCD umbenannt werden. Hierzu muss zuerst der UnrealIRCD gestoppt werden.
./Unreal.x.x.x/unreal stop mv Unrealx.x.x Unreal
Wechseln wir ins Verzeichnis des neuen IRCD und fangen mit der Konfiguration an.
cd Unrealx.x.x ./Config
Nun beginnt der Konfigurationsvorgang. Folgende Werte werden empfohlen:
In what directory do you want to install UnrealIRCd? (Note: UnrealIRCd 6 will need to be installed somewhere. If this directory does not exist it will be created.) [/home/USER/unrealircd] -> What should the default permissions for your configuration files be? (Set this to 0 to disable) It is strongly recommended that you use 0600 to prevent unwanted reading of the file [0600] -> If you want, you can manually enter the path to OpenSSL/LibreSSL here. In most cases you can leave this blank and it will be detected automatically. [] -> UnrealIRCd comes with support for 'remote includes', this allows things like: include "https://www.example.org/files/opers.conf"; Do you want to compile with the libcurl library to enable additional protocols? If you answer 'No' then only https:// links will work for remote includes. Answer 'Yes' if you need other protocols, such as plaintext http, ftp, tftp or smb. Most people answer 'No' here because they don't use remote includes or only need https. [No] -> How far back do you want to keep the nickname history? [2000] -> GeoIP is a feature that allows converting an IP address to a location (country) Possible build options: classic: This is the DEFAULT geoip engine. It should work on all systems and receives automatic updates. libmaxminddb: This uses the libmaxminddb library. If you want to use this, then you need to install the libmaxminddb library on your system first none: Don't build with any geoip library (geoip-csv is still built) Choose one of: classic, libmaxminddb, none [classic] -> What is the maximum number of sockets (and file descriptors) that UnrealIRCd may use? It is recommended to leave this at the default setting 'auto', which at present results in a limit of up to 16384, depending on the system. When you boot UnrealIRCd later you will always see the effective limit. [auto] -> Are you running UnrealIRCd as a test, debugging a problem or developing a module? Then it is possible to run with AddressSanitizer enabled. This will make it catch bugs such as out-of-bounds and other memory corruption issues, which can be really helpful in some cases. The downside is that it will consume a lot more memory and run slower too. So, only answer 'Yes' if you are OK with this. Also, on some systems (notably FreeBSD), when you enable AddressSanitizer, UnrealIRCd may fail to start. So when in doubt, answer 'No'. Do you want to enable AddressSanitizer? [No] -> Would you like to pass any custom parameters to configure? Most people don't need this and can just press ENTER. Otherwise, see `./configure --help' and write them here: [] ->
Die Angaben können nach Bedarf eingestellt werden.
Nun kompilieren wir die Sourcen.
make
make install
Anschließend müssen die config Dateien bearbeitet werden.
Dieser Abschnitt bezieht sich noch auf die Version 3
Folgende Dateien müssen aus dem alten Verzeichnis ins neue kopiert werden:
ircd.motd ircd.rules oper.conf server.cert.pem server.key.pem server.req.pem spamfilter.conf unrealircd.conf vhost.conf network/yournetwork.network
Nun können wir den IRCD starten.
./unrealircd start