mirror of
https://gitverse.ru/kpa39l/icq.git
synced 2026-09-29 18:05:10 +00:00
61 lines
5.3 KiB
Markdown
61 lines
5.3 KiB
Markdown
# ICQ XMPP — Инфраструктура, учётные данные, бэкапы (детали)
|
||
|
||
> Вспомогательный файл для STATUS.md; обновлено: 2026-08-29
|
||
|
||
## Учётные данные
|
||
- **admin@nixg.ru / пароль: `<СМОТРИ В ЗАЩИЩЁННОМ ХРАНИЛИЩЕ / .env>`** ← перенесён 2026-08-28 с admin@chat.nixg.ru, ВХОД ПОДТВЕРЖДЁН
|
||
(проверено через WebSocket: slixmpp + wss://xmpp.nixg.ru/xmpp-websocket → AUTH OK).
|
||
- **estorozhenko@nixg.ru** — создан 2026-08-29, вход подтверждён (slixmpp, c2s 5222, AUTH OK).
|
||
- Если пароль снова понадобится сбросить:
|
||
`docker exec icq-prosody prosodyctl register ЛОГИН nixg.ru 'НОВЫЙПАРОЛЬ'`
|
||
- ⚠️ **Самостоятельная регистрация ВЫКЛЮЧЕНА** (2026-08-29): `allow_registration = false`, модуль `register` не загружен.
|
||
Создание/удаление пользователей — только через prosodyctl (см. CHEATSHEET.md).
|
||
- Старый аккаунт admin@chat.nixg.ru: домен chat.nixg.ru убран из Prosody (VirtualHost теперь nixg.ru).
|
||
|
||
## Инфраструктура
|
||
- bigbox (машина агента), каталог: **/opt/icq**
|
||
- Контейнеры: **icq-prosody** (Prosody 0.11.9: 5222/5269/5280/5281), **icq-webchat** (nginx:8081), **icq-slidgram** (мост Telegram)
|
||
- vps02 (87.242.100.206, Debian 12, enp3s0): Caddy (443, host-network), iptables DNAT 5222/5269 → 10.8.0.2
|
||
- WireGuard: bigbox 10.8.0.2 ↔ vps02 10.8.0.4; Caddy → 10.8.0.2:8081
|
||
|
||
## DNS (Jino)
|
||
- A `chat.nixg.ru` → 87.242.100.206 (веб-клиент)
|
||
- A `xmpp.nixg.ru` → 87.242.100.206 (XMPP WS)
|
||
- A `nixg.ru` → 81.177.135.175 (визитка, НЕ трогаем)
|
||
- A `upload.nixg.ru` → 87.242.100.206 (HTTP Upload)
|
||
- SRV `_xmpp-client._tcp.nixg.ru` → 0 5 5222 **xmpp.nixg.ru.**
|
||
- SRV `_xmpp-server._tcp.nixg.ru` → 0 5 5269 **xmpp.nixg.ru.**
|
||
- SRV `_xmpp-client-websocket._tcp.nixg.ru` → 0 5 443 **xmpp.nixg.ru.**
|
||
- MX `mail.nixg.ru` — НЕ трогаем (почта)
|
||
|
||
## Prosody
|
||
- VirtualHost **nixg.ru**, cross_domain_websocket = { "https://chat.nixg.ru", "https://xmpp.nixg.ru" }
|
||
- WebSocket: wss://xmpp.nixg.ru/xmpp-websocket — РАБОТАЕТ (101, авторизация OK, LE-сертификат)
|
||
- Компоненты: `conference.nixg.ru` (MUC), `upload.nixg.ru` (HTTP Upload), `telegram.nixg.ru` (Slidge, component_ports 5347)
|
||
|
||
## TLS / Let's Encrypt (детали)
|
||
- Выпуск: `sudo certbot certonly --manual --preferred-challenges dns -d nixg.ru -d xmpp.nixg.ru --manual-auth-hook /bin/true --manual-cleanup-hook /bin/true` (TXT в Jino вручную)
|
||
- Сертификат: /etc/letsencrypt/live/nixg.ru/ → копия в /opt/icq/certs/nixg.ru.{crt,key} (cp -L!)
|
||
- Истекает **2026-11-26**; продление вручную: TXT в Jino → `sudo certbot renew --manual-auth-hook /bin/true --manual-cleanup-hook /bin/true` → копия в certs/ → restart prosody
|
||
- **Watchdog-напоминание**: Hermes cron ca2a23a34905, ежедневно 10:00 UTC, no_agent, доставка в Telegram DM.
|
||
Скрипт /opt/hermes/.hermes/scripts/check_icq_cert.sh (THRESHOLD=45 дн.): молчит, пока до истечения >45 дней;
|
||
при <=45 дней шлёт в TG инструкцию продления. Первое срабатывание ≈ 12.10.2026.
|
||
|
||
## Резервное копирование
|
||
- Скрипт: **/opt/icq/backup.sh** (по образцу /opt/netbox/backup.sh), права 755, в git.
|
||
- Что бэкапит (tar czf): data/ (аккаунты, PEP/OMEMO, MUC, http_upload) + config/ + certs/ + modules/ +
|
||
webchat/ + docker-compose.yml + все *.md (включая новые INFRA/BRIDGE/CHEATSHEET).
|
||
- Куда: /opt/icq/backups/ (локально, 7 дней) → /mnt/yandex-disk/backup/icq-backups/ (30 дней), проверка mountpoint.
|
||
- Cron (root): `45 2 * * * /opt/icq/backup.sh >> /var/log/icq-backup.log 2>&1` — после NetBox (2:00) и Gitea (2:30).
|
||
|
||
## Проверено (подтверждено)
|
||
- ✅ XMPP-сервер на nixg.ru, федерация (SRV), порты 5222/5269 открыты извне
|
||
- ✅ TLS на 443 (Caddy/Let's Encrypt): xmpp.nixg.ru (LE, 2026-08-28) и chat.nixg.ru (страница)
|
||
- ✅ WebSocket-путь целиком: Caddy → nginx:8081 → Prosody:5280 → 101 Switching Protocols
|
||
- ✅ Аутентификация по WebSocket: admin@nixg.ru (slixmpp, 2026-08-28)
|
||
- ✅ Веб-чат https://chat.nixg.ru/ (Converse v14.0.0, вход подтверждён headless-браузером)
|
||
- ✅ Рестарт Prosody с модулями (2026-08-29): c2s/s2s/http/https, LE-серты, mod_bosh, mod_http_upload,
|
||
mod_vcard_muc, mod_muc_moderation — без ошибок (исторические ошибки «http_upload MUST happen with TLS» — от 28 авг, до настройки LE)
|
||
- ✅ HTTP Upload: disco urn:xmpp:http:upload:0, слот, PUT, GET→200 (slixmpp)
|
||
- ✅ OMEMO: устройство Converse 14035 опубликовало devicelist + bundles в PEP (подробности: WALKTHROUGH §9)
|
||
- ✅ Мост Telegram: компонент telegram.nixg.ru аутентифицирован, Slidge started, upload discovery OK |