Ⅰ linux下安裝使用Mutt郵件客戶端並配置郵件警報功能
0、在正式安裝Mutt之前
先檢查一下兩個安全組件。
OPENSSL:
復制代碼
代碼如下:
openssl version -a #檢查安裝及版本信息SASL(系統一般已經自帶):
復制代碼
代碼如下:
rpm -qa | grep sasl查詢到如下即可:
cyrus-sasl-gssapi-2.1.23-15.el6_6.2.x86_64
cyrus-sasl-devel-2.1.23-15.el6_6.2.x86_64
cyrus-sasl-lib-2.1.23-15.el6_6.2.x86_64
cyrus-sasl-plain-2.1.23-15.el6_6.2.x86_64
cyrus-sasl-2.1.23-15.el6_6.2.x86_64
如果sasl沒有運行,先啟動:
復制代碼
代碼如下:
/etc/init.d/saslauthd start最好是加入到自啟動項目中去:
復制代碼
代碼如下:
chkconfig saslauthd on因為發送郵件的時候會需要用到安全認證。
1、安裝
官方網站上下載最新版本。
復制代碼
代碼如下:
# 解壓後進入mutt目錄PS: 因為我用的測試帳號是QQ郵件,qq郵件使用smtp協議的時候要求必須使用ssl安全連接,而在mutt里使用安全連接又必須使用sasl加密,所以上述2個安全組件在編譯安裝的時候得加上。要不然發送郵件的時候會出現SMTP authentication requires SASL或者另外一個跟ssl有關的錯誤。
復制代碼
代碼如下:
# 安裝2、Mutt的基本用法
使用Mutt發郵件極其方便,是一個文字模式的郵件管理程序,提供了全屏幕的操作界面。只需要一條命令即可發送或者批量發送郵件:
復制代碼
代碼如下:
mutt [-hnpRvxz][-a文件][-b地址][-c地址][-f郵件文件][-F配置文件][-H郵件草稿][-i文件][-m類型][-s主題][郵件地址]這里來詳細說一下參數:
-a文件 在郵件中加上附加文件。
-b地址 指定密件副本的收信人地址。
-c地址 指定副本的收信人地址。
-f郵件文件 指定要載入的郵件文件。
-F配置文件 指定mutt程序的設置文件,而不讀取預設的.muttrc文件。
-h 顯示幫助。
-H郵件草稿 將指定的郵件草稿送出。
-i文件 將指定文件插入郵件內文中。
-m類型 指定預設的郵件信箱類型。
-n 不要去讀取程序培植文件(/etc/Muttrc)。
-p 在mutt中編輯完郵件後,而不想將郵件立即送出,可將該郵件暫緩寄出。
-R 以只讀的方式開啟郵件文件。
-s主題 指定郵件的主題。
-v 顯示mutt的版本信息以及當初編譯此文件時所給予的參數。
-x 模擬mailx的編輯方式。
-z 與-f參數一並使用時,若郵件文件中沒有郵件即不啟動mutt。
掌握了這些基本上就能基礎地使用Mutt,夠方便吧~接下來就要介紹本文的主題、使用其郵件警報功能:
3、配置郵件警報功能
方法1:
安裝好後,拷貝一份安裝目錄下/usr/local/mutt/etc/的配置文件Muttrc到/root/.muttrc,也可以直接修改配置文件,設置讀取的配置文件路徑到安全目錄,這樣就無需拷貝了。
默認設置:
復制代碼
代碼如下:
set alias_file="~/.muttrc"方法2:
復制代碼
代碼如下:
cat /usr/local/mutt/etc/Muttrc | grep -v ^# | grep -v ^$ ~/.muttrc這樣都可以得到默認的配置文件信息。
安裝完成後,我們僅需要設置的信息如下:
復制代碼
代碼如下:
set folder="./Mail" #設置本地的收件箱,如果不設置發送郵件的時候會提示4、測試
mutt-1.6版本的發送郵件的語法跟1.4版本有些微的差別,具體命令如下:
mutt -s Title使用 -a /usr/local/mutt/content.txt -- [email protected] /root/1
說明
-s 郵件標題
-a 附件
-- 後面跟上收件人信息
後面是郵件正文內容,也可以在前面echo xxx的形式給出。如下:
復制代碼
代碼如下:
echo xxx|mutt -s "Title使用" -a /usr/local/mutt/content.txt -- [email protected]看吧,無需與其它軟體合作,mutt就可以獨立完成發送郵件,當然,接收也沒問題,只是在郵件報警這個需求上用不著。
其中一個錯誤信息:
復制代碼
代碼如下:
[root@x63 mutt]# echo "Hello" | mutt -s "Title" -- [email protected]TLSv1.2 connection using TLSv1/SSLv3 (AES256-SHA256)
SMTP authentication requires SASL
Could not send the message.
這是認證失敗了。
發送成功的信息:
復制代碼
代碼如下:
[root@x63 mutt]# echo "Hello3" | mutt -s "Title" -- [email protected]TLSv1.2 connection using TLSv1/SSLv3 (AES256-SHA256)
Ⅱ java在linux下調用smtp協議發送郵件
你只是發郵件不是做郵件伺服器吧?這樣的話 在linux和window沒有區別....不然java都不好意思說自己是跨平台的了
JAVA郵件發送的大致過程是這樣的的:
1、構建一個繼承自javax.mail.Authenticator的具體類,並重寫裡面的getPasswordAuthentication()方法。此類是用作登錄校驗的,以確保你對該郵箱有發送郵件的權利。
2、構建一個properties文件,該文件中存放SMTP伺服器地址等參數。
3、通過構建的properties文件和javax.mail.Authenticator具體類來創建一個javax.mail.Session。Session的創建,就相當於登錄郵箱一樣。剩下的自然就是新建郵件。
4、構建郵件內容,一般是javax.mail.internet.MimeMessage對象,並指定發送人,收信人,主題,內容等等。
5、使用javax.mail.Transport工具類發送郵件。
參考地址http://www.cnblogs.com/codeplus/archive/2011/10/30/2229391.html