Introducere: Bouncers IRC și de ce vrei unul
Internet Relay Chat (IRC) este un venerabil protocol de chat online, datând de la sfârșitul anilor 1980, dar este încă utilizat pe scară largă astăzi, în special în lumea de calcul. Există clienți IRC pentru fiecare sistem de operare major și zeci de rețele IRC cu mii de canale de chat. Există un accent puternic pe tehnologie, dar aproape fiecare subiect este reprezentat. Când utilizați IRC, primiți mesaje numai atunci când sunteți conectat–un mesaj este eliminat după ce este trimis și istoricul nu este stocat pe server.
introduceți bouncerul IRC. Deoarece clientul IRC este responsabil pentru stocarea și redarea istoricului, acesta este împărțit între două piese de software: aplicația de afișare (GUI, TUI) și bouncer. Cu un bouncer, utilizați în continuare clientul IRC preferat, dar vă conectați la bouncer (de exemplu bouncer.example.com) în loc de direct la rețeaua IRC (cum ar fi chat.freenode.net). bouncerul dvs. poate rămâne conectat atunci când sunteți deconectat. Când vă conectați din nou, bouncer-ul IRC vă prezintă chatul conectat și mesajele pe care altfel le-ați pierde. Ca un server IRC, un bouncer IRC rulează pe un computer conectat întotdeauna pentru a menține o conexiune persistentă la o rețea IRC.
în acest articol, vă voi arăta cum să configurați ZNC, care este o aplicație IRC bouncer utilizată pe scară largă. Vom trece prin procesul de instalare a ZNC, configurarea unui cont de utilizator, configurarea acestuia și conectarea la IRC prin bouncer. Vom aborda, de asemenea, unele probleme de securitate de bază.
vom urmări procesul Pentru Ubuntu, dar elementele de bază sunt similare pentru majoritatea distribuțiilor Linux.
instalați ZNC
Ubuntu are un pachet ZNC în depozitul său și îl puteți instala cu apt-get.
$ sudo apt-get install znc
apoi veți adăuga un cont de utilizator dedicat pentru ZNC. Aceasta este o practică bună atunci când utilizați orice aplicație care rămâne deschisă Internetului, deoarece oferă o măsură de protecție pentru alte conturi de pe serverul dvs. (în special contul dvs. root).
fac mai multe lucruri cu următoarea comandă: Creez un nou utilizator numit „ZNC-admin”. Configurez contul fără parolă (deoarece acest cont nu se va conecta niciodată) și definesc un director de acasă pentru cont. Vă recomandăm să utilizați / var / znc ca director de pornire ZNC, dar puteți utiliza orice director doriți (cu excepția directorului rădăcină!). De asemenea, puteți alege un alt nume de cont, dacă doriți să.
$ sudo adduser --disabled-password --home /var/znc znc-admin
configurați ZNC
cu noul cont configurat, sunteți gata să configurați ZNC. Treceți la noul cont, accesați directorul de pornire ZNC și rulați rutina de configurare a ZNC.
$ sudo su znc-admin$ cd ~$ znc --makeconf
ZNC vă va prezenta diverse opțiuni. Iată recomandările noastre pentru modul de configurare a acestora. Rețineți că ZNC prezintă opțiunile implicite . Dacă vă place implicit, apoi a lovit doar return
vă recomandăm să utilizați SSL și IPv6 pentru trafic.
ZNC va crea apoi un fișier PEM la /var/znc/.znc/znc.pem. Apoi vă va cere să definiți numele de utilizator și parola pe care le veți utiliza pentru a vă conecta la bouncerul IRC. De asemenea, veți defini porecla și numele de utilizator pe care doriți să îl utilizați pentru a vă conecta la bouncerul IRC. Notă Acest lucru nu trebuie să fie porecla pe care o utilizați pe IRC, dar poate fi și este mai ușor dacă este.
vă recomandăm să nu se leagă de o gazdă, dacă nu aveți un motiv bun. Următorul set de variabile configurează conexiunea la rețeaua IRC.Aici Freenode.
dacă aveți deja unele canale IRC preferate în minte apoi introduceți-le mai sus. Nu uitați să precedeți numele canalului cu o marcă hash (#) și să le separați cu un spațiu.
ZNC va scrie fișierul de configurare (/var/znc/.ZNC/configs / znc.conf) și sunteți pregătiți.
permiteți IRC pe Firewall-ul dvs.
acum că bouncer-ul dvs. rulează, este timpul să permiteți acel port pe firewall. Veți utiliza un utilitar numit firewalld pentru a vă asigura că portul corect este deschis prin firewall. Dacă nu îl aveți deja, instalați-l cu apt-get. Rețineți că firewalled va permite SSH în mod implicit, deci nu ar trebui să pierdeți conexiunea la serverul dvs. Chiar dacă ceva nu merge bine, dacă utilizați un Prgmr.com sistem, puteți utiliza consola de administrare pentru a obține înapoi în și repara lucrurile.
$ sudo apt-get install firewalld
acum folosiți-l pentru a configura portul. Vă recomandăm să utilizați portul 6697, care este portul standard pentru traficul IRC criptat.
$ sudo firewall-cmd --add-port=6697/tcp$ sudo firewall-cmd --runtime-to-permanent
Conectați-vă la Bouncer
veți avea nevoie de un client IRC dacă nu aveți deja unul. Opțiunile populare includ mIRC, Hexchat și Weechat. În mod normal, v-ați configura clientul să se conecteze direct la IRC, dar aici vă veți conecta la bouncer, iar bouncer se va conecta la IRC folosind acreditările gazdă și utilizator pe care le-ați configurat atunci când ați configurat ZNC.
pentru a vă conecta la bouncer, lansați clientul. Pentru majoritatea clienților, în câmpul de mesaj introduceți următoarea comandă:
$ /server add -tls <znc_server> +6697 <password> <username>
sau pentru weechat, dacă doriți ca serverul dvs. să fie disponibil prin numele znc, comanda dvs. va arăta:
$ /server add znc <znc_server>/6697 -ssl -username=<username> -password=<password> -nicks=<username>
pentru utilizare Prgmr.com adresa serverului. Deci, dacă serverul dvs. este numit „foo”, atunci utilizați foo.xen.prgmr.com ca adresa serverului ZNC.
dacă primiți erori SSL și utilizați un certificat generat de znc, puteți lista albă a certificatului prin amprenta sa. Luați ieșirea din comanda de mai jos:
$ sudo cat /var/znc/.znc/znc.pem | openssl x509 -sha256 -fingerprint -noout | cut -d '=' -f 2- | sed 's/://ig'
și adăugați-l la clientul irc:
$ /server modify <znc_server> -tls_pinned_cert <above_output_line>
sau pentru weechat:
$ /set irc.server.znc.ssl_fingerprint <above_output_line>
dacă doriți vreodată să modificați aceste setări, atunci puteți face acest lucru interacționând cu utilizatorul *status. Tastați ajutor pentru o listă de opțiuni.
lecturi suplimentare
mai multe documente despre ZNC pot fi găsite la ZNC wiki.