Поиск по сайту:

Как настроить почтовый сервер Postfix (SMTP) с использованием конфигурации нулевого клиента. Часть 9


Независимо от множества методов онлайн-коммуникации, доступных сегодня, электронная почта остается практичным способом доставки сообщений из одного конца света в другой или человеку, сидящему в офисе рядом с нашим.

На следующем изображении показан процесс транспортировки электронной почты, начиная с отправителя и до тех пор, пока сообщение не достигнет почтового ящика получателя:

Чтобы это стало возможным, за кулисами происходит несколько вещей. Чтобы сообщение электронной почты было доставлено из клиентского приложения (например, Thunderbird, Outlook или служб веб-почты, таких как Gmail или Yahoo! Mail) на почтовый сервер, а оттуда к серверу назначения и, наконец, к предполагаемому получателю, на каждом сервере должна быть установлена служба SMTP (Простой протокол передачи почты).

Именно поэтому в этой статье мы объясним, как настроить SMTP-сервер в RHEL 7, на который пересылаются электронные письма, отправленные локальными пользователями (даже другим локальным пользователям). на центральный почтовый сервер для облегчения доступа.

В требованиях экзамена это называется установкой нулевого клиента.

Наша тестовая среда будет состоять из исходного почтового сервера и центрального почтового сервера или ретранслятора.


Original Mail Server: (hostname: box1.mydomain.com / IP: 192.168.0.18) 
Central Mail Server: (hostname: mail.mydomain.com / IP: 192.168.0.20)

Для разрешения имен мы будем использовать известный файл /etc/hosts в обоих ящиках:


192.168.0.18    box1.mydomain.com       box1
192.168.0.20    mail.mydomain.com       mail

Рекомендации по установке Postfix и брандмауэра/SELinux

Для начала нам потребуется (на обоих серверах):

1. Установите Postfix:


yum update && yum install postfix

2. Запустите службу и включите ее при будущих перезагрузках:


systemctl start postfix
systemctl enable postfix

3. Разрешить почтовый трафик через брандмауэр:


firewall-cmd --permanent --add-service=smtp
firewall-cmd --add-service=smtp

4. Настройте Postfix на box1.mydomain.com.

Основной файл конфигурации Postfix находится в /etc/postfix/main.cf. Этот файл сам по себе является отличным источником документации, поскольку включенные в него комментарии объясняют назначение настроек программы.

Для краткости давайте отображать только те строки, которые необходимо редактировать (да, вам нужно оставить mydestination пустым на исходном сервере; в противном случае электронные письма будут храниться локально, а не на центральном почтовом сервере, который это то, что мы на самом деле хотим):


myhostname = box1.mydomain.com
mydomain = mydomain.com
myorigin = $mydomain
inet_interfaces = loopback-only
mydestination =
relayhost = 192.168.0.20

5. Настройте Postfix на mail.mydomain.com.


myhostname = mail.mydomain.com
mydomain = mydomain.com
myorigin = $mydomain
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
mynetworks = 192.168.0.0/24, 127.0.0.0/8

И установите для связанного логического значения SELinux значение true навсегда, если это еще не сделано:


setsebool -P allow_postfix_local_write_mail_spool on

Приведенное выше логическое значение SELinux позволит Postfix записывать в почтовую очередь на центральном сервере.

5. Перезапустите службу на обоих серверах, чтобы изменения вступили в силу:


systemctl restart postfix

Если Postfix запускается неправильно, вы можете использовать следующие команды для устранения неполадок.


systemctl –l status postfix
journalctl –xn
postconf –n

Тестирование почтовых серверов Postfix

Для тестирования почтовых серверов вы можете использовать любой Mail User Agent (чаще всего известный как MUA), например mail или mutt.

Поскольку mutt является моим личным фаворитом, я буду использовать его в box1 для отправки электронного письма пользователю tecmint, используя существующий файл (mailbody .txt) в качестве тела сообщения:


mutt -s "Part 9-RHCE series" [email  < mailbody.txt

Теперь перейдите на центральный почтовый сервер (mail.mydomain.com), войдите в систему как пользователь tecmint и проверьте, получено ли письмо:


su – tecmint
mail

Если электронное письмо не было получено, проверьте почтовую очередь root на предмет предупреждения или уведомления об ошибке. Вы также можете убедиться, что служба SMTP работает на обоих серверах и что порт 25 открыт на центральном почтовом сервере с помощью команды nmap:


nmap -PN 192.168.0.20

Краткое содержание

Настройка почтового сервера и ретрансляционного хоста, как показано в этой статье, является важным навыком, которым должен обладать каждый системный администратор, и представляет собой основу для понимания и установки более сложного такой сценарий, как почтовый сервер, на котором размещен действующий домен для нескольких (даже сотен или тысяч) учетных записей электронной почты.

(Обратите внимание, что для такого типа настройки требуется DNS-сервер, который выходит за рамки данного руководства), но вы можете использовать следующую статью для настройки DNS-сервера:

  1. Настройка DNS-сервера только для кэширования в CentOS/RHEL 07

Наконец, я настоятельно рекомендую вам ознакомиться с файлом конфигурации Postfix (main.cf) и страницей руководства программы. Если у вас есть сомнения, не стесняйтесь написать нам, используя форму ниже или воспользовавшись нашим форумом Linuxsay.com, где вы получите практически немедленную помощь от экспертов Linux со всего мира.