Debian: Строим почтовый сервер: Postfix виртуальные пользователи, SSL

Данную конфигурацию удобно использовать для организации серверов для хостинга, если речь идет о нескольких пользователях, то по моему мнению можно использовать системных.

Базовая настройка Postfix с использованием виртуальных пользователей

1
2
3
4
5
6
7
8
9
10
11
mydestination =
mynetworks = 127.0.0.0/8
inet_interfaces = all
smtpd_tls_loglevel = 3
virtual_mailbox_domains = /etc/postfix/domains
virtual_mailbox_base = /var/www
virtual_mailbox_maps = hash:/etc/postfix/vmailbox
virtual_alias_maps = hash:/etc/postfix/virtual
virtual_minimum_uid = 100
virtual_uid_maps = static:4000
virtual_gid_maps = static:4000

virtual_mailbox_domains, можно перечислить через пробел или как в этом случае держим отдельный файл с
доменами, поддерживаемыми нашим сервером.

virtual_mailbox_base — путь, где будут храниться ящики, также участвует при определении целого пути к ящику

virtual_mailbox_maps — здесь описываются полные пути к ящикам, пример

1
admin@qinet.ru home/mail/admin

Полный путь будет складываться из virtual_mailbox_base и этого пути, т.е. полный путь к ящику будет следующим:
/var/www/home/mail/admin

После внесения изменений нужно выполнить:

1
# postmap /etc/postfix/vmailbox

должен появиться файл /etc/postfix/vmailbox.db

virtual_alias_maps — почтовые алиасы

virtual_uid_maps = static:4000
virtual_gid_maps = static:4000

Владельцем всех почтовых хранилищ, будет специальный пользователь mailadmin с UID:4000 и GID:4000, для этого создадим его:

1
2
# addgroup --gid 4000 mailroot
# adduser mailroot --uid 4000 --gid 4000 --home /var/www --shell /bin/false --disabled-password

Прикручиваем SSL

1
2
mkdir /etc/postfix/ssl
cd /etc/postfix/ssl

Генерируем сертификаты:

1
2
3
4
5
6
7
# openssl genrsa -des3 -rand /etc/hosts -out smtpd.key 1024
# chmod 600 smtpd.key
# openssl req -new -key smtpd.key -out smtpd.csr
# openssl x509 -req -days 3650 -in smtpd.csr -signkey smtpd.key -out smtpd.crt
# openssl rsa -in smtpd.key -out smtpd.key.unencrypted
# mv -f smtpd.key.unencrypted smtpd.key
# openssl req -new -x509 -extensions v3_ca -keyout cakey.pem -out cacert.pem -days 3650

Добавляем в Postfix следующее:

1
2
3
4
5
6
7
8
9
10
11
postconf -e 'smtpd_tls_auth_only = no'
postconf -e 'smtp_use_tls = yes'
postconf -e 'smtpd_use_tls = yes'
postconf -e 'smtp_tls_note_starttls_offer = yes'
postconf -e 'smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key'
postconf -e 'smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt'
postconf -e 'smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem'
postconf -e 'smtpd_tls_loglevel = 1'
postconf -e 'smtpd_tls_received_header = yes'
postconf -e 'smtpd_tls_session_cache_timeout = 3600s'
postconf -e 'tls_random_source = dev:/dev/urandom'

Обновлено 06.05.11, нашел несколько ошибок, к примеру без пустого mydestination, не работали виртуальные домены, а также лишний слеш, в пути vmbox.

Чуть позже опишу как установить dovecot.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *