SSMTP—讓Linux系統從Office 365發送郵件

SSMTP如何工做linux

在正式安裝和配置以前,咱們先簡要介紹下 SSMTP 是如何工做的。SSMTP 能夠被安裝到任意 Linux 系統當中,一旦配置完成,全部來自 root、nobody 或其它應用程序發送的郵件均可以經過 SSMTP 進行轉發。咱們也能夠配置 PHP、Python,、Ruby 等應用程序的郵件都使用該程序進行轉發。簡而言之,你能夠將 SSMTP 理解爲 Linux 中的 Mailhub。vim

在 Mailhub 中能夠配置和指定 Gmail SMTP 服務器或 Microsof Office365 SMTP 服務器地址,一旦爲其指定好服務器和電子郵件地址,它即可以直接經過雲服務發送郵件。服務器

安裝SSMTP編輯器

SSMTP 安裝很是簡單,不少 Linux 源中都有提供,基於 RHEL 的 Linux 發行版(RHEL/CentOS/Fedora)可使用以下命令安裝:ide

yum install ssmtp

Ubuntu 和 Debian 服務器可使用以下命令安裝:post

sudo apt-get install ssmtp

安裝完成後全部配置文件都會寫入到/etc/ssmtp/目錄當中。測試

使用SSMTP替代sendmail/postfix加密

通常狀況下,不少 Linux 發行版都使用 Sendmail 或 Postfix 做爲默認了電子郵件系統,咱們之因此使用 SSMTP 就是爲了使用外部 SMTP 中繼,所以要將 SSMTP 配置爲系統默認,首先就得停用 sendmail 或 postfix 服務。server

systemctl stop sendmail
systemctl stop postfix

若是你使用較早版本 Linux,可使用以下命令停用服務:教程

service sendmail stop
service postfix stop

注意:還需中止 sendmail 或 postfix 服務隨系統啓動哦,最好仍是直接卸載掉吧。

配置SSMTP使用Office365郵件地址

使用 vim 或你喜歡的任意編輯器對 /etc/ssmtp/ssmtp.conf 文件進行編輯,咱們以 Office 365 的 SMTP 服務器爲例,若是你使用其它 SMTP 請自行按服務商的官方文檔進行修改:

root=admin@sysgeek.cn
mailhub=smtp.office365.com:587
AuthUser=admin@sysgeek.cn
AuthPass=XXXXX
UseTLS=YES
UseSTARTTLS=YES
FromLineOverride=YES
RewriteDomain:sysgeek.cn


配置文件修改並保存好以後咱們就能夠用上 Office 365 提供的可靠郵件服務了,如今先用以下命令先發個測試郵件來看看:

echo "This is a test e-mail" | mail -s "Test Email" XXXX@qq.com


若是你在發送測試郵件時遇到相似以下提示:

ssmtp: Cannot open mail.server.com:25

那是由於 ssmtp 默認會嘗試使用標準的 SMTP 25 端口去鏈接郵件服務器,若是你所使用的 SMTP 中繼像 Gmail 或 Office 365 這樣採用了 TLS 加密的非標準端口,還須要到 /etc/ssmtp/revaliases 配置文件中對發件人、服務器地址和端口進行指明:


免費提供最新Linux技術教程書籍,爲開源技術愛好者努力作得更多更好:http://www.linuxprobe.com/

相關文章
相關標籤/搜索