使用mutt做爲email客戶端

All mail clients suck.This one just sucks less.php

因爲mutt是一個有着unix哲學的程序,可定製性很強,其高級功能能夠由不一樣的程序來完成,好比如下搭配:html

  • mutt 使用mutt內建的imap,pop,smtp支持,最簡單的方式,只須要安裝mutt這一個軟件包。linux

  • mutt + msmtp 最簡單的組合,配合imap協議,能夠知足大多數人的要求 其中smtp功能由msmtp實現,你甚至能夠把imap功能也由其餘軟件來實現git

  • mutt + msmtp + getmail + procmail 稍微複雜一點的組合,mutt是客戶端,msmtp做爲mta,getmail用來收取郵件,procmail過濾郵件。 mta還可使用exim4或者postfix替代,通常使用msmtp就夠了,由於postfix實在是太好了,郵件服務器一般會選擇postfix。 msmtp可使用esmtp替代。 郵件收取功能也可使用fetchmail替代getmail,因爲須要本地mta投遞,因此同時須要procmail。 procmail是一個功能及其強大的郵件過濾系統。ps:看到這句話,你就應該明白,我顯然沒有使用它。。。github

因爲Gmail服務器端垃圾郵件過濾已經作得很好了,並且我使用的是imap協議,因此不須要getmail去收取郵件,目前也沒有必要本身再去配置procmail的過濾系統。 本文將對mutt + msmtp的配置進行說明ubuntu

安裝mutt和msmtp

通常發行版

mutt和msmtp已經包含在大多數發行版的軟件源裏,直接使用包管理器安裝,其餘發行版以此類推:緩存

$ sudo apt-get insatll mutt msmtp    #適用於debian系
$ sudo yum insatll mutt msmtp    #適用於red hat系

Gentoo Linux下安裝

$ echo "mail-client/mutt -berkdb gpg imap mbox nntp sasl sidebar slang smime smtp" >> /etc/portage/package.use    # 設置mutt的use flag
$ echo "mail-mta/msmtp sasl"    # 設置msmtp的use flag
$ emerge -av mutt msmtp    # 安裝mutt和msmtp

配置mutt

建立並編輯~/.muttrc

把username替換爲你的Gmail用戶名,passwd替換爲密碼bash

# 設置發信地址和用戶名
set from = "username@gmail.com"
set realname = "username"
set use_from = yes

# 設置Gmail賬戶和密碼
set imap_user = "username@gmail.com"
set imap_pass = "your password"

# 設置遠程服務器文件夾
set folder = "imaps://imap.gmail.com:993"
set spoolfile = "+INBOX"
mailboxes = +INBOX
set postponed = "+[Gmail]/Drafts"

# 容許mutt自動建立一個新的imap鏈接
unset imap_passive

# imap鏈接保持時間
set imap_keepalive = 300

# 檢查新郵件間隔時間
set mail_check = 120

# 本地緩存目錄
set header_cache = ~/.mutt/cache/headers
set message_cachedir = ~/.mutt/cache/bodies

# 設置TLS驗證
set certificate_file = /etc/ssl/certs/ca-certificates.crt

# 設置內建smtp,這裏咱們不使用
#set smtp_url = "smtps://username@gmail.com@smtp.gmail.com:465/"
#set smtp_pass = "your password"
#set ssl_starttls = yes

# 使用msmtp
set sendmail = "/usr/bin/msmtp"

# 不保存發送的郵件
unset record

# 回信不包含郵件頭
set header = no

# 退出提醒
set quit = ask-yes

# 回信包含原文
set include

# 設置回信引文以前的插入符號
set indent_str = "> "

# 設置郵件頭
my_hdr From: username@gmail.com

# 郵件打分
score "~N" +4
score "~s 通知" +2
score "~D" -5
score "~O" +1
score "~s believe" -10

# 排序方式
set sort = score

# 二級排序
set sort_aux = date

# 翻到最後一頁不回到第一頁
set pager_stop

# 快速回信
set fast_reply

# 刪除郵件自動移動光標
set resolve = yes

# 設置編碼,保持和終端一致
set charset = "utf-8"

# 發信使用的字符集
set send_charset = "us-ascii:iso-8859-1:gb18030:utf-8"

# 是否編輯郵件頭
set edit_headers = no

# pager顯示行數
set pager_index_lines = 4

# 告知mutt哪些是郵件列表
subscribe ustc_lug@googlegroups.com
subscribe shlug@googlegroups.com
subscribe gentoo-user@lists.gentoo.org

# 使用solarized配色方案
source ~/.mutt/mutt-colors-solarized/mutt-colors-solarized-dark-256.muttrc

編輯好後保存退出。服務器

修改~/.muttrc的權限less

$ chmod 700 ~/.muttrc

建立本地文件夾

$ mkdir -p ~/.mutt/cache

配置msmtp

建立或修改~/.msmtprc

# Accounts will inherit settings from this section
defaults
auth             on
tls              on
tls_trust_file   /usr/share/ca-certificates/mozilla/Thawte_Premium_Server_CA.crt
logfile ~/.mutt/msmtp.log

# Gmail account
account gmail
host smtp.gmail.com
port 465
from username@gmail.com
user username@gmail.com
password password
tls_starttls off
tls_trust_file /etc/ssl/certs/ca-certificates.crt

# set default account
account default : gmail

保存退出,並設置權限

$ chmod 600 ~/.msmtprc

配置mutt使用solarized配色方案

$ git clone https://github.com/altercation/mutt-colors-solarized.git ~/.mutt/mutt-colors-solarized

而後在~/.muttrc中修改相應配置

大功告成,終端啓動

$ mutt

如無例外你將看到:

注意事項

  • Gmail啓用了兩步驗證須要爲mutt設置應用專用密碼

參考網站

  1. 傻瓜式配置mutt|賴明星

  2. mutt使用指南-王垠

  3. 配置mutt作郵件客戶端

  4. Mutt-ArchWiki

  5. Mutt-Gentoowiki

  6. Mutt中文手冊

  7. 個人博客

相關文章
相關標籤/搜索