Обновить docs/services/lxc212-mail/mailcow.md
This commit is contained in:
parent
36e1f90ed8
commit
ecdbc70d87
@ -24,6 +24,7 @@
|
|||||||
10. [Полезные команды](#10-полезные-команды)
|
10. [Полезные команды](#10-полезные-команды)
|
||||||
11. [Решение проблем](#11-решение-проблем)
|
11. [Решение проблем](#11-решение-проблем)
|
||||||
12. [Безопасность и обслуживание](#12-безопасность-и-обслуживание)
|
12. [Безопасность и обслуживание](#12-безопасность-и-обслуживание)
|
||||||
|
13. [Создание почтового ящика](#13-Создание-почтового-ящика)
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -401,6 +402,166 @@ Mailcow интегрируется с внешними системами мон
|
|||||||
- Контейнер почты: 212 (192.168.1.212)
|
- Контейнер почты: 212 (192.168.1.212)
|
||||||
- Документация: `mail.md` в репозитории конфигураций
|
- Документация: `mail.md` в репозитории конфигураций
|
||||||
|
|
||||||
|
##13. Создание почтового ящика
|
||||||
|
|
||||||
|
### Через веб-интерфейс Mailcow
|
||||||
|
|
||||||
|
1. Открой `https://mail.zailon.ru` в браузере
|
||||||
|
2. Нажми **«Войти»** (правый верхний угол)
|
||||||
|
3. Введи:
|
||||||
|
- **Логин**: `admin`
|
||||||
|
- **Пароль**: твой пароль администратора
|
||||||
|
4. В левом меню выбери: **Configuration** → **Mail Setup** → **Mailboxes**
|
||||||
|
5. Нажми зелёную кнопку **Add mailbox**
|
||||||
|
6. Заполни форму:
|
||||||
|
|
||||||
|
| Поле | Что вписать | Пример |
|
||||||
|
|------|------------|--------|
|
||||||
|
| **Domain** | Выбери из списка | `zailon.ru` |
|
||||||
|
| **Local part** | Часть до @ | `zevs` |
|
||||||
|
| **Name** | Имя владельца | `Zevs` |
|
||||||
|
| **Password** | Пароль ящика | `ТвойНадёжныйПароль123!` |
|
||||||
|
| **Password (repeat)** | Повтори пароль | `ТвойНадёжныйПароль123!` |
|
||||||
|
| **Quota** | Лимит места в МБ | `5120` (5 ГБ) |
|
||||||
|
|
||||||
|
7. Остальные поля не трогай
|
||||||
|
8. Нажми **Add mailbox**
|
||||||
|
|
||||||
|
✅ Ящик создан. Теперь можно:
|
||||||
|
- Войти в почту: `https://mail.zailon.ru` → логин `zevs@zailon.ru`
|
||||||
|
- Настроить клиент (см. раздел [Настройка клиентов](#9-настройка-почтовых-клиентов))
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🌐 Настройка Nginx Proxy Manager для mail.zailon.ru
|
||||||
|
|
||||||
|
> Делается один раз при первом запуске почтового сервера.
|
||||||
|
|
||||||
|
### Шаг 1: Открой админку NPM
|
||||||
|
|
||||||
|
1. В браузере перейди: `http://192.168.1.201:81`
|
||||||
|
2. Введи логин/пароль от NPM (если не менял — смотри в `group_vars/all.yml` или спроси у админа)
|
||||||
|
|
||||||
|
### Шаг 2: Создай новый Proxy Host
|
||||||
|
|
||||||
|
1. В меню слева выбери **Hosts** → **Proxy Hosts**
|
||||||
|
2. Нажми кнопку **Add Proxy Host** (внизу справа)
|
||||||
|
3. Заполни вкладку **Details**:
|
||||||
|
|
||||||
|
| Поле | Значение |
|
||||||
|
|------|----------|
|
||||||
|
| **Domain Names** | `mail.zailon.ru` (нажми Enter после ввода) |
|
||||||
|
| **Scheme** | `https` |
|
||||||
|
| **Forward Hostname / IP** | `192.168.1.212` |
|
||||||
|
| **Forward Port** | `443` |
|
||||||
|
| **Cache Assets** | ❌ выключено |
|
||||||
|
| **Block Common Exploits** | ✅ включено |
|
||||||
|
| **WebSockets Support** | ❌ выключено |
|
||||||
|
|
||||||
|
### Шаг 3: Настрой SSL
|
||||||
|
|
||||||
|
1. Перейди на вкладку **SSL**
|
||||||
|
2. Выбери: **Request a new SSL Certificate**
|
||||||
|
3. Поставь галочки:
|
||||||
|
- ✅ **Force SSL**
|
||||||
|
- ✅ **HTTP/2 Support**
|
||||||
|
- ✅ **I agree to the Let's Encrypt Terms of Service**
|
||||||
|
4. Поле **Email for Let's Encrypt** — введи твой email (для уведомлений)
|
||||||
|
|
||||||
|
### Шаг 4: Добавь настройки для HTTPS-проксирования
|
||||||
|
|
||||||
|
1. Перейди на вкладку **Advanced**
|
||||||
|
2. В поле **Custom Nginx Configuration** вставь:
|
||||||
|
|
||||||
|
```nginx
|
||||||
|
proxy_ssl_verify off;
|
||||||
|
proxy_ssl_server_name on;
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
|
|
||||||
|
# Security headers
|
||||||
|
add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload" always;
|
||||||
|
add_header X-Content-Type-Options nosniff always;
|
||||||
|
add_header X-Frame-Options SAMEORIGIN always;
|
||||||
|
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
|
||||||
|
add_header Permissions-Policy "geolocation=(), camera=(), microphone=(), payment=()" always;
|
||||||
|
```
|
||||||
|
|
||||||
|
### Шаг 5: Ограничь доступ к админке (опционально, но рекомендуется)
|
||||||
|
|
||||||
|
В том же поле **Custom Nginx Configuration**, **после** предыдущего блока, добавь:
|
||||||
|
|
||||||
|
```nginx
|
||||||
|
# Ограничение доступа к админке /admin
|
||||||
|
location ^~ /admin {
|
||||||
|
allow 192.168.1.0/24;
|
||||||
|
allow 188.73.191.202;
|
||||||
|
allow 192.168.45.0/24;
|
||||||
|
deny all;
|
||||||
|
|
||||||
|
add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload" always;
|
||||||
|
add_header X-Content-Type-Options nosniff always;
|
||||||
|
add_header X-Frame-Options SAMEORIGIN always;
|
||||||
|
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
|
||||||
|
add_header Permissions-Policy "geolocation=(), camera=(), microphone=(), payment=()" always;
|
||||||
|
|
||||||
|
proxy_pass https://192.168.1.212:443;
|
||||||
|
proxy_ssl_verify off;
|
||||||
|
proxy_ssl_server_name on;
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
> ⚠️ Если не добавляешь ограничение — просто пропусти этот блок.
|
||||||
|
|
||||||
|
### Шаг 6: Сохрани и проверь
|
||||||
|
|
||||||
|
1. Нажми **Save** внизу страницы
|
||||||
|
2. Подожди 10-20 секунд (пока NPM выпустит сертификат Let's Encrypt)
|
||||||
|
3. Открой в браузере: `https://mail.zailon.ru`
|
||||||
|
4. Если видишь страницу входа SOGo — всё работает ✅
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🔍 Проверка после настройки
|
||||||
|
|
||||||
|
### 1. Проверь, что сертификат работает
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -I https://mail.zailon.ru
|
||||||
|
```
|
||||||
|
|
||||||
|
В ответе должна быть строка:
|
||||||
|
```text
|
||||||
|
strict-transport-security: max-age=63072000; includeSubDomains; preload
|
||||||
|
```
|
||||||
|
|
||||||
|
### 2. Проверь ограничение админки (если настраивал)
|
||||||
|
- С ноутбука в локальной сети: `https://mail.zailon.ru/admin` → должна открыться форма входа
|
||||||
|
- С телефона через мобильный интернет (без VPN): → должна быть ошибка `403 Forbidden`
|
||||||
|
|
||||||
|
### 3. Проверь почту
|
||||||
|
- Открой `https://mail.zailon.ru`
|
||||||
|
- Войди как `zevs@zailon.ru`
|
||||||
|
- Отправь тестовое письмо самому себе → должно прийти мгновенно
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🛠 Если что-то не работает
|
||||||
|
|
||||||
|
| Проблема | Решение |
|
||||||
|
|----------|---------|
|
||||||
|
| `403 Forbidden` при входе в админку | Проверь, что твой IP есть в `allow` в блоке `location ^~ /admin` |
|
||||||
|
| `502 Bad Gateway` | Убедись, что Mailcow запущен: `docker compose ps` в контейнере 212 |
|
||||||
|
| Браузер ругается на сертификат | Подожди 1-2 минуты после сохранения в NPM, обнови страницу |
|
||||||
|
| Не приходит письмо с внешнего ящика | Проверь проброс порта 25 на роутере и DNS-записи MX/SPF |
|
||||||
|
|
||||||
|
Если не получается — посмотри логи NPM: в админке NPM → **Hosts** → **Proxy Hosts** → три точки у записи `mail.zailon.ru` → **Logs**.
|
||||||
---
|
---
|
||||||
|
|
||||||
> **Примечание**: Все команды выполняются от имени root.
|
> **Примечание**: Все команды выполняются от имени root.
|
||||||
Loading…
Reference in New Issue
Block a user