Sky*_*awk 73 security exchange-2007 windows-server-2008 certificate tls
我们有一台运行在 Windows Server 2008 上的 Exchange 2007 服务器。我们的客户端使用另一个供应商的邮件服务器。他们的安全政策要求我们使用强制 TLS。直到最近,这都运行良好。
现在,当 Exchange 尝试将邮件传送到客户端的服务器时,它会记录以下内容:
无法在连接器“默认外部邮件”上建立到域安全域“ourclient.com”的安全连接,因为对 ourclient.com 的传输层安全性 (TLS) 证书的验证失败,状态为“UntrustedRoot”。联系 ourclient.com 的管理员解决问题,或从域安全列表中删除域。
从 TLSSendDomainSecureList 中删除 ourclient.com 会导致使用机会性 TLS 成功传递消息,但这充其量只是一种临时解决方法。
客户是一家非常大的、对安全敏感的国际公司。我们的 IT 联系人声称不知道他们的 TLS 证书有任何变化。我曾多次要求他确定生成证书的机构,以便我对验证错误进行故障排除,但到目前为止他一直无法提供答案。据我所知,我们的客户可以用来自内部证书颁发机构的证书替换他们的有效 TLS 证书。
有谁知道手动检查远程 SMTP 服务器的 TLS 证书的方法,就像在 Web 浏览器中检查远程 HTTPS 服务器的证书一样?确定谁颁发了证书并将该信息与我们的 Exchange 服务器上的受信任根证书列表进行比较可能会非常有帮助。
Dan*_*tta 126
您可以使用 OpenSSL。如果您必须使用 来检查证书STARTTLS,则只需执行
openssl s_client -connect mail.example.com:25 -starttls smtp
Run Code Online (Sandbox Code Playgroud)
或者对于标准的安全 smtp 端口:
openssl s_client -connect mail.example.com:465
Run Code Online (Sandbox Code Playgroud)
小智 10
我知道这是一个老问题,但即使在今天,对于希望确认其电子邮件服务器上的 SSL 证书有效性的管理员来说,这仍然是一个相关问题。
您可以访问https://www.checktls.com并免费运行测试。
如果您没有 OpenSSL,也可以使用以下 Python 代码片段:
import smtplib
import ssl
connection = smtplib.SMTP()
connection.connect('[hostname].')
connection.starttls()
print ssl.DER_cert_to_PEM_cert(connection.sock.getpeercert(binary_form=True))
Run Code Online (Sandbox Code Playgroud)
其中 [主机名] 是服务器。
来源: https: //support.google.com/a/answer/6180220
这将为您提取 OpenSSL 库,这使安装变得更加容易。
| 归档时间: |
|
| 查看次数: |
121995 次 |
| 最近记录: |