mail.niikn.com: DNS настроен, сценарий задокументирован для dttb.ru

- README НИИКН: обновлён Mailcow (пароль, DNS, порты, ящик)
- changelog: добавлена запись о настройке mail.niikn.com
- credentials: добавлены Spaceweb, Mailcow НИИКН, NPM НИИКН
- decisions: сценарий настройки почтового сервера (шаблон для dttb.ru)
- snippets: скрипт spaceweb-dns-api.py для управления DNS

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Claude Code
2026-03-03 22:34:52 +00:00
parent 41f46e3ac2
commit 066855ce28
5 changed files with 370 additions and 7 deletions

View File

@@ -15,7 +15,7 @@
## Сервисы
- **Nextcloud AIO** — `https://new.niikn.com`, управление: `https://new.niikn.com:8080`
- **Mailcow** — `https://mail.niikn.com`, admin / moohoo (сменить!)
- **Mailcow** — `https://mail.niikn.com`, admin / 1qaz!QAZ
- **SMB** — `//192.168.1.79/share`, смонтирован на VM108 как `/mnt/ncsmb`
## Ключевые файлы на VM108
@@ -24,12 +24,41 @@
- `/etc/samba/smb-niikn.creds` — учётные данные SMB
- `/home/cloud/setup-firewall.sh` — скрипт UFW
## Ключевые файлы на VM106 (Mailcow)
## Mailcow (VM106, 192.168.1.128)
- `/opt/mailcow-dockerized/mailcow.conf` — конфиг Mailcow
- DBPASS=8VcUSgpKEOoxNojIZBRJx0FzMxzm
- **Web UI:** `https://mail.niikn.com` (через NPM proxy host #17)
- **Admin:** admin / 1qaz!QAZ
- **API key:** `niikn-mailcow-api-2026`
- **DKIM:** selector=dkim, 2048-bit RSA
- **Ящик:** noreply@niikn.com (пароль: NiIkN-NoReply-2026!)
- **SMTP:** 192.168.1.128:587, STARTTLS, LOGIN auth
- **SSL:** Let's Encrypt через NPM (cert ID 50)
- **Конфиг:** `/opt/mailcow-dockerized/mailcow.conf` (DBPASS=8VcUSgpKEOoxNojIZBRJx0FzMxzm)
## Сброс пароля admin в Mailcow
### MikroTik проброс портов → 192.168.1.128
| Порт | Протокол | Назначение |
|------|----------|------------|
| 25 | TCP | SMTP (приём почты) |
| 465 | TCP | SMTPS |
| 587 | TCP | Submission (отправка) |
| 993 | TCP | IMAPS |
| 995 | TCP | POP3S |
| 4190 | TCP | Sieve |
### DNS записи (niikn.com → Spaceweb)
| Тип | Имя | Значение |
|-----|-----|----------|
| A | mail | 85.235.181.190 |
| MX | @ | mail.niikn.com. (приоритет 10) |
| TXT | @ | v=spf1 mx a:mail.niikn.com ~all |
| TXT | _dmarc | v=DMARC1; p=none; rua=mailto:admin@niikn.com |
| TXT | dkim._domainkey | v=DKIM1;k=rsa;t=s;s=email;p=MIIBIjAN... (2048-bit) |
### TODO
- [ ] PTR запись: 85.235.181.190 → mail.niikn.com (запросить у Комстар/МТС)
- [ ] Настроить SMTP в Nextcloud
### Сброс пароля admin в Mailcow
```bash
cd /opt/mailcow-dockerized

View File

@@ -371,6 +371,47 @@ VM 192.168.1.200 также добавлен cloud-init диск (ide0: local-lv
---
## 2026-03-03 — Настройка почтового сервера mail.niikn.com
### Выполненные шаги
1. **MikroTik — проброс портов (192.168.1.1)**
- SSH: AI / OL260380eg
- Проброшены порты 25, 465, 587, 993, 995, 4190 → 192.168.1.128 (Mailcow)
- Порты 80/443 не тронуты — идут на NPM
2. **NPM — proxy host #17 (192.168.1.22)**
- Создан: `mail.niikn.com``https://192.168.1.128:443`
- SSL: Let's Encrypt (cert ID 50), ssl_forced=true
- Mailcow сам обслуживает HTTPS — NPM проксирует на https backend
3. **DNS записи — Spaceweb API (vps.sweb.ru)**
- Логин: it5870yand / 1qaz!QAZ
- API: POST https://api.sweb.ru/domains/dns (JSON-RPC, URL-encoded body)
- Добавлены: MX (mail.niikn.com, pri 10), SPF, DMARC, DKIM
- Все записи распространились и видны через Google/Cloudflare DNS
4. **Mailcow — домен и ящики (192.168.1.128)**
- Домен niikn.com — был уже добавлен
- DKIM — был уже сгенерирован (selector=dkim, 2048-bit)
- Ящик noreply@niikn.com — был уже создан, пароль установлен: NiIkN-NoReply-2026!
- SMTP (587/STARTTLS) проверен — работает, тестовое письмо отправлено
5. **Пароль admin Mailcow**
- Изменён через API: POST /api/v1/edit/admin (X-API-Key: niikn-mailcow-api-2026)
- Новый пароль: 1qaz!QAZ
### Не выполнено
- **Nextcloud SMTP** — нет SSH к VM 108, NC API не поддерживает mail_smtp* настройки
- Настроить вручную: Администрирование → Email → SMTP 192.168.1.128:587, noreply@niikn.com
- **PTR (rDNS)** — текущий: Aquatern.access.comstar.ru → нужен mail.niikn.com
- Обратиться к провайдеру Комстар/МТС
### Spaceweb DNS API — сценарий для повторного использования (dttb.ru)
Подробный скрипт: `snippets/spaceweb-dns-api.py`
---
## Что ещё нужно сделать
- [x] ~~Перезапустить AIO контейнеры Talk → восстановить signaling_servers~~
@@ -378,7 +419,8 @@ VM 192.168.1.200 также добавлен cloud-init диск (ide0: local-lv
- [ ] **После rsync:** создать Groupfolders, назначить права, scan (см. groupfolders-migration.md)
- [ ] **После rsync:** удалить External Storage ID 4 и 5 (SMB пока не удалять)
- [ ] Настроить AIO Backup на VM108
- [ ] Настроить SMTP для уведомлений Nextcloud (использовать mail.niikn.com после настройки DNS)
- [ ] Настроить SMTP для уведомлений Nextcloud (mail.niikn.com готов, нужно вписать в NC вручную)
- [ ] PTR запись: 85.235.181.190 → mail.niikn.com (провайдер Комстар/МТС)
- [ ] Проверить работу пользователей на new.niikn.com
- [ ] Решить судьбу Linkwarden и FileBrowser (переносить или нет)
- [ ] Зафиксировать статический IP для VM100 (сейчас DHCP 192.168.1.245)