Утилита sendmail#

Описание#

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

sendmail отправляет сообщение получателям, выполняя межсетевую переадресацию по мере необходимости.

Синтаксис утилиты:

sendmail <options> <addressee>

Где:

  • <options> - опции;

  • <addressee> - адресаты.

Опции#

Часто используемые опции утилиты представлены в таблице ниже.

Опции sendmail#

Опция

Описание

-B <type>

Установка типа письма <type> согласно MIME. Например: BITMIME

-b<mode>

Указание работы в определенном режиме <mode>. Значения: m для отправки, d для отладки

-bC

Проверка конфигурационного файла

-bi

Инициализация базы данных псевдонимов

-C <file>

Использование альтернативного файла конфигурации <file>

-d <level>

Установка уровня отладки <level>

-f <sender>

Задание имени отправителя <sender>

-F <fullname>

Установка полного имени отправителя <fullname>

-h <hops>

Установка максимального количества прыжков для сообщения

-i

Игнорирование точек на отдельной строке (останавливающих символов)

-N <dsn>

Установка опций доставки уведомлений. Например, игнорирование <dsn>

-o <option>

Установка определенной опции <option> (например, oQ для установки очереди)

-p

Задание имени протокола, используемого для получения сообщений

-q

Обработка очереди сообщений

-t

Чтение получателей из заголовков письма

-v

Переход в подробный режим

-V <envid>

Установка идентификатора переменной среды <envid> для DSN

Примеры использования#

  • Для отправки письма получателю testuser@testmail.ru введите команду:

    sendmail testuser@testmail.ru
    

    После выполнения данной команды в открывшемся окне отправки введите сообщение и поставьте точку с новой строки, после чего sendmail отправит сообщение.

  • Для проверки статуса sendmail введите команду:

    service sendmail status
    
  • Для перезапуска в случае внесения изменений в конфигурационные файлы введите команду:

    service sendmail restart
    
  • Для отправкв письма с определенным отправителем введите команду:

    sendmail -f sender@example.com recipient@example.com < message.txt
    
  • Для определение адреса, на который отправляется ответ (Reply-To) введите команду:

    sendmail -t < message_with_headers.txt
    

    Файл message_with_headers.txt должен содержать необходимые заголовки, включая Reply-To. Ключ -t говорит sendmail использовать заголовки, присутствующие в теле сообщения, для извлечения адресов получателей, отправителей и других параметров.

    Пример message_with_headers.txt:

    To: recipient@example.com
    From: sender@example.com
    Reply-To: reply-to@example.com
    Subject: Test Email
    
    This is the body of the email.
    
  • Для задания класса приоритета для сообщения введите команду:

    sendmail -oP high -t < message_with_headers.txt
    

    Ключ -o позволяет задать различные опции для sendmail. В данном примере P задает приоритет сообщения (high).

  • Для отправки письма без попыток повторной доставки при ошибке введите команду:

    sendmail -odb -t < message_with_headers.txt
    

    Опция -odb отключает фоновую доставку. Таким образом, sendmail попытается отправить сообщение немедленно и не будет пытаться повторно доставлять сообщение в случае неудачи.

  • Для отправки письма с определенной конфигурацией введите команду:

    sendmail -C /path/to/sendmail.cf -t < message_with_headers.txt
    

    Ключ -C позволяет указать альтернативный файл конфигурации для sendmail.

Дополнительная информация#

Дополнительную информацию можно получить, выполнив команду:

man sendmail