我最终使用Heirloom mailx设置了Comodo S / MIME证书。使用Thunderbird进行测试我能够接收已签名(甚至加密)的消息,而不会出现任何错误或警告。但是,如果我使用Heirloom mailx作为接收客户端,我会得到以下内容:
? verif
Message 1: Error with certificate at depth: 0
issuer = /C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO Client Authentication and Secure Email CA
subject = /emailAddress=user@example.com
err 20: unable to get local issuer certificate
Error verifying message 1: error:21075075:PKCS7 routines:PKCS7_verify:certificate verify error
有什么想法吗?还有一件事:当我从Thunderbird向mailx发送相同的签名邮件时,此错误不存在,仅从mailx发送到mailx(相同/不同的计算机)。
谢谢!
编辑:以防万一,这是我的.mailrc
文件:
set from=user@example.com
set smime-sign-cert=/home/user/cert.pem
set smime-sign
答案 0 :(得分:2)
您获得的错误 - unable to find local issuer certiicate
- 通常意味着底层OpenSSL库找不到用于签署S / MIME证书的证书颁发机构证书。值得注意的是,Thunderbird拥有自己的有效证书颁发机构列表,可能比本地系统默认情况下更全面。
smime-ca-dir
和smime-ca-file
指令可用于将mailx
指向适当的CA证书。