Server IRC: come creare una rete IRC

Quando si cerca una soluzione semplice per la comunicazione all’interno dell’organizzazione o dell’azienda, ci si imbatte nell’ormai collaudato IRC (Internet Relay Chat), ancora oggi che sono passati più di 30 anni dalla sua invenzione. Un server IRC è configurabile rapidamente ed è accessibile su tutte le piattaforme.

Server virtuali (VPS) di IONOS

Hosting VPS conveniente e potente per gestire le tue applicazioni personalizzate, con consulente personale e supporto 24/7.

100% storage SSD
Pronto in 55 sec.
Certificato SSL

Server IRC per chat IRC: tutorial

Ci sono diverse ragioni per cui IRC è ancora richiesta come piattaforma di chat interattiva, nonostante siano trascorsi più di 30 anni dal suo rilascio: il fatto più importante è che esistono client IRC per quasi tutti i sistemi operativi e i dispositivi. Inoltre, la tecnologia alla base del sistema di chat testuale si contraddistingue per la sua semplicità. È quasi altrettanto facile creare un proprio server IRC per la comunicazione interna, sia che si tratti di una grande azienda, di una PMI, di un’organizzazione o di un’associazione.

Nei paragrafi successivi scoprite quali requisiti deve soddisfare un server IRC e come impostare e configurare un server per le chat IRC.

Primo passaggio: trovare la base hardware giusta

Se volete gestire chat IRC pubbliche o private, potete in linea di principio utilizzare soluzioni esterne come i server online di Libera Chat. Tuttavia, un server IRC personale vi consente di avere il pieno controllo su tutti i dati, i file di log e le impostazioni. Inoltre, non dovrete affrontare i rischi e i problemi quotidiani causati da bot e spammer nelle reti IRC disponibili pubblicamente.

Se non desiderate acquistare un computer separato per ospitare l’applicazione server IRC, è consigliabile noleggiare l’hardware del server da un fornitore. I requisiti hardware sono così minimalisti che di solito già optando per tariffe a basso costo si riescono a configurare tranquillamente chat IRC con diverse centinaia di partecipanti. Se si desidera che più persone possano accedere al server IRC contemporaneamente, la regola da seguire è quella di noleggiare più RAM e CPU. Nella tabella seguente sono elencati tre scenari applicativi tipici e le corrispondenti tariffe server di IONOS.

Uso di esempio di un server IRC

Tariffa server IONOS adatta

ONG / Associazione (più di 100 persone)

VPS M

Azienda con più sedi operante a livello nazionale (più di 1.000 persone)

VPS L

Grande gruppo aziendale operante a livello internazionale (più di 10.000 persone)

VPS XL

Consiglio

Le tariffe dei server virtuali (VPS) di IONOS consigliate nella tabella utilizzano risorse virtualizzate come base per il server IRC. Rispetto ai server dedicati di IONOS, che funzionano con un hardware aziendale dedicato, non si rilevano perdite significative nelle prestazioni.

Secondo passaggio: selezionare il demone IRC (IRCd)

Il software del server per chat IRC è chiamato demone IRC o IRCd, abbreviato. Il primo demone, che l’inventore di IRC Jarkko Oikarinen ha pubblicato come software libero nel 1988, è servito come modello per molte versioni successive. Da qui in poi altri demoni, come quello usato nel tutorial InspIRCd, sono stati sviluppati da zero. Come i client, anche le applicazioni server sono generalmente multipiattaforma. Ad esempio, potete eseguire InspIRCd con tutti i comuni sistemi operativi per server di Microsoft, ma anche con le tipiche distribuzioni Linux come Ubuntu e Debian, nonché con sistemi Mac e BSD.

Terzo passaggio: installare il server IRC e le dipendenze

Dopo aver scelto l’applicazione server, avete la possibilità di installarla includendo tutti i componenti necessari.

N.B.

Se avete affittato risorse server esterne, impostate prima una connessione remota all’ambiente hardware. I clienti IONOS possono impostarla comodamente dall’area clienti accessibile dal browser.

Per questo tutorial, in cui utilizziamo un server Linux come esempio, abbiamo scelto il popolare demone IRC InspIRCd, scritto in C++, come menzionato prima. Prima di poter installare il software, tuttavia, dobbiamo impostare le dipendenze necessarie tramite il terminale. In particolare, si tratta dei seguenti componenti:

Il sistema di gestione delle versioni Git:

sudo apt-get install git
sudo apt-get install perl

Il compilatore C++ G++:

sudo apt-get install g++

Lo strumento di gestione delle build make:

sudo apt-get install make

Dopo aver installato tutte le dipendenze, potete scaricare la versione corrente del demone IRC. Trovate i dati necessari nella directory ufficiale GitHub di InspIRCd. Con il seguente comando da terminale scaricate i file sorgente dell’ultima edizione (qui: 3.12.0; aprile 2022):

wget https://github.com/inspircd/inspircd/archive/v3.12.0.tar.gz

Quindi decomprimete i file sorgente compressi con tar:

tar xvf ./v3.12.0.tar.gz

Quarto passaggio: creare un server IRC (processo “build”)

Nel passaggio successivo, è arrivato il momento del processo “build”, ovvero della creazione della propria installazione di IRC. A tale scopo, spostatevi innanzitutto nella directory di installazione di InspIRCd:

cd inspircd-3.12.0
N.B.

Il numero di versione deve essere modificato di conseguenza, se in precedenza avete scaricato un’altra versione di InspIRCd.

Per preparare il processo, eseguite il comando seguente:

perl ./configure

A questo punto dovete rispondere a una serie di domande, tra cui quella se desiderate modificare i percorsi predefiniti dei dati del programma o se preferite attivare i moduli manualmente. Dopo aver impostato la configurazione di base, avviate il processo di creazione:

make -j5 install

Se il processo è andato a buon fine, vi verrà mostrato sul terminale il messaggio “INSTALL COMPLETE!” (“Installazione completata”).

Quinto passaggio: configurare il server

Ora create un nuovo file di testo nella seguente directory per le impostazioni di configurazione del server IRC:

~/run/conf/inspircd.conf

Inserite il file nella seguente configurazione di esempio:

<config format="xml">
<define name="bindip" value="1.2.2.3">
<define name="localips" value="&bindip;/24">

####### SERVER CONFIGURATION #######

<server
name="SERVER_HOSTNAME/FQDN"
description="SERVER_DESCRIPTION"
id="SERVER_SID"
network="NETWORK_NAME">


####### ADMIN INFO #######

<admin
name="ADMIN_NAME"
nick="ADMIN_NICK"
email="ADMIN_EMAIL">

####### PORT CONFIGURATION #######

<bind
address="SERVER_IP"
port="SERVER_PORT"
type="SERVER_TYPE">

Tuttavia, non potete semplicemente riportare queste impostazioni senza le opportune modifiche. Per la configurazione di un server IRC, dovete sostituire i segnaposto in lettere maiuscole con le rispettive informazioni personalizzate:

  • SERVER_HOSTNAME/FQDN: nome host o FQDN del server
  • SERVER_DESCRIPTION: breve descrizione del server IRC
  • SERVER_SID: sequenza unica di tre caratteri; il primo carattere deve essere un numero, le lettere devono essere maiuscole
  • NETWORK_NAME: nome della rete IRC
  • ADMIN_NAME: nome dell’amministratore del server IRC
  • ADMIN_NICK: nickname dell’amministratore del server IRC
  • ADMIN_EMAIL: indirizzo di posta elettronica dell’amministratore del server IRC
  • SERVER_IP: indirizzo IP attraverso il quale è possibile accedere al server IRC
  • SERVER_PORT: porta del server (tipicamente: 6697)
  • SERVER_TYPE: tipo di connessione consentita per questo endpoint (valore predefinito: clients)
Consiglio

Trovate un elenco dettagliato delle possibili impostazioni di inspircd.conf sulla documentazione ufficiale di InspIRCd.

Sesto passaggio: avviare il demone InspIRCd

Salvate la configurazione individuale e avviate l’applicazione del server IRC eseguendo il seguente comando da terminale nella directory InspIRCd:

run/inspircd start

Se l’applicazione server IRC viene avviata con successo, il terminale vi avvisa con un messaggio che include l’ID del processo del demone (in questo caso: 10865). Ora potete connettervi al server con qualsiasi client IRC compatibile, come HexChat o Pidgin, e creare e amministrare qualsiasi chat IRC con l’account amministratore impostato.

Consiglio

Per arrestare il server IRC, eseguite il comando “run/inspircd stop” nella directory di installazione di InspIRCd.