如何在 Bash 中通过 Amazon SES 发送电子邮件 ?

Amazon SES (Simple Email Service) 是一个流行的 SMTP 服务提供商,类似于 Sendgrid, Mailchimp 等。为了使用 SES,您需要注册一个 Amazon Web Services 帐户,SES 允许每天免费发送 2000 封邮件。

本文中,您将学习通过 Amazon SES 或其他 SMTP 提供商从 bash shell 发送电子邮件。

必备条件

  • 在本教程中,我们使用 SendEmail 命令行 SMTP 客户端发送电子邮件,您必须在系统上安装 SendMail
  • 您必须已验证电子邮件地址或在 Amazon SES 中有验证的域名。
  • Amazon SES 中 的所有新帐户都处于沙盒模式,需要提交一个请求将 SES 帐号切换到生产模式。

Sending Emails via SMTP

以下是一个使用 SendEmail SMTP 客户端通过远程 SMTP 服务器发送电子邮件的 shell 脚本,可以替换为任何流行的 SMTP 提供商,如 Sendgrid、Amazon SES 和 Mailchimp 等。

复制代码
#!/usr/bin/env bash

## SMTP configuration details

SMTP_HOST="email-smtp.us-east-1.amazonaws.com"
SMTP_PORT="587"
SMTP_USER="XXXXXXXXXXXXXXX"
SMTP_PASS="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
EMAIL_FROM="notification@example.com"
EMAIL_TO="your-email@example.com"

SUBJECT="WARNING: Github Public Repo Found"

## Sending email

cat Mailcontent.txt | sendemail -l /tmp/email.log
-f ${EMAIL_FROM}
-u ${SUBJECT}
-t ${EMAIL_TO}
-s ${SMTP_HOST}:${SMTP_PORT}
-o tls=yes
-xu ${SMTP_USER}
-xp ${SMTP_PASS}

在上述脚本中,Mailcontent.txt 文件包含邮件正文内容。

我的开源项目

相关推荐
石山代码7 小时前
java 反射
java·开发语言·tomcat
无限进步_7 小时前
【Linux】进度条:行缓冲区、\r 与 fflush 的实战
linux·服务器·开发语言·数据结构·后端
Evand J7 小时前
【MATLAB程序】基于σ修正自适应律的多无人机菱形编队控制仿真,附下载链接
开发语言·matlab·无人机·控制·编队飞行·多uav
risc1234567 小时前
【Lucene】理解不是看见光,而是让眼睛适应黑暗
java·开发语言
枕星而眠7 小时前
C++面向对象核心:类间关系与继承深度解析
运维·开发语言·c++·后端
秋越7 小时前
从工程角度理解嵌入式C语言关键字
c语言·开发语言·嵌入式·嵌入式软件开发·嵌入式c语言·c语言关键字
FBI HackerHarry浩7 小时前
在Python中TCP网络程序开发的步骤流程
运维·服务器·开发语言·网络·python·pycharm
方也_arkling7 小时前
【Java-Day16】API篇-Math类/System类/Object类/包装类
java·开发语言
x***r1517 小时前
burpsuite-1.4.07.jar 使用步骤详解(附Java环境配置与Burp Suite抓包教程)
java·开发语言·jar
Cosmoshhhyyy8 小时前
《Effective Java》解读第54条:返回零长度的数组或者集合,而不是null
java·开发语言·python