Быстро поднять smtp relay на Postfix (на момент написания заметки версия 2.6.6) и CentOS 6.x (например, используя openvz контейнер в Proxmox 3.3) поможет инструкция по шагам:
- Устанавливаем CentOS 6.x
- Обновляем:
# yum -y update
- Установим дополнительный репозиторий epel
- Устанавливаем необходимые утилиты:
# yum -y install postfix postfix-perl-scripts man
- Правим /etc/postfix/main.cf :
- myhostname = smtp.example.com
- inet_interfaces = all
- mynetworks_style = host
- mynetworks = cidr:/etc/postfix/network_table
- smtpd_client_restrictions = permit_mynetworks, reject
- smtpd_helo_restrictions = permit_mynetworks,reject
- smtpd_sender_restrictions = reject_unknown_sender_domain
- smtpd_recipient_restrictions = permit_mynetworks, reject
- Добавляем разрешенные IP и сети (A.B.C.D/mask замените на свои значения):
# echo "A.B.C.D/mask #example host" >> /etc/postfix/network_table
- Запускаем Postfix:
# service postfix restart
- На всякий случай проверим на открытый релей здесь
- Проверяем работу, пробуя отправку от тех IP и сетей, что прописаны в /etc/postfix/network_table
- Если все хорошо — Ура! (у нас есть smtp relay открытый только для определенных IP), если нет — проверяем корректность записи в /etc/postfix/network_table (левая часть — CIDR формат, правая часть должна быть, но не учитывается)