Introduzione: Bouncers IRC e perché si desidera uno
Internet Relay Chat (IRC) è un protocollo di chat online venerabile, risalente alla fine del 1980, ma è ancora ampiamente utilizzato oggi, soprattutto nel mondo dell’informatica. Ci sono client IRC per tutti i principali sistemi operativi e decine di reti IRC con migliaia di canali di chat. C’è una forte enfasi sulla tecnologia, ma quasi ogni argomento è rappresentato. Quando si utilizza IRC, si ricevono messaggi solo quando si è connessi–un messaggio viene scartato dopo l’invio e la cronologia non viene memorizzata sul server.
Inserire il bouncer IRC. Poiché il client IRC è responsabile della memorizzazione e della riproduzione della cronologia, è diviso tra due software: l’applicazione di visualizzazione (GUI, TUI) e il bouncer. Con un bouncer, usi ancora il tuo client IRC preferito, ma ti connetti al bouncer (ad esempio bouncer.example.com) invece che direttamente alla rete IRC (ad esempio chat.freenode.net). Il tuo buttafuori può rimanere connesso quando sei disconnesso. Quando si accede di nuovo, il vostro bouncer IRC si presenta con la chat registrato e messaggi che altrimenti sarebbe perdere. Come un server IRC, un bouncer IRC viene eseguito su un computer sempre connesso al fine di mantenere una connessione persistente a una rete IRC.
In questo articolo, ti mostrerò come impostare ZNC, che è un’applicazione IRC bouncer ampiamente utilizzata. Passeremo attraverso il processo di installazione di ZNC, la creazione di un account utente, la configurazione e l’accesso a IRC attraverso il bouncer. Affronteremo anche alcuni problemi di sicurezza di base.
Seguiremo il processo per Ubuntu, ma le basi sono simili per la maggior parte delle distribuzioni Linux.
Installa ZNC
Ubuntu ha un pacchetto ZNC nel suo repository e puoi installarlo con apt-get.
$ sudo apt-get install znc
Successivamente si aggiunge un account utente dedicato per ZNC. Questa è una buona pratica quando si utilizza qualsiasi applicazione che rimane aperta a Internet, poiché fornisce una misura di protezione per altri account sul server (in particolare l’account root).
Sto facendo diverse cose con il seguente comando: Sto creando un nuovo utente chiamato “znc-admin”. Sto impostando l’account senza una password (poiché questo account non accederà mai) e sto definendo una directory home per l’account. Si consiglia di utilizzare / var / znc come home directory ZNC, ma è possibile utilizzare qualsiasi directory che ti piace (tranne la directory principale!). Allo stesso modo è possibile scegliere un nome di account diverso, se si desidera.
$ sudo adduser --disabled-password --home /var/znc znc-admin
Configura ZNC
Con il tuo nuovo account configurato, sei pronto per configurare ZNC. Passa al nuovo account, vai alla directory home di ZNC ed esegui la routine di configurazione di ZNC.
$ sudo su znc-admin$ cd ~$ znc --makeconf
ZNC ti presenterà varie opzioni. Ecco i nostri consigli su come configurarli. Si noti che ZNC presenta le opzioni predefinite . Se ti piace il valore predefinito, premi return
Ti consigliamo vivamente di utilizzare SSL e IPv6 per il tuo traffico.
ZNC creerà quindi un file PEM in / var / znc/.znc/znc.pem. Successivamente ti chiederà di definire il nome utente e la password che utilizzerai per accedere al tuo bouncer IRC. Definirai anche il nick e il nome utente che desideri utilizzare per connetterti al tuo bouncer IRC. Nota questo non deve essere il nickname che usi su IRC, ma può essere ed è più facile se lo è.
Si consiglia di non legare a un host a meno che non si abbia una buona ragione. La prossima serie di variabili configura la connessione alla rete IRC.Qui Freenode.
Se hai già in mente alcuni canali IRC preferiti, inseriscili sopra. Ricordarsi di precedere il nome del canale con un segno di hash ( # ) e separarli con uno spazio.
ZNC scriverà il file di configurazione (/var / znc/.znc / configura / znc.conf) e sei tutto pronto.
Consenti IRC sul tuo Firewall
Ora che il tuo bouncer è in esecuzione, è il momento di consentire quella porta sul tuo firewall. Userai un’utilità chiamata firewalld per assicurarti che la porta corretta sia aperta attraverso il tuo firewall. Se non lo avete già, basta installarlo con apt-get. Nota che firewalled consentirà SSH per impostazione predefinita, quindi non dovresti perdere la connessione al tuo server. Anche se qualcosa va storto, se si utilizza un Prgmr.com sistema, è possibile utilizzare la console di gestione per tornare in e risolvere le cose.
$ sudo apt-get install firewalld
Ora usalo per configurare la porta. Si consiglia di utilizzare la porta 6697, che è la porta standard per il traffico IRC crittografato.
$ sudo firewall-cmd --add-port=6697/tcp$ sudo firewall-cmd --runtime-to-permanent
Accedi al tuo Bouncer
Avrai bisogno di un client IRC se non ne hai già uno. Le scelte popolari includono mIRC, Hexchat e Weechat. Normalmente si imposta il client per connettersi direttamente a IRC, ma qui ci si connette al bouncer e il bouncer si connetterà a IRC utilizzando le credenziali host e utente impostate quando si è configurato ZNC.
Per connettersi al bouncer, avviare il client. Per la maggior parte dei client, nel campo messaggio immettere il seguente comando:
$ /server add -tls <znc_server> +6697 <password> <username>
O per weechat, se vuoi che il tuo server sia disponibile tramite il nome znc, il tuo comando sarà simile a:
$ /server add znc <znc_server>/6697 -ssl -username=<username> -password=<password> -nicks=<username>
Per usare il tuo Prgmr.com indirizzo del server. Quindi, se il tuo server si chiama “foo”, usa foo.xen.prgmr.com come l’indirizzo del server ZNC.
Se si ricevono errori SSL e si utilizza un certificato generato da znc, è possibile inserire nella whitelist quel certificato tramite la sua impronta digitale. Prendi l’output dal comando sottostante:
$ sudo cat /var/znc/.znc/znc.pem | openssl x509 -sha256 -fingerprint -noout | cut -d '=' -f 2- | sed 's/://ig'
E aggiungilo al tuo client irc:
$ /server modify <znc_server> -tls_pinned_cert <above_output_line>
O per weechat:
$ /set irc.server.znc.ssl_fingerprint <above_output_line>
Se si desidera modificare queste impostazioni, è possibile farlo interagendo con l’utente *status. Digitare aiuto per un elenco di opzioni.
Ulteriori letture
Più documentazione su ZNC può essere trovata alla ZNC wiki.