Меню

Freebsd sendmail настройка smtp

FreeBSD + sendmail

FreeBSD + sendmail

Задача:
Настроить SMTP сервер для отправки и приема почты для домена test.local

/etc/rc.conf:
sendmail_enable=»YES»

### Отправка
По умолчанию отправляется почта только локально (127.0.0.1), разрешим оправку от сети 192.168.0.0/24

/etc/mail/access:

Выполняем команду make в /etc/mail/

### Прием

#Способ 1 (Указываем домен test.local, для которого принимаем почту) с перезагрузкой:
/etc/mail/local-host-names:
test.local

#Способ 2 (/etc/mail/access и /etc/mail/mailertable) без перезагрузки:

/etc/mail/access:

/etc/mail/mailertable:
test.local local:

Выполняем команду make в /etc/mail/

### Адрес получателя почты root и postmaster, + группа пвссылки

/etc/mail/aliases:

Выполняем команду make в /etc/mail/ или newaliases

### Антивирус ClamAv

Подключается через интерфейс Milter к sendmail

cd /usr/ports/security/clamav/ && make install clean
[X] MILTER Compile the milter interface

/etc/mail/sendmail.cf
В нем описаны действия с письмами, для изменения настроек есть макропроцессор m4
С помощью макропроцессора m4 генерируется файл настроек sendmail
При установке ОС в /etc/mail/ создаются файлы «имя_хоста».mc и «имя_хоста».submit.mc

(в примере test.local и test.local.submit.mc)
Это по сути есть макросы, на основе которых генерируются файлы настроек
Один для локальной отправки писем, второй во вне

Редактируем test.local.mc:

Выполняем команду make в /etc/mail/
Макропроцессор m4 создаст файл test.local.cf,
После этого выполняем команду make install в /etc/mail/
test.local.cf будет переименован в sendmail.cf

#Запускаем ClamAv

/etc/rc.conf:
clamav_clamd_enable=»YES»
clamav_freshclam_enable=»YES»
clamav_milter_enable=»YES»

/usr/local/etc/rc.d/clamav-freshclam start
/usr/local/etc/rc.d/clamav-clamd start
/usr/local/etc/rc.d/clamav-milter start

### Проверяем
Пользователь user у меня был добдавлен в сестеме
Если у вас нет, добавьте с помощью adduser

telnet localhost 25

mail from: user@test.local

rcpt to: simpleuser@test.local

less /var/log/maillog
cat /var/mail/root
cat /var/mail/user

Источник

Установка и настройка sendmail

Настраиваем sendmail (8.12.6/7/8) для виртуального почтового хостинга.

Установка sendmail

Сначала устанавливаем итз портов sendmail c поддержкой cyrus sasl (система аутентификации).

После установки sendmail мы должны изменить файл /etc/make.conf. Добавляем в него строчку

Если до этого стоял более старый sendmail, устанавливаем файл submit.cf

Читайте также:  Как сбросить настройки на acer v360

Для запуска sendmail будем использовать следующий сценарий (переименуем его в удобоваримый формат):

Для нормального запуска обновленной версии мы должны указать путь к ней (файл /etc/mail/mailer.conf). Это можно сделать либо при помощи команды

либо вручную, изменив файл mailer.conf:

На этом установка sendmail окончена. Осталоь столько запустить его командой

Сообщения sendmail sm-msp-queue говорят о том, что все прошло нормально.

Настройка sendmail

Будем считать, что мы настраиваем два виртуальных почтовых домена: perldoc.ru и perlfaq.ru. Для настройки sendmail c поддержкой виртуального постового хостинга нам потребуется создать (или изменить) следующие файлы:

aliases

Этот файл описывает пользовательские псевдонимы, используемые sendmail. Файл расположен в каталоге /etc/mail и представляет собой список вида

Более подробно структура файла aliases описана в aliases (5). В этот файл мы добавляем строку

Вся локальная почта, адресованная пользователю root, теперь будет приходить на адрес admin@perldoc.ru.

access

В этом файле мы указываем, для каких IP адресов sendmail должен принимать и пересылать почту. Поскольку для эих целей мы будем использовать аутентификацию cyrus sasl, мы разрешим только отсылку с локального хоста

local-host-names

В этом файле мы храним названия доменов, для которых наш сервер должен обрабатывать почту. Поскольку мы хотим использовать наш сервер для двух виртуальных почтовых доменов perldoc.ru и perlfaq.ru, пропишем их в файл:

virtusertable

В файле virtusertable мы указываем sendmail, куда направлять почту, пришедшую на адреса в доменах perldoc.ru и perlfaq.ru.

Вся почта, пришедшая на адрес stellar@perldoc.ru будет направляться в почтовый ящик пользователя stellar-perldoc.ru, а почта, пришедшая на admin@perldoc.ru, соответственно будет отсылаться пользователю admin-perldoc.ru. Тоже самое будет и для домена perlfaq.ru. Если на наш домен будет прислана почта с несуществующем пользователем, сработает строчка

и sendmail откажется принимать такое сообщение.

freebsd.mc

Теперь нам осталось только изменить конфигурацию файла freebsd.mc, чтобы sendmail научился работать с виртуальными почтовыми доменами. Здесь надо понимать, что в том случае, когда существует файл, у которого имя совпадает с названием машины (например, для машины с именем genius файл будет genius.mc), он используется вместо файла freebsd.mc

Читайте также:  Программа для настройки процессора alpine

Вот примерный вид конфигурационного файла:

Запуск и тестирование

Теперь, когда почти все сделано, нам надо пересобрать заново файл конфигурации sendmail и обновить базы данных. Делается это следующим набором команд:

Результатом будет нечто вроде этого:

Выделяем чекбокс «Аутентификация SMTP (RFC-2554)».
Переключаем кнопку «Использовать параметры, указанные ниже.»
Вводим имя пользователя и пароль, которые создали при помощи saslpasswd2.
Пользователь: admin-perldoc.ru@genius.
Пароль: *********

(!) Обратите внимание на то, что имя пользователя указано вместе с именем машины.
Выделяем чекбокс «Требовать безопасную (MD5) аутентификацию».

В том случае, если используется MS Outlook или другой почтовый клиент, в котором нет безопасной аутентификации (DIGEST-MD5, CRAM-MD5), необходимо использовать аутентификацию по методам PLAIN или LOGIN. При этом в качестве имени пользователя надо использовать имя пользователя БЕЗ добавленного имени машины. В нашем случае имя пользователя будет выглядеть так: admin-perldoc.ru.

После отправки письма в лог-файле /var/log/maillog должны быть примерно такие записи:

Источник

Выполняю установку, настройку, сопровождение серверов. Для уточнения деталей используйте форму обратной связи

1) Введение.

Если вы не хотите разбираться в в таких монстрах, как postfix или exim. Или если, вам не нужно ставить лишний софт. Или нужно быстро поднять MTA для простейших задач, тогда эта статья для вас.

Sendmail — один из старейших агентов передачи почты (MTAmail transfer agent). Распространяется бесплатно вместе с исходными кодами и имеется в базовой поставке почти всех *nix-систем. Существуют версии программы для практически всех операционных систем и аппаратных платформ. Sendmail. Но если взглянуть на управление/администрирование, то он оказывается не очень удобно.

В статье я расскажу, как быстро настроить отправку почты на sendmail.

Читайте также:  Настройка виджета погода ios

Тестовый стенд: FreeBSD 8.0 Release, Sendmail 8.14.4/8.14.3.

2) Настройка.

По умолчанию, sendmail работает только на отправку и слушает 25 порт на localhost. Удостоверимся в этом:

#sockstat | grep 25
root sendmail 887 3 tcp4 127.0.0.1:25 *:*

Это объясняется тем, что по дефолту стоит значение (на самом деле это прописано в файле /etc/default/rc.conf, а в файле /etc/rc.conf вообще нет упоминаний о sendmail)

Что бы включить sendmail прописываем в /etc/rc.conf такую строчку:

После этого перезапускаем Sendmail:

#/etc/rc.d/sendmail restart
Stopping sendmail.
Starting sendmail.

#sockstat | grep 25
root sendmail 23261 3 tcp4 *:25

видим, что запущен и слушает все адреса. Что бы указать только некоторые адреса, то для этого нужно открыть файл /etc/mail/sendmail.cf, найти строчку:

O DaemonPortOptions=Name=IPv4, Family=inet

и привести её к такому виду:

O DaemonPortOptions=Name=IPv4, Family=inet, Address=10.0.3.33

Или если несколько адресов, то нужно несколько раз указать эту строчку:

O DaemonPortOptions=Name=IPv4, Family=inet, Address=10.0.3.33
O DaemonPortOptions=Name=IPv4, Family=inet, Address=10.0.4.44

После этого перезапускаем sendmail и смотрим:

#/etc/rc.d/sendmail restart
Stopping sendmail.
Starting sendmail.
#sockstat | grep 25
root sendmail 23261 3 tcp4 10.0.3.33:25
root sendmail 23261 3 tcp4 10.0.4.44:25

Собственно этого достаточно, что бы отправлять письма из консоли.

3) Простейшие операции.

Что бы посмотреть, что у нас в очереди находится, выполняем команду mailq:

#mailq
/var/spool/mqueue (2 requests)
——Q-ID—— —Size— ——Q-Time—— ————Sender/Recipient————
o5P4HGOi020000 2047 Fri Jun 25 07:18 MAILER-DAEMON
(Deferred: Operation timed out with domain.ua)

o5P4HGOj020000 9151 Fri Jun 25 07:18 MAILER-DAEMON
(Deferred: Operation timed out with domain.ua.)

Что бы перезапустить всю очередь, выполняем команду:

Что бы посмотреть письма текущего пользователя выполняем команду:

Если нет новых писем, получаем сообщение:

Настраиваем sendmail для быстрой отправки писем. : 2 комментария

мне нужно настроить 3 сервера для массовой отправки писем

Источник