Настроика почтового сервера Postfix.
yum install postfix
Сделаем резервную копию конф файлов
Далее будем рассматривать конфигурационный файл main.cf
вот его отсновные опции.
soft_bounce = no # используется для доставки недоступным в данный момент серверам.
queue_directory = /var/spool/postfix # Директорияв которой хранится очередь
command_directory = /usr/sbin # директория где хранятся дочерние программы postfix
daemon_directory = /usr/libexec/postfix # директория с демонами
data_directory = /var/lib/postfix # кэши, временные фалы.
mail_owner = postfix # пользователь от которого запускается postfix
default_privs = nobody # Права демона.
myhostname = host.domain.tld # имя хоста
mydomain = domain.tld # Имя домена.
myorigin = $mydomain # имя дописываемое к адресу отправителя если он не fqdn
inet_interfaces = localhost # какие интерфейсы слушаем
inet_protocols = all # протоколы которые сервер поддерживает.
mydestination = $myhostname, localhost.$mydomain, localhost # Для каких доменов принемаем почту
localrecipientmaps = hash:/etc/postfix/aliases ограничение получателей
Синтакситс файла
root: admin
unknownlocalrecipientrejectcode = 550 # ответ - неизвестный получатель
mynetworks_style = class, subnet, host # для кого ретранслируем сообщения
mynetworks = 168.100.189.0/28, 127.0.0.0/8 # Сети которые обслуживаем
relay_domains # домены для которых принимается почта и ретранслируется дальше
relayhost # хост через который транслируется почтовый трафик - например провайдерский почтовый шлюз
relayrecipientmaps = hash:/etc/postfix/relay_recipients # список получателей
home_mailbox = Mailbox # где хранятся почтовые ящики
sendmail_path = /usr/sbin/sendmail.postfix # путь к сендмайлу
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
messagesizelimit = 20485760
disablevrfycommand = yes
smtpddelayreject = yes
smtpdhelorequired = yes
smtpdclientrestrictions = rejectunauthpipelining,
checkclientaccess pcre:/etc/postfix/clientchecks,
checkclient_access hash:/etc/postfix/access
smtpdhelorestrictions =
permitmynetworks
# Put here your clients without reverse names,
# ie only IP-addresses of their mail servers:
hash:/etc/postfix/clientaccess
checkheloaccess hash:/etc/postfix/access
checkheloaccess hash:/etc/postfix/helochecks
rejectinvalidhelohostname
rejectnonfqdnhelohostname
rejectunknownhostname
smtpdsenderrestrictions =
permitmynetworks
rejectunauthpipelining
checksenderaccess hash:/etc/postfix/accessusernames
rejectunknownsenderdomain
rejectnonfqdnsender
smtpdrecipientrestrictions =
permitmynetworks
permitmxbackup
permitauthdestination
rejectunauthdestination
rejectinvalidhostname
rejectunauthpipelining
rejectnonfqdnrecipient
rejectnonfqdnsender
rejectunknownsenderdomain
rejectunknownrecipientdomain
rejectmultirecipientbounce
checkheloaccess hash:/etc/postfix/helochecks
checkheloaccess pcre:/etc/postfix/helocheckspcre
checkrecipientaccess hash:/etc/postfix/accessusernames
rejectunknownaddress
smtpdclientrestrictions =
permitmynetworks
#rejectrblclient bl.spamcop.net
#rejectrblclient zen.spamhaus.org
# Put here your clients without reverse names,
# ie only with IP-addresses of their MX:
hash:/etc/postfix/clientaccess
rejectunauthpipelining
# Next rule breaks RFC, but is VERY helpfull!:
rejectunknownclient
rejectunknownreverseclienthostname
checkclientaccess hash:/etc/postfix/access
checkclientaccess pcre:/etc/postfix/clientchecks
###
rejectrblclient bl.spamcop.net
rejectrblclient zen.spamhaus.org
###
smtpddatarestrictions = rejectunauthpipelining
smtpdendofdatarestrictions = rejectunauth_pipelining
unknownaddressrejectcode = 553
unknownhostnamerejectcode = 553
unknownclientrejectcode = 550
smtpdrejectunlistedsender = yes
virtualaliasmaps = hash:/etc/postfix/virtual
localrecipientmaps = $aliasmaps
hash:/etc/postfix/relayrecipients
unknownlocalrecipientrejectcode = 554
relayrecipientmaps = hash:/etc/postfix/relayrecipients
unknownrelayrecipientsreject_code = 554
smtprcpttimeout = 600s