Mailx和Gmail的nssconfiguration目录

我正尝试使用mailx命令从Linux命令行发送邮件。 我可以从我的本地域发送没有问题,但我想设置邮件从我的Gmail帐户发送,并接收邮件发送到我的Gmail帐户。

在configuration我的mail.rc之后,像这样:

account gmail { set smtp=smtps://smtp.gmail.com:587 set smtp-auth=login set smtp-auth-user=USERNAME@gmail.com 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-config-dir”之后,我find了certN.db和keyN.db文件,并将其添加到我的mail.rc中,如下所示:

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

现在当我尝试使用这个命令发送邮件时:

 echo "sent from gmail account" | mailx -v -A gmail -s "Command line mail" SomeEmail@domain.com 

我得到这个:

 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可能 – 不知道这是否是一个选项,还没有看过?)

任何帮助将超级赞赏。

谢谢你,这给了我一个更好的解决方案。 据推测,这些keyN.dbcertN.db是可信认证机构的数据库。

我做了一个简单的

 find / -name "cert*.db" 

在我的系统上找到我的系统上的keyN.dbcertN.db文件(Fedora 20)。
我在/etc/pki/nssdb/下找到它们。

解决了!

有两种方法可以解决这个问题。

  1. 去这里,并按照用户和用户的答案。 它将同时创建您需要的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 smtp-auth-user=USERNAME@gmail.com set smtp-auth-password=PASSWORD set ssl-verify=ignore set nss-config-dir=/etc/ssl/cert } 

如果你不是root用户,请确保你有权限访问这些文件,这让我很忙。