CentOS: postfix

Материал из OpenWiki
Перейти к: навигация, поиск

Статья не готова для активного использования

Postfix — один из стандартных smtp-серверов (их 3: qmail, exim, postfix) системы *nix, является стандартным почтовым сервером в семействе RedHat. Его главное преимущество — модульность. Настройка осуществляется редактированием файла /etc/postfix/main.cf (либо командой postconf -e [параметр] - это вносит изменение в тот же файл).

/etc/postfix/main.cf (минимальные изменения для CentOS):

soft_bounce = no
myhostname = <имя хоста>
mydomain = <имя домена>
myorigin = $mydomain
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain,
 mail.$mydomain, www.$mydomain, ftp.$mydomain
mynetworks_style = host
mynetworks = 127.0.0.0/8, [::1]/128
home_mailbox = Maildir/
mail_spool_directory = /var/mail

для аворизации через dovecot в /etc/postfix/main.cf:

smtpd_sasl_auth_enable = yes
broken_sasl_auth_clients = yes
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_security_options = noanonymous

smtpd_recipient_restrictions =
 permit_mynetworks,
 permit_sasl_authenticated,
 reject_unauth_destination

и в /etc/dovecot/conf.d/10-master.conf

service auth {
 ...
 unix_listener /var/spool/postfix/private/auth {
  mode = 0660
  user = postfix
  group = postfix
 }
 ...
}

очень важно разобраться с smtpd_*_restrictions

простые и безопасные настройки

smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
smtpd_relay_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination

рекомендуется добавить greylist, DKIM:

для greylist можно поставить postgrey (yum install postgrey) и дописать в конец smtpd_recipient_restrictions (http://vladimir-stupin.blogspot.ru/2009/09/postfix-postgrey.html):

smtpd_recipient_restrictions = 
...
check_policy_service inet:127.0.0.1:60000

либо другой сокет (у меня "check_policy_service unix:/var/spool/postfix/postgrey/socket") ,а DKIM можно по этой статье

можно добавить Amavisd (для fedora, но надо доустановить clamav-server-sysvinit)

Отправка из командной строки:

sendmail login@domain.local < /etc/fstab