mirror of
https://codeberg.org/postscriptum/gemlog.git
synced 2026-02-19 06:22:41 +00:00
add connecting-znc-bouncer-to-libera-chat-irc-via-tor.gmi
This commit is contained in:
parent
982c5fa792
commit
37a393f2ae
3 changed files with 145 additions and 0 deletions
143
public/uk/connecting-znc-bouncer-to-libera-chat-irc-via-tor.gmi
Normal file
143
public/uk/connecting-znc-bouncer-to-libera-chat-irc-via-tor.gmi
Normal file
|
|
@ -0,0 +1,143 @@
|
||||||
|
# Підключення баунсера ZNC до Libera.Chat/IRC через Tor
|
||||||
|
|
||||||
|
Дістався мені 24/7 сервер, на якому відсутній інтерфейс Інтернет але присутній мультикаст Yggdrasil, через який можна підключитись до мережі Tor, а з неї - до Libera.Chat
|
||||||
|
|
||||||
|
Про те, як налаштувати баунсер ZNC, я раніше писав в матеріалі:
|
||||||
|
=> znc-irc-bouncer-setup.gmi Встановлення та налаштування IRC-баунсера ZNC в Linux
|
||||||
|
|
||||||
|
Про налаштування підключення до мережі Tor засобами мостів Yggdrasil, описано тут:
|
||||||
|
=> arti-onion-router-with-tor-connection-over-yggdrasil.gmi Встановлення Onion-роутера Arti з підключенням до мережі Tor через Yggdrasil
|
||||||
|
|
||||||
|
## Обліковий запис на сервері Libera.Chat
|
||||||
|
|
||||||
|
В офіційній документації вказано, що для підключення до сервера через Tor, потрібно мати зареєстрований на сервері обліковий запис:
|
||||||
|
|
||||||
|
> Libera.Chat is reachable via Tor using our onion service, provided you already have an account (created without using Tor).
|
||||||
|
|
||||||
|
=> https://libera.chat/guides/connect#accessing-liberachat-via-tor
|
||||||
|
|
||||||
|
Можливо, це зроблено з метою захисту від спаму, не цікавився.
|
||||||
|
|
||||||
|
Повна документація з реєстрації облікових записів описана тут:
|
||||||
|
=> https://libera.chat/guides/registration
|
||||||
|
|
||||||
|
Якщо коротко, то з комп'ютера де є Інтернет, заходимо з клієнта IRC (наприклад, Halloy) через порт 6697 на будь який сервер Libera.Chat з офіційного списку:
|
||||||
|
|
||||||
|
* irc.libera.chat
|
||||||
|
* irc.eu.libera.chat
|
||||||
|
* irc.us.libera.chat
|
||||||
|
* irc.au.libera.chat
|
||||||
|
* irc.ea.libera.chat
|
||||||
|
* irc.ipv4.libera.chat
|
||||||
|
* irc.ipv6.libera.chat
|
||||||
|
|
||||||
|
### Авторизація
|
||||||
|
|
||||||
|
На випадок, якщо вже є старий акаунт - логінимось і крок з реєстрацією пропускаємо:
|
||||||
|
|
||||||
|
``` bash
|
||||||
|
/msg NickServ IDENTIFY YOUR_NICK YOUR_PASS
|
||||||
|
```
|
||||||
|
|
||||||
|
### Реєстрація
|
||||||
|
|
||||||
|
Підключившись до сервера, вказуємо нікнейм поточної сесії:
|
||||||
|
|
||||||
|
```
|
||||||
|
/nick YOUR_NICK
|
||||||
|
```
|
||||||
|
* YOUR_NICK - ваше значення
|
||||||
|
|
||||||
|
Якщо нікнейм вільний, то NickServ його присвоїть. Тепер потрібно його зареєструвати, адже наразі - це лише псевдонім гостьової сесії:
|
||||||
|
|
||||||
|
```
|
||||||
|
/msg NickServ REGISTER YourPassword youremail@example.com
|
||||||
|
```
|
||||||
|
|
||||||
|
Після введення команди, в мене з'явилось повідомлення про надсилання листа підтвердження на вказану адресу e-mail. Туди прийшов лист з командою активації, яку потрібно скопіювати в той же чат:
|
||||||
|
|
||||||
|
```
|
||||||
|
/msg NickServ VERIFY REGISTER YOUR_NICK ACTIVATION_KEY
|
||||||
|
```
|
||||||
|
* YOUR_NICK, ACTIVATION_KEY - унікальні значення
|
||||||
|
|
||||||
|
Якщо помилок не виникло і побачили відповідне вітання від сервера - реєстрацію успішно завершено!
|
||||||
|
|
||||||
|
## Генерація сертифікату
|
||||||
|
|
||||||
|
Особливістю підключення до Libera.Chat через Tor є необхідність створення користувацького сертифікату з подальшою реєстрацією його відбитку (fingerprint) на сервері:
|
||||||
|
|
||||||
|
> This service requires public-key SASL authentication using either the EXTERNAL or ECDSA-NIST256P-CHALLENGE (but not PLAIN) mechanisms. See our guide on setting up CertFP for more information.
|
||||||
|
|
||||||
|
Детальніше про сертифікати написано тут:
|
||||||
|
=> https://libera.chat/guides/certfp.html
|
||||||
|
|
||||||
|
Вся документація вище - зводиться до виконання двох команд на локальному комп'ютері:
|
||||||
|
|
||||||
|
1. Генерація локального файлу user.pem:
|
||||||
|
|
||||||
|
``` bash
|
||||||
|
openssl req -nodes -sha512 -newkey rsa:4096 -keyout user.pem -x509 -days 3650 -out user.pem -subj "/CN=YOUR_NICK"
|
||||||
|
```
|
||||||
|
* `-days 3650` - не обов'язково, сервер перевіряє сертифікат тільки один раз
|
||||||
|
* `/CN=YOUR_NICK` - має бути актуальним
|
||||||
|
|
||||||
|
2. Отримання відбитку, для Libera.Chat це має бути `-sha512`:
|
||||||
|
|
||||||
|
``` bash
|
||||||
|
openssl x509 -sha512 -noout -fingerprint -in user.pem | sed -e 's/^.*=//;s/://g;y/ABCDEF/abcdef/'
|
||||||
|
```
|
||||||
|
* результатом виконання цієї команди буде хеш-рядок, який потрібно скопіювати
|
||||||
|
|
||||||
|
### Реєстрація сертифікату на сервері
|
||||||
|
|
||||||
|
Щоб почати користуватись створеними локально ключами, їх потрібно зареєструвати. В чаті NickServ, від авторизованого раніше користувача, вказується команда:
|
||||||
|
|
||||||
|
``` bash
|
||||||
|
/msg NickServ CERT ADD [FINGERPRINT]
|
||||||
|
```
|
||||||
|
* FINGERPRINT - зкопійований хеш-рядок з останньої команди openssl
|
||||||
|
|
||||||
|
Якщо все пройшло без помилок, перевірити доданий відбиток можна командою:
|
||||||
|
|
||||||
|
``` bash
|
||||||
|
/whois YOUR_NICK
|
||||||
|
```
|
||||||
|
|
||||||
|
## Підключення ZNC до Libera.Chat
|
||||||
|
|
||||||
|
Логінимось до Веб-адмінки баунсера і виконуємо наступне
|
||||||
|
|
||||||
|
### ZNC » webadmin » Edit User » Networks » Add
|
||||||
|
|
||||||
|
* Не знаю, чи це дійсно було потрібно для Tor, але я вимкнув "Trust all certs".
|
||||||
|
|
||||||
|
Переходимо до секції "Servers of this IRC network", тиснемо "Add":
|
||||||
|
|
||||||
|
* Hostname: libera75jm6of4wxpxt4aynol3xjmbtxgfyjpu34ss4d7r7q2v5zrpyd.onion
|
||||||
|
* Port: 6697
|
||||||
|
* SSL: Yes
|
||||||
|
|
||||||
|
На тій же сторінці, в секції "Modules", вмикаємо наступні додатки:
|
||||||
|
|
||||||
|
* cert - інтерфейс сертифікатів для SASL
|
||||||
|
* sasl - механізм авторизації зареєстрованого користувача
|
||||||
|
|
||||||
|
Скролимо до низу та зберігаємо налаштування кнопкою "Save and continue", після чого на цій же сторінці в меню зліва має з'явитись нове підменю для поточної мережі "Network Modules (libera)". В цьому меню, мають бути посилання на два активовані модулі вище, заходимо по черзі та актуалізуємо дані
|
||||||
|
|
||||||
|
### ZNC » cert » Certificate
|
||||||
|
|
||||||
|
Тут є тільки одне поле "PEM File" - копіюємо в нього вміст локального сертифікату (user.pem) та зберігаємо налаштування кнопкою "Update".
|
||||||
|
|
||||||
|
### ZNC » sasl » SASL
|
||||||
|
|
||||||
|
В налаштуваннях цього модуля, вказуємо логін (Username) та пароль (Password) від облікового запису Libera.Chat, які вказали під час реєстрації NickServ.
|
||||||
|
|
||||||
|
* Опція "Require authentication" при цьому в мене не відмічена.
|
||||||
|
|
||||||
|
Нижче, є блок "Mechanisms": тут важливо вказати "EXTERNAL", після чого зберігаємо налаштування і пробуємо підключитись. Підключаючись з клієнта, вказуємо в ньому саме сервер / логін / пароль від облікового запису баунсера, а не сервера Libera.Chat (наприклад, у мене це u_znc)
|
||||||
|
|
||||||
|
## Посилання
|
||||||
|
|
||||||
|
=> https://wiki.znc.in/Cert
|
||||||
|
=> https://dev.adiirc.com/projects/adiirc/wiki/LiberaChat_tor
|
||||||
|
|
@ -16,6 +16,7 @@
|
||||||
|
|
||||||
### Нотатки
|
### Нотатки
|
||||||
|
|
||||||
|
=> connecting-znc-bouncer-to-libera-chat-irc-via-tor.gmi 2026-02-03 Підключення баунсера ZNC до Libera.Chat/IRC через Tor
|
||||||
=> fix-qemu-kvm-hang-on-booting-from-hard-disk.gmi 2026-02-01 Виправлення зависання "Booting from Hard Disk..." в QEMU / KVM (virt-manager)
|
=> fix-qemu-kvm-hang-on-booting-from-hard-disk.gmi 2026-02-01 Виправлення зависання "Booting from Hard Disk..." в QEMU / KVM (virt-manager)
|
||||||
=> insulating-windows-with-polystyrene.gmi 2026-02-01 Мій лайфхак з утеплення вікон полістироловими плитами
|
=> insulating-windows-with-polystyrene.gmi 2026-02-01 Мій лайфхак з утеплення вікон полістироловими плитами
|
||||||
=> run-mycelium-without-root.gmi 2026-01-31 Запуск роутера Mycelium без root
|
=> run-mycelium-without-root.gmi 2026-01-31 Запуск роутера Mycelium без root
|
||||||
|
|
|
||||||
|
|
@ -227,5 +227,6 @@ password = "<your-password>"
|
||||||
|
|
||||||
### Дивіться також
|
### Дивіться також
|
||||||
|
|
||||||
|
=> connecting-znc-bouncer-to-libera-chat-irc-via-tor.gmi Підключення баунсера ZNC до Libera.Chat/IRC через Tor
|
||||||
=> soju-irc-bouncer-setup.gmi Встановлення та базове налаштування IRC-баунсера soju в Linux
|
=> soju-irc-bouncer-setup.gmi Встановлення та базове налаштування IRC-баунсера soju в Linux
|
||||||
=> arti-onion-router-with-tor-connection-over-yggdrasil.gmi Встановлення Onion-роутера Arti з підключенням до мережі Tor через Yggdrasil
|
=> arti-onion-router-with-tor-connection-over-yggdrasil.gmi Встановлення Onion-роутера Arti з підключенням до мережі Tor через Yggdrasil
|
||||||
Loading…
Add table
Add a link
Reference in a new issue