wprowadzenie: IRC Bouncers and Why you Want One
Internet Relay Chat (IRC) to czcigodny protokół czatu online, pochodzący z końca lat 80., ale nadal jest szeroko stosowany dzisiaj, szczególnie w świecie komputerów. Istnieją klienci IRC dla każdego głównego systemu operacyjnego i dziesiątki sieci IRC z tysiącami kanałów czatu. Duży nacisk kładzie się na technologię, ale prawie każdy temat jest reprezentowany. Podczas korzystania z IRC otrzymujesz wiadomości tylko wtedy, gdy jesteś połączony–wiadomość jest odrzucana po jej wysłaniu, a historia nie jest przechowywana na serwerze.
wejdź na IRC bouncer. Ponieważ klient IRC jest odpowiedzialny za przechowywanie i odtwarzanie historii, jest on podzielony między dwie części oprogramowania: aplikację do wyświetlania (GUI, TUI) i bouncer. Z bouncerem nadal korzystasz ze swojego ulubionego klienta IRC, ale łączysz się z bouncerem (na przykład bouncer.example.com) zamiast bezpośrednio do sieci IRC (np. chat.freenode.net). Twój bramkarz może pozostać połączony po wylogowaniu. Po ponownym zalogowaniu, Twój IRC bouncer prezentuje Ci zalogowany Czat i wiadomości, które w przeciwnym razie byś przegapił. Podobnie jak serwer IRC, bouncer IRC działa na zawsze podłączonym komputerze w celu utrzymania stałego połączenia z siecią IRC.
w tym artykule pokażę Ci, jak skonfigurować ZNC, który jest powszechnie używaną aplikacją IRC bouncer. Przejdziemy przez proces instalacji ZNC, konfigurowania konta użytkownika, konfigurowania go i logowania do IRC przez bouncer. Zajmiemy się również podstawowymi kwestiami bezpieczeństwa.
będziemy śledzić proces dla Ubuntu, ale podstawy są podobne dla większości dystrybucji Linuksa.
zainstaluj ZNC
Ubuntu ma pakiet ZNC w swoim repozytorium i możesz go zainstalować za pomocą apt-get.
$ sudo apt-get install znc
następnie dodasz dedykowane konto użytkownika dla ZNC. Jest to dobra praktyka podczas korzystania z dowolnej aplikacji, która pozostaje otwarta dla Internetu, ponieważ zapewnia środek ochrony dla innych kont na serwerze (w szczególności konta root).
robię kilka rzeczy z następującym poleceniem: Tworzę nowego Użytkownika o nazwie „znc-admin”. Konfiguruję konto bez hasła (ponieważ to konto nigdy się nie zaloguje) i definiuję katalog domowy dla konta. Zalecamy używanie /var / znc jako katalogu domowego ZNC, ale możesz użyć dowolnego katalogu, który Ci się podoba(z wyjątkiem katalogu głównego!). Podobnie możesz wybrać inną nazwę konta, jeśli chcesz.
$ sudo adduser --disabled-password --home /var/znc znc-admin
Skonfiguruj ZNC
po skonfigurowaniu nowego konta możesz skonfigurować ZNC. Przełącz się na nowe konto, przejdź do katalogu domowego ZNC i uruchom procedurę konfiguracji ZNC.
$ sudo su znc-admin$ cd ~$ znc --makeconf
ZNC przedstawi Ci różne opcje. Oto nasze zalecenia, jak je skonfigurować. Zauważ, że ZNC przedstawia domyślne opcje . Jeśli podoba Ci się domyślne, po prostu naciśnij return
zalecamy używanie SSL i IPv6 dla Twojego Ruchu.
ZNC utworzy plik PEM w / var / znc/.znc / znc.pem. Następnie poprosi Cię o zdefiniowanie nazwy użytkownika i hasła, których będziesz używać do logowania się do swojego bouncer IRC. Zdefiniujesz również nick i nazwę Użytkownika, których chcesz użyć, aby połączyć się ze swoim bouncerem IRC. Zauważ, że nie musi to być pseudonim, którego używasz na IRC, ale może być i jest łatwiejszy, jeśli tak jest.
zalecamy nie Wiązanie się z hostem, chyba że masz dobry powód. Następny zestaw zmiennych konfiguruje połączenie z siecią IRC.Tutaj Freenode.
jeśli masz już jakieś preferowane kanały IRC to wpisz je powyżej. Pamiętaj, aby poprzedzić nazwę kanału znakiem skrótu ( # ) i oddzielić je spacją.
ZNC zapisze plik konfiguracyjny (/var / znc/.znc / configs / znc.conf) i wszystko gotowe.
Zezwalaj na IRC na swojej zaporze
teraz, gdy twój bouncer jest uruchomiony, nadszedł czas, aby zezwolić na ten port na Twojej zaporze. Użyjesz narzędzia o nazwie firewalld, aby upewnić się, że właściwy port jest otwarty przez zaporę. Jeśli jeszcze go nie masz, po prostu zainstaluj go za pomocą apt-get. Zauważ, że firewall domyślnie zezwala na SSH, więc nie powinieneś tracić połączenia z serwerem. Nawet jeśli coś pójdzie nie tak, jeśli używasz Prgmr.com system, możesz użyć konsoli zarządzania, aby wrócić i naprawić rzeczy.
$ sudo apt-get install firewalld
teraz użyj go do skonfigurowania portu. Zalecamy użycie portu 6697, który jest standardowym portem dla szyfrowanego ruchu IRC.
$ sudo firewall-cmd --add-port=6697/tcp$ sudo firewall-cmd --runtime-to-permanent
Zaloguj się do swojego Bouncer
będziesz potrzebował klienta IRC, jeśli jeszcze go nie masz. Popularne opcje to mIRC, Hexchat i Weechat. Normalnie skonfigurowałbyś swojego klienta tak, aby łączył się bezpośrednio z IRC, ale tutaj połączysz się z bouncerem, a bouncer połączy się z IRC przy użyciu poświadczeń hosta i Użytkownika, które skonfigurowałeś po skonfigurowaniu ZNC.
aby połączyć się z bouncerem, uruchom klienta. Dla większości klientów, w polu wiadomości wprowadź następujące polecenie:
$ /server add -tls <znc_server> +6697 <password> <username>
lub dla weechat, jeśli chcesz, aby twój serwer był dostępny pod nazwą znc, Twoje polecenie będzie wyglądać tak:
$ /server add znc <znc_server>/6697 -ssl -username=<username> -password=<password> -nicks=<username>
do użytku Prgmr.com adres serwera. Więc jeśli twój serwer nazywa się ” foo ” to użyj foo.xen.prgmr.com jako adres serwera ZNC.
jeśli otrzymasz błędy SSL i używasz certyfikatu wygenerowanego przez znc, możesz zasadniczo dodać ten certyfikat do białej listy za pomocą odcisku palca. Weź wynik z poniższego polecenia:
$ sudo cat /var/znc/.znc/znc.pem | openssl x509 -sha256 -fingerprint -noout | cut -d '=' -f 2- | sed 's/://ig'
i dodaj go do swojego klienta irc:
$ /server modify <znc_server> -tls_pinned_cert <above_output_line>
lub dla weechat:
$ /set irc.server.znc.ssl_fingerprint <above_output_line>
jeśli kiedykolwiek chcesz zmienić te ustawienia, możesz to zrobić, wchodząc w interakcję z użytkownikiem statusu*. Wpisz pomoc, aby wyświetlić listę opcji.
więcej informacji
więcej dokumentacji na temat ZNC można znaleźć na ZNC wiki.