dovecot

Ответить
ya
^-^
Сообщения: 3207
Зарегистрирован: 16 дек 2021, 19:56

dovecot

Сообщение ya »

Добавление нового почтового ящика в Dovecot на Debian зависит от того, используете ли вы **системных пользователей** (те, что создаются через `adduser`) или **виртуальных пользователей** (данные которых хранятся в базе данных или отдельном файле).

Вот инструкции для обоих случаев.

---

## Вариант 1: Системные пользователи (Local Users)
Это самый простой способ. Dovecot по умолчанию настроен на работу с пользователями вашей системы Linux.

1. **Создайте пользователя в Debian:**
```bash
sudo adduser username
```
*(Замените `username` на нужное имя. Система попросит ввести пароль — это и будет пароль от почты).*

2. **Проверьте формат почты:**
Убедитесь, что Dovecot знает, где искать письма. Откройте конфиг:
`nano /etc/dovecot/conf.d/10-mail.conf`
Обычно там стоит: `mail_location = maildir:~/Maildir`

3. **Готово.** Пользователь может подключаться по IMAP/POP3, используя свои системные данные.

---

## Вариант 2: Виртуальные пользователи (Auth File)
Если вы не хотите создавать полноценного пользователя в системе для каждого ящика, используется файл паролей.

### 1. Настройка формата хранения
Откройте `/etc/dovecot/conf.d/10-auth.conf` и убедитесь, что включен нужный тип аутентификации:
```text
!include auth-passwdfile.inc.conf
```

### 2. Добавление пользователя в файл
Обычно файл находится по адресу `/etc/dovecot/users`. Чтобы добавить пользователя, используйте утилиту `doveadm` для генерации хеша пароля:

```bash
# Генерируем хеш пароля
doveadm pw -s SHA512-CRYPT
```
Введите пароль, скопируйте результат. Затем отредактируйте файл:
`nano /etc/dovecot/users`

Добавьте строку в формате:
`[email protected]:{SHA512-CRYPT}хеш_пароля:5000:5000::/var/mail/vhosts/example.com/user`

* **5000:5000** — это UID и GID виртуального пользователя (обычно создается один общий пользователь `vmail`).
* **/var/mail/...** — путь к почтовой папке.

---

## Вариант 3: Использование SQL (PostgreSQL/MySQL)
Если у вас связка Postfix + Dovecot + БД, новый ящик добавляется простым `INSERT` запросом в вашу таблицу пользователей.

```sql
INSERT INTO users (email, password) VALUES ('[email protected]', 'hashed_password');
```

---

### Общие шаги после изменений
После внесения любых правок в конфигурацию Dovecot, обязательно проверьте её на ошибки и перезапустите сервис:

```bash
# Проверка конфига
sudo doveconf -n > /dev/null

# Перезапуск
sudo systemctl restart dovecot
```

### Полезный совет: Проверка логина
Вы можете проверить, "видит" ли Dovecot нового пользователя, не настраивая почтовый клиент:
```bash
doveadm user [email protected]
```
Если команда вернет пути к директориям и UID — значит, ящик активен и готов к работе.
Ответить