В полях Elastic IP Address 1 Elastic IP Address 2 вводим свои ip адреса, на которые принимается почта.
В полях Reverse DNS Record for EIP 1 Reverse DNS Record for EIP 2 вводим полное имя серверов. Эти записи позволяют преобразовывать ip адреса наших мпшин в доменные имена. Это часто используется при проверке на спам. Если имя сервера и имя обратного преобразования не совпадают, могут появляться задержки в доставке писем до 2-ух суток
Переходим к настройке сервера
Проверяем слушает ли кто-либо порт 25:
socklist | grep 25
Если слушает, останавливаем данный сервис и отменяем его автозапуск: service name_of_service stop
chkconfig name_of_service off
Редактируем файл local-host-names, в котором указываем, за какие имена доменов будет отвечать наш сервер:
localhost
my.domain.ru
Редактируем файл sendmail.mc - основной файл настроек sendmail ВАЖНО! Строки в этом файле комментируются при помощи оператора dnl. Каждая строка должна заканчиваться оператором dnl. В не закомментированной строке лишние пробелы, символы, пустые строки до оператора dnl недопустимы.
Редактируем файл ./conf.d/10-auth.conf disable_plaintext_auth = no
auth_mechanisms = plain
Редактируем файл ./conf.d/10-mail.conf Изменяем параметр mail_location mail_location = mbox:~/mail:INBOX=/var/mail/%u Этот параметр определяет расположение пользовательских каталогов входящей и исходящей почты. Будьте внимательны, каталог inbox (куда складывает почту sendmail) в разных версиях linux может находиться в различных местах.
mail_uid = 8
mail_gid = 12 Параметры должны соответствовать uid и gid пользователю mail.
Редактируем файл 10-master.conf Проверить порт service pop3-login {
inet_listener pop3 {
port = 110
}
}
Запускаем dovecot /etc/init.d/dovecot start
Проверка:
Запускаем sendmail /etc/init.d/sendmail start
Подключаемся на порт 25 по telnet telnet my.domain.ru 25
EHLO localhost
AUTH LOGIN user
Если не выдало ошибок, sendmail работает
Проверка сервера на spam-relay http://tests.nettools.ru/ Предупреждение! Не вводите существующие пароли. В поле “Mail Relay” вводим наше днс имя, ок. Все тесты должны пройти успешно. В поле “E_Mail Valid” вводим один из почтовых ящиков, которые существуют на сервере. Пользователь на сервере должен быть не доступен.
Проверка общих почтовых ящиков http://pingability.com/mailtest.jsp Вводим имя сервера, затем пользователя anonimous, root, postmaster, имя существующего пользователя. Пароль любой. Все тесты должны быть неудачными.
Дополнительно.
Если почта будет отправляться с localhost почтовому серверу my.domain.ru необходимо добавить в файл /etc/aliases строку “127.0.0.1 my.domain.ru”
Если почта будет отправляться почтовым клиентом из мира, целесообразнее будет не давать доступ миру к серверу, а добавить проверку отправителя. Для этого редактируем файлы:
Проверка очереди сообщений выполняется командой mailq. Если писем в очереди слишком много: mailq -v. В логах временные сообщения о недоставке почты не всегда отображаются.
Если при проверке очереди много писем со статусом Deferred проверьте DNS записи домена TXT и PTR.
Если письма возвращаются со статусом RBL blocked или DNSBL blocked проверьте чистоту вашего ip: http://www.dnsbl.info/
Для добавления новых пользователей:
Создать файл /root/nmail.sh в любом каталоге на сервере.
Скопировать в него строки #!/bin/bash
#Скрипт для создания новых почтовых ящиков
echo "Введите имя пользователя:"
read Mname
useradd -g users -s /bin/bash -d /home/$Mname $Mname
cd /home
mkdir $Mname
chown $Mname:users $Mname
cd /home/$Mname
mkdir mail
chown $Mname:users mail
echo "Установка праоля для пользователя $Mname"
passwd $Mname
Выполнить команду chmod +x ./nmail.sh
Выполнить его, ввести имя почтового ящика без @example.com, 2 раза пароль.
Для удаления почтового ящика, выполнить команду userdel username без @example.com