Может ли кто-нибудь научить меня, как настроить экземпляр centos для отправки писем.
Я намерен отправлять сообщения электронной почты из сценария bash на основе некоторых сигналов и предупреждений пользователю сборки. Я не собираюсь использовать его в качестве машины для массовой рассылки.
Это идеально подходит для Простая служба уведомлений Amazon. Служба (также известная как SNS) проста в использовании из сценария bash, бесплатна (для первых 100 000 сообщений, всего менее 1 ГБ), а уведомления отправляются немедленно.
Настройка для SNS выглядит так:
Из:Документация SNS
Похоже, что с отправкой электронной почты возникнет много проблем, однако среда Amazon EC2 очень ограничивает отправку электронной почты. Многие пытались использовать EC2 в качестве платформы для рассылки спама, поэтому Amazon тщательно блокирует трафик SMTP (электронной почты), за исключением случаев, предусмотренных Amazon. Вы не можете просто открыть порт в группе безопасности Amazon, чтобы обойти блокировки Amazon.
У Amazon есть общая функция электронной почты, которую можно использовать из EC2. Это называется Amazon Simple Email Service (SES). Который воля не хорошо работать для вас, так как это является предназначен для массовой рассылки электронной почты. Итак, цены на SES, обработка исключений и обмен сообщениями не будут подходить для вашего приложения, как я это себе представляю.
С другой стороны, SNS отлично подходит для этого. Он включает начальное электронное письмо для получателей (пользователей вашей сборки) с вопросом, хотят ли они в будущем получать сообщения по этой теме; им предоставляется возможность отказаться, и они должны ответить, чтобы получить дальнейшие сообщения.
Процесс настройки (показанный в блоках выше) легко выполняется из Amazon Консоль управления AWS. (Ваш вопрос подразумевает, что у вас уже есть необходимая для этого учетная запись AWS EC2.) После настройки ваша команда из bash будет похожа на:
$ PROMPT> sns-publish arn: aws: sns: us-east-1: 365928882516: Foo --message "Hello, world!"
В приведенном выше примере используется интерфейс командной строки, доступный для SNS. Этот интерфейс командной строки доступен по адресу: (Интерфейс командной строки Amazon Simple Notification Service Инструмент), и его документация находится здесь: (Интерфейс командной строки Amazon Simple Notification Service Документация). Однако сначала настройте его, как описано выше.
Он будет прост в настройке и надежен как камень в работе.
Обратите внимание, что в последней версии CLI, которая теперь объединяет сервисы AWS в один исполняемый файл, синтаксис немного изменился. Вышеупомянутая команда теперь будет:
$PROMPT> aws sns publish --topic-arn arn:aws:sns:us-east-1:365928882516:Foo --message "Hello, world!"
Также обратите внимание, что если вы не установили переменную среды AWS_DEFAULT_REGION (например, она не установлена по умолчанию в AMAZON Linux AMI), вам необходимо указать регион:
$PROMPT> aws --region us-east-1 sns publish --topic-arn arn:aws:sns:us-east-1:365928882516:Foo --message "Hello, world!"
Источник: Унифицированная документация Amazon CLI.
Если вы используете свой собственный почтовый сервер (на Centos), не забудьте снять ограничение на отправку электронной почты EC2!
http://aws.amazon.com/ec2/faqs/#Are_there_any_limitations_in_sending_email_from_EC2_instances
Я знаю, что это старая тема, но сегодня вы можете использовать SES как sendmail
http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sendmail.html