Compare commits
No commits in common. "_wiki" and "main" have entirely different histories.
29
Home.md
29
Home.md
@ -1,29 +0,0 @@
|
||||
# Домашняя вики
|
||||
|
||||
База знаний по домашней инфраструктуре. Основа — сервер **nab27node** (Ubuntu 24.04, 192.168.27.107).
|
||||
|
||||
## Быстрые ссылки
|
||||
|
||||
| Сервис | Дома (LAN) | Снаружи |
|
||||
|---|---|---|
|
||||
| Фото (Immich) | http://192.168.27.107:2283 | https://photos.pankin.info |
|
||||
| Git + вики (эта) | http://192.168.27.107:3001 | https://git.pankin.info |
|
||||
| ИИ-ассистент (Open WebUI) | http://192.168.27.192:8080 | https://ai.pankin.info |
|
||||
| LLM API (Continue) | http://192.168.27.192:8000 | https://llm.pankin.info |
|
||||
| Файлы (Samba) | smb://192.168.27.107/disk | нет (намеренно) |
|
||||
| Почта (Mailcow/SOGo) | https://192.168.27.107:8443/SOGo/ | https://mail.pankin.info/SOGo/ |
|
||||
| Торренты (Torrserv / qBittorrent / Jackett) | http://192.168.27.107:8090 · :8091 · :8910 | нет (LAN-only) |
|
||||
| SSH | ssh nab27_node@192.168.27.107 | нет |
|
||||
|
||||
> Из домашней сети `*.pankin.info` через публичный IP может не открываться
|
||||
> (hairpin-NAT роутера ненадёжен) — дома заходите по LAN-адресам.
|
||||
|
||||
## Разделы
|
||||
- [[Сервисы]] — что за что отвечает и где живёт
|
||||
- [[Почта]] — Mailcow + SOGo, Yandex relay, доступы
|
||||
- [[Доступ]] — откуда и как заходить (без паролей)
|
||||
|
||||
## Как редактировать
|
||||
Любая страница — это файл `.md` в git-репозитории `wiki` (ветка `_wiki`).
|
||||
Просто нажмите **«Изменить страницу»** в веб-интерфейсе, либо клонируйте:
|
||||
git clone http://192.168.27.107:3001/vlad_rus/wiki.wiki.git
|
||||
@ -1,4 +0,0 @@
|
||||
* [[Home]]
|
||||
* [[Сервисы]]
|
||||
* [[Почта]]
|
||||
* [[Доступ]]
|
||||
16
Доступ.md
16
Доступ.md
@ -1,16 +0,0 @@
|
||||
# Доступ
|
||||
|
||||
## Из дома (LAN)
|
||||
- Фото, git, ИИ, почта, торренты — по таблице на [[Home]] (адреса 192.168.27.107 / 192.168.27.192)
|
||||
- Файлы — smb://192.168.27.107/disk (логин у владельца сервера)
|
||||
- SSH — `ssh nab27_node@192.168.27.107` (по ключу)
|
||||
- Торренты — только из LAN: Torrserv `:8090`, qBittorrent `:8091`, Jackett `:8910` (наружу не вынесены)
|
||||
|
||||
## Извне (не дома)
|
||||
- Только web: https://git.pankin.info · https://photos.pankin.info · https://ai.pankin.info · https://llm.pankin.info
|
||||
- SSH и файлы наружу не вынесены (намеренно)
|
||||
|
||||
## Аккаунты Gitea
|
||||
- Регистрация выключена, учётные записи заводит администратор (`vlad_rus`)
|
||||
|
||||
> Пароли в вики не пишем. Секреты — в `.env` на сервере (права 600).
|
||||
91
Почта.md
91
Почта.md
@ -1,91 +0,0 @@
|
||||
# Почта — Mailcow + SOGo
|
||||
|
||||
Домен **pankin.info**, сервер **nab27node** (192.168.27.107).
|
||||
|
||||
## Доступ
|
||||
| Куда | Как |
|
||||
|---|---|
|
||||
| Webmail (SOGo) | https://mail.pankin.info/SOGo/ (из LAN: https://192.168.27.107:8443/SOGo/) |
|
||||
| Админ-панель | https://mail.pankin.info/admin/ (из LAN: http://192.168.27.107:8080/admin/) |
|
||||
| SMTP (отправка) | mail.pankin.info:587 (STARTTLS) или :465 (SMTPS) |
|
||||
| IMAP (получение) | mail.pankin.info:143 (STARTTLS) или :993 (IMAPS) |
|
||||
| POP3 | mail.pankin.info:110 или :995 |
|
||||
|
||||
**Ящик:** `vladislav@pankin.info` (пароль в `.env` mailcow)
|
||||
|
||||
## Архитектура
|
||||
- 18 контейнеров Docker: nginx, php-fpm, mysql, postfix, dovecot, sogo, rspamd, unbound, redis, memcached, watchdog, clamd, ofelia, netfilter, dockerapi, acme, olefy, postfix-tlspol
|
||||
- Compose: `/mnt/disk/docker-compose/mailcow/`
|
||||
- Данные: `/mnt/disk/docker-compose/mailcow/data/`
|
||||
- Reverse-proxy: nginx `mail.pankin.info` (443) → mailcow 8443
|
||||
- DNS: A `mail.pankin.info` → 80.234.91.82; MX/SPF/DKIM/DMARC выданы
|
||||
|
||||
## Порты (LAN 192.168.27.107)
|
||||
| Порт | Протокол | Назначение |
|
||||
|---|---|---|
|
||||
| 25 | SMTP | входящая почта |
|
||||
| 465 | SMTPS | исходящая (implicit TLS) |
|
||||
| 587 | SUBMISSION | исходящая (STARTTLS) |
|
||||
| 143 | IMAP | получение (STARTTLS) |
|
||||
| 993 | IMAPS | получение (implicit TLS) |
|
||||
| 110 | POP3 | получение |
|
||||
| 995 | POPS | получение (implicit TLS) |
|
||||
| 8080 | HTTP | webmail + админка (LAN) |
|
||||
| 8443 | HTTPS | webmail + админка (LAN) |
|
||||
| 4190 | SIEVE | правила обработки |
|
||||
| 13306 | MySQL | БД mailcow |
|
||||
| 7654 | Redis | кэш/очереди |
|
||||
| 19991 | Doveadm | утилиты dovecot |
|
||||
|
||||
## Yandex SMTP relay (18.09.2026)
|
||||
Исходящая почта ходит через **Yandex** (`smtp.yandex.ru:587`) — обходит проблему PTR/HELO с Gmail.
|
||||
|
||||
- Учётка: `vladislav-pankin@yandex.ru`
|
||||
- Пароль приложения: `lrmjfroshcelywet` (создан в id.yandex.ru → Пароли приложений)
|
||||
- Конфиг postfix (`extra.cf`):
|
||||
- `relayhost = [smtp.yandex.ru]:587`
|
||||
- `smtp_sasl_auth_enable = yes`
|
||||
- `smtp_sasl_password_maps = hash:/opt/postfix/conf/sasl_passwd`
|
||||
- `mynetworks = 127.0.0.0/8 172.22.1.0/24 192.168.27.0/24`
|
||||
- `canonical_maps = hash:/opt/postfix/conf/canonical`
|
||||
- `canonical` мапит `@pankin.info` → `vladislav-pankin@yandex.ru` (иначе Yandex отклоняет невалидный отправитель)
|
||||
- IMAP/POP3-доступ в Yandex включён (mail.yandex.ru → Настройки → Почтовые программы)
|
||||
|
||||
## Локальная доставка
|
||||
- Postfix → Dovecot (maildir)
|
||||
- `virtual_uid_maps = static:5000`, `virtual_gid_maps = static:5000`
|
||||
- Maildir: `/var/vmail/pankin.info/vladislav/` (в контейнере postfix)
|
||||
- SOGo → postfix (порт 588, `588 inet n - - - - smtpd` в master.cf)
|
||||
|
||||
## API
|
||||
- Ключ: `8914bcfac817f76e9dec6e04bdde787f-rw` (access=rw)
|
||||
- Использование: `curl -sk -H "Host: mail.pankin.info" -H "X-Api-Key: <key>" http://192.168.27.107:8080/api/v1/...`
|
||||
- `add/mailbox` требует `local_part` + `password` + `password2`
|
||||
|
||||
## Управление
|
||||
```bash
|
||||
cd /mnt/disk/docker-compose/mailcow
|
||||
docker compose ps # статус контейнеров
|
||||
docker compose logs # логи
|
||||
docker compose restart postfix-mailcow # перезапуск postfix
|
||||
```
|
||||
|
||||
## Проброс SMTP в роутере
|
||||
Проброс 25/587/465 на 80.234.91.82 **сделан** — входящая почта из интернета работает.
|
||||
|
||||
## SOGo-авторизация (патч 22.09.2026)
|
||||
**Проблема:** SOGo-логин читает `_sogo_static_view.c_password`, а не `mailbox.password`. Функция `update_sogo_static_view()` в `functions.inc.php` при создании/смене пароля ящика вставляла **случайный** `{SSHA256}`-хеш → webmail-логин падал с `403 /SOGo/connect`, хотя IMAP и админка работали.
|
||||
|
||||
**Патч:** `functions.inc.php` модифицирован — `update_sogo_static_view()` теперь кладёт `mailbox.password` (bcrypt) вместо случайного SHA256. Бэкап: `functions.inc.php.bak`.
|
||||
|
||||
**Проверка:** `sogo_access=1`, `force_pw_update=0` → SOGo получает реальный пароль. Совпадает с upstream (mailcow PR #5183).
|
||||
|
||||
## Импорт почты с 192.168.27.173 (завершён 20.09.2026)
|
||||
`imapsync 2.314` перенёс два ящика:
|
||||
1. `Admin` (173:143) → `vladislav@pankin.info` (107:993): 5 папок, **38 писем**
|
||||
2. `vladislav` (173:143) → `vladislav@pankin.info` (107:993): 22 папки, **159 090 писем**, **16.638 GiB**, 10 505 дубликатов пропущено, время ~7.2 часа
|
||||
|
||||
Итого на 107: ~159 128 писем.
|
||||
|
||||
## SSL-сертификат dovecot (20.09.2026)
|
||||
Заменён self-signed → Let's Encrypt (`C = US, O = Let's Encrypt, CN = YE1`, до 17.12.2026). Файлы: `data/assets/ssl/{cert.pem,key.pem}` (скопированы из `/etc/letsencrypt/live/mail.pankin.info/`).
|
||||
42
Сервисы.md
42
Сервисы.md
@ -1,42 +0,0 @@
|
||||
# Сервисы
|
||||
|
||||
Сервер **nab27node** (Ubuntu 24.04) — 192.168.27.107.
|
||||
Всё поднято в Docker; конфиги и данные — на диске `/mnt/disk`.
|
||||
|
||||
## Фото — Immich
|
||||
- Дома: http://192.168.27.107:2283 · снаружи: https://photos.pankin.info
|
||||
- Docker compose: `/mnt/disk/docker-compose/immich`, данные: `/mnt/disk/docker-data/immich`
|
||||
|
||||
## Git и вики — Gitea
|
||||
- Дома: http://192.168.27.107:3001 · снаружи: https://git.pankin.info
|
||||
- git-over-ssh (LAN): `ssh://git@192.168.27.107:2222/<owner>/<repo>.git`
|
||||
- Docker compose: `/mnt/disk/docker-compose/gitea`, данные: `/mnt/disk/docker-data/gitea`
|
||||
- Вики хранится в git (ветка `_wiki`). Эта вики = репозиторий `wiki`.
|
||||
|
||||
## ИИ — Open WebUI (машина aiv100 = 192.168.27.192)
|
||||
- Дома: http://192.168.27.192:8080 · снаружи: https://ai.pankin.info
|
||||
- LLM API (Continue и др.): http://192.168.27.192:8000 · снаружи: https://llm.pankin.info
|
||||
|
||||
## Файлы — Samba
|
||||
- Шара `disk` → `/mnt/disk`: smb://192.168.27.107/disk (доступ по логину)
|
||||
- Извне — нет (намеренно).
|
||||
|
||||
## Прокси — xray (SOCKS5, только LAN)
|
||||
- 192.168.27.107:10086 — SOCKS5-прокси наружу (без пароля, для устройств домашней сети).
|
||||
|
||||
## Торренты (только LAN, наружу не вынесены)
|
||||
- **Torrserv** (вебклиент): http://192.168.27.107:8090 — без пароля, LAN-only
|
||||
- **qBittorrent** (клиент): http://192.168.27.107:8091 — логин `admin`, пароль в WebUI (BT-порт 6881 tcp/udp)
|
||||
- **Jackett** (индекс-агрегатор): http://192.168.27.107:8910 — пароль задаётся при первом входе
|
||||
- Compose: `/mnt/disk/docker-compose/{torrserv,qbittorrent,jackett}`, данные: `/mnt/disk/docker-data/{torrserv,qbittorrent,jackett}`
|
||||
|
||||
## Администрирование
|
||||
- SSH: `ssh nab27_node@192.168.27.107`
|
||||
- Подробности, порты и история изменений — в репозитории `home-infra` (файл HOME_INFRA.md).
|
||||
## Почта — Mailcow + SOGo
|
||||
- Webmail: https://mail.pankin.info/SOGo/ (LAN: https://192.168.27.107:8443/SOGo/)
|
||||
- Админка: https://mail.pankin.info/admin/ (LAN: http://192.168.27.107:8080/admin/)
|
||||
- Ящик: vladislav@pankin.info
|
||||
- 18 контейнеров Docker, reverse-proxy nginx → 8443
|
||||
- Yandex SMTP relay: исходящая почта через smtp.yandex.ru:587 (обходит PTR/HELO с Gmail)
|
||||
- Подробности: [[Почта]]
|
||||
Loading…
Reference in New Issue
Block a user