1. 程式人生 > >使用阿里雲伺服器傳送郵件

使用阿里雲伺服器傳送郵件

今天在線上配置資料庫服務,在本機測試的時候寫了一個當檢測到MySQL宕機的時候會發送一封郵件到指定的賬戶提醒,部署到阿里雲之後其他一切正常,就是郵件傳送不成功,折騰了我一天

原來是因為國家政策,為了防止瘋狂傳送垃圾郵件,阿里雲關閉了25埠(安全組無法開啟25埠),而我在本機測試的時候是直接使用Linux自帶的傳送郵件功能,指令如下:

echo "`date` mysql is stop" | mail -s "mysql is stop"    [email protected]

上述指令將向[email protected]郵箱傳送一封標題為“mysql is stop”,內容為“系統時間+ mysql is stop”的郵件,發件人沒有設定,也能傳送成功,但在許多郵箱中將被識別為垃圾郵件,需要在垃圾郵件箱中查詢

但這在阿里雲伺服器上是不成功的,指令雖然不會報錯,但是阿里雲不會發送郵件,因為25埠是被關的。

於是尋思著那就用外部郵箱伺服器傳送郵件唄,上網搜了一通,全都失敗,最接近成功的是下面這個教程:

然後就矇蔽了,折騰了好久都沒找到原因,後來經過高人指點,說要獲得ssl證書通過465埠阿里雲伺服器才能通過外部郵箱伺服器傳送郵件,過程如下:

1.關閉其他的郵件工具

service sendmail stop

chkconfig sendmail off

service postfix stop

chkconfig postfix off

2.安裝mailx(我在之前已經安裝過了,所以這步我沒做)

yum install mailx

3.在郵箱中開啟smtp,開啟後會得到一個授權碼,這個授權碼就代替了密碼(具體操作參考上面提到的最接近成功的教程)

4.請求數字證書(這裡用qq郵箱,所以向qq請求證書)

mkdir -p /root/.certs/       

echo -n | openssl s_client -connect smtp.qq.com:465 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/qq.crt

certutil -A -n "GeoTrust SSL CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt

certutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt

certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d ~/.certs/./ -i qq.crt

certutil -L -d /root/.certs

注意:執行上述語句的時候會報錯,說qq.crt沒有可執行許可權,具體在哪一步忘記了,遇到了賦予許可權就好,我是直接給了可讀可寫可執行的許可權,指令:     chmod 777 qq.crt   需要先cd到/root/.certs/ 目錄

5.配置/etc/mail.rc

set [email protected] #設定傳送郵件方

set smtp=smtps://smtp.qq.com:465 #郵件伺服器

set [email protected] #使用者名稱

set smtp-auth-password=xxxxxxxxxxx #授權碼

set smtp-auth=login #預設login

set ssl-verify=ignore #ssl認證方式

set nss-config-dir=/root/.certs #證書所在目錄

6.測試傳送郵件指令

echo "`date` mysql is stop" | mail -s "mysql is stop"    [email protected]

成功接受到郵件

相關推薦

Python用 smtplib在阿里伺服器傳送郵件(1ni)

差點被這個郵件搞哭了,坑真的太多了!!!1.要記得開啟163郵箱的服務具體方法 設定=》左下角的客戶端授權密碼(那時候就要開啟了,會讓你輸入密碼,這個密碼不能和登入的密碼相同程式碼裡也是這個客戶端密碼,不是登入密碼)2.你的IP可能被禁了!!!一開始試了很多的程式碼,都是報錯

使用阿里伺服器傳送郵件

今天在線上配置資料庫服務,在本機測試的時候寫了一個當檢測到MySQL宕機的時候會發送一封郵件到指定的賬戶提醒,部署到阿里雲之後其他一切正常,就是郵件傳送不成功,折騰了我一天 原來是因為國家政策,為了防止瘋狂傳送垃圾郵件,阿里雲關閉了25埠(安全組無法開啟25埠),而我在本機

阿里伺服器傳送郵件(一)

一、設定mailx及sendmail軟體 sendmail 進行傳送郵件的應用服務; mailx採用指令mail進行傳送郵件的編輯,通過sendmail進行傳送; 1、 檢查服務狀況 service sendmail status 問題:沒有結果的話,則重新安裝

使用阿里郵箱傳送郵件

程式碼部分 /** * 傳送郵件 (阿里雲郵箱企業版) * * @param fromEmail * 傳送郵箱 * @param toEmail * 接收郵箱 * @pa

阿里傳送郵件

手動安裝在解壓的檔案中可以找到 aliyun-java-sdk-dm-3.0.0-rc1.jar 和 aliyun-java-sdk-core-3.0.0.jar 包。以 Eclipse 匯入 JAR

Javamail配置阿里郵箱傳送郵件

前言:前面已經介紹過使用163郵箱傳送郵件啟用賬號的例子了,本來想著應該千篇一律的,但是這裡使用阿里郵箱傳送郵件略有不同,更改配置之後總是報錯,所以這裡記錄一下,為以後再次搭建方便,同時如果遇到同樣問題的你看到這篇部落格解決了,那就更好了。先了解一下基本的配置元素的概念:什麼

阿里伺服器用SMTP的25號埠傳送郵件問題

這幾天自己閒著沒事就用阿里雲伺服器部署了一個專案,這個專案中包含了一個傳送郵件到我的郵箱的功能出錯了,這個功能在我的電腦上用本地伺服器沒有問題,但是部署到阿里雲的Centos伺服器上這個功能出了問題,阿里雲伺服器傳送郵件是報出超時的錯誤: 主要原因如下: 我的傳送郵件功能是用傳統

阿里伺服器郵件傳送

一個郵件傳送的功能,本機除錯無問題,但釋出到阿里雲伺服器後郵件傳送功能失敗。 網上查了下大概是說阿里雲把傳送郵件的25埠禁用掉了 那麼解決方式一就是向阿里雲申請開放25埠,但具體如何申請,並未深入操作。 解決方式二:使用郵件服務商的加密埠。 但是當使用465埠時,先後試驗過smtp.mxhichi

解決專案部署到阿里伺服器郵件傳送失敗的方法

阿里雲伺服器禁用了25埠,所以改為465埠採用SSL協議傳輸郵件 163網易免費郵箱相關伺服器資訊: public static String sendEmail(String emai

阿里伺服器上用465埠傳送郵件

第一步:安裝mailx郵箱伺服器 yum -y install mailx 第二步:在mailx配置檔案裡新增使用者名稱,密碼。mailx的配置檔案是/etc/mail.rc這個檔案。 set ssl-verify=ignore #

阿里伺服器使用shell傳送郵件

事情的起因是為了對伺服器上的應用做一個監控預警。網上看了一堆shell發郵件的方案,文章內容大同小異,並沒有解決我的實質問題。參考:https://blog.csdn.net/just_shunjian/article/details/78677054操作物件Ubuntu 1

阿里伺服器 discuz不能發郵件

阿里雲伺服器現在不能通過25埠發郵件【推薦閱讀:阿里雲伺服器不能發郵件(二)】,即不通過php函式的方式發郵件,很多人都有這個問題 今天幫一兄弟解決阿里雲伺服器discuz不能發郵件的問題,之前也有人找我幫忙解決,現在把解決思路寫出來 discuz 的smtp是通過p

Java呼叫阿里SMTP伺服器實現郵件傳送

        // 構建授權資訊,用於進行SMTP進行身份驗證         Authenticator authenticator = new Authenticator() {             @Override             protected PasswordAuthentica

阿里伺服器不能發郵件問題解決方案

 這兩天用PHPMailer寫了個傳送郵件功能,在本地測試可以傳送郵件,但是放到阿里雲伺服器缺傳送不了,報錯提示是 SMTP connect() failed ,連線不到郵件伺服器,查了很久試過很多辦法都解決不了,最終換了個埠試試終於成功了。1.阿里雲禁用了25埠,要使用ss

阿里伺服器拼團活動

阿里雲雙十一伺服器拼團活動已於2018年10月29日開始,結束於2018年11月12日 ,在這個時間段內只要參於阿里雲雙十一活動拼團,就可以最低的價格拼到阿里雲伺服器。 阿里雲雙十一拼團地址開啟 阿里雲雙十一拼團,只能是新使用者參與拼團,老使用者不能參與拼團。就是以前沒有在阿里雲購買過伺服器的新使用者參與

navicat 連結阿里伺服器資料庫報80070007 的錯誤

navicat用ssh跳轉登入mysql連線時報:   80070007: SSH Tunnel: Server does not support diffie-hellman-group1-sha1 for keyexchange 是由於ssh 配置缺少KexAlgorithms與Ciphe

記錄阿里伺服器mysql被黑

前言 比上次伺服器被黑還要恐怖的資料庫被黑,再次強調,資料庫不備份不做安全,你就可以準備跑路了。 這次記錄一下整個被黑的過程,以及整個檢查和處理的過程。 發現 上個月某一天,網站出現了無法登入的情況,出現了大量的錯誤日誌報警,然後就牛逼了,上伺服器一查發現數據庫裡面就剩了一個名叫PLEASE_READ的

Xshell連線阿里伺服器ECS

1. 參考資料:    1). 《阿里雲伺服器怎麼用?阿里雲伺服器使用教程》        連結:http://www.cr173.com/html/50758_1.html     2). eagle-zhan

阿里伺服器上部署tomcat,並進行訪問測試

    要求將一個專案部署到新買的阿里雲伺服器上。使用xshell遠端連線(連線使用的ip是例項的公網ip)。     在部署配置tomcat之前首先進行JDK的部署,先說明一下,我使用的CentOS7.4.     選擇JDK1.

阿里伺服器搭配寶塔面板進行幾個優化設定來提升效能

使用阿里雲伺服器ECS的朋友很多,可是你知道阿里雲伺服器怎麼樣可以更好的提升效能和速度嗎?今天我要給大家分享的就是如何通過寶塔面板的幾個優化設定來提升阿里雲伺服器ECS效能,或者不能說提升,應該說更好的利用和發揮雲伺服器的效能。如果你還不知道什麼是寶塔面板,可以看下本博前面的文章《[阿里雲伺服器設定教程:安裝