2013-05-28 183 views
14

我想從使用mailx命令的Linux命令行發送郵件。我可以從我的本地域發送沒有問題,但我想設置郵件從我的Gmail帳戶發送,並接收發送到我的Gmail帳戶的郵件。Mailx和Gmail的nss配置目錄

配置我的mail.rc像這樣經過:

account gmail { 
set smtp=smtps://smtp.gmail.com:587 
set smtp-auth=login 
set [email protected] 
set smtp-auth-password=PASSWORD 
set ssl-verify=ignore 
} 

我會得到錯誤:

Resolving host smtp.gmail.com . . . done. 
Connecting to 74.125.25.109 . . . connected. 
Missing "nss-config-dir" variable. 
"/home/USERNAME/dead.letter" 11/354 
. . . message not sent. 

查找什麼 「NSS-配置-DIR」 是here後,我所在certN.db和keyN.db文件並將其添加到我的mail.rc中,如下所示:

account gmail { 
set smtp=smtps://smtp.gmail.com:587 
set smtp-auth=login 
set [email protected] 
set smtp-auth-password=PASSWORD 
set ssl-verify=ignore 
set nss-config-dir=/home/USER/.mozilla/firefox/LOCATION.default 
} 

現在當我嘗試se次使用此命令的郵件:

echo "sent from gmail account" | mailx -v -A gmail -s "Command line mail" [email protected] 

我得到這個:

Resolving host smtp.gmail.com . . . done. 
Connecting to 74.125.25.108 . . . connected. 
COMMENT-->then it waits there for about 5 mins then spits out this: 
SSL/TLS handshake failed: Unknown error -5938. 
"/home/USER/dead.letter" 11/354 
. . . message not sent. 

有誰知道如何可以:
A)設置的mailx/mail.rc訪問Gmail,但忽略了需要NSS -config-dir BS?
B)設置mailx/mail.rc,以便nss-config-dir實際工作?
C)設置的mailx/mail.rc訪問Gmail以另一種方式(POP也許 - 別知道這是一種選擇,還沒有研究它?)

任何幫助將是非常讚賞。

回答

10

非常感謝您給我提供了一種更好的解決方案。 假設這些keyN.dbcertN.db是可信認證機構的數據庫。

我做了一個簡單的

find/-name "cert*.db" 

尋找到我的系統上有我的系統(Fedora的20)在keyN.dbcertN.db文件 。
我發現它們在/etc/pki/nssdb/下。

8

解決了!

有兩種方法可以解決這個問題。

  1. 走了過來here,並按照用戶ndasusers答案。它將同時創建您需要的keyN.dbcertN.db文件,而且還會創建另一個可以解決另一個潛在問題的GMail SSL證書。
  2. 或者,你可以在keyN.dbcertN.db複製到一個文件夾(/etc/ssl/cert maybe)和直接mail.rc有像這樣:

    account gmail { 
        set smtp=smtps://smtp.gmail.com:587 
        set smtp-auth=login 
        set [email protected] 
        set smtp-auth-password=PASSWORD 
        set ssl-verify=ignore 
        set nss-config-dir=/etc/ssl/cert 
    } 
    

請確保您有權限訪問這些文件,如果你不root用戶,這讓我很興奮。

+4

nss的目錄是'/ etc/pki/nssdb /'。這也可以用來指向'nss-config-dir'。 –

+1

+1 to @k_o_。對於CentOS用戶,您應該使用/ etc/pki/nssdb,因爲/ etc/pki是任何證書相關的默認位置,並且包含一個nssdb目錄。 –