在处理 Google OpenID SSL 响应时,我在 Tornado 网络服务器中遇到了 gnutls 特定的错误。我从 Tornado 邮件列表中得到的建议之一是尝试使用 OpenSSL 后端而不是 gnutls。但它在 Ubuntu 服务器(11.10)上似乎并不简单。
在 Ubuntu 服务器上,gnutls由libcurl3-gnutls包提供,openssl curl 支持由libcurl4-openssl-dev包提供。(我不知道为什么后者被命名为4and dev,但我在 apt-cache 搜索中找不到任何其他 openssl+curl 包)。
我libcurl3-gnutls默认安装了,但没有安装libcurl4-openssl-dev。所以我安装了后者并重新启动了 Torando 实例。但这似乎不起作用。我仍然遇到相同的 gnutls 错误。
我在 curl 邮件列表上找到了关于支持 libcurl 不同 SSL 后端的问题的旧讨论,但没有找到今天是如何完成的。到目前为止,我的猜测是 openssl 内置于 libcurl 中,而 gnutls 是通过单独的包提供的(这将解释为什么没有 libcurl3-openssl)。但是我如何让 libcurl 选择 openssl 后端而不是 gnutls?libcurl/pycurl API 中是否有一些选项可以做到这一点?
我尝试卸载libcurl3-gnutls,但 apt-get 提示它也将随之删除python-pycurl。所以那不行。
我的公司最近设置了一个 Active Directory 驱动的 Microsoft Exchange 环境来整合外发邮件。我们确实有一组临时服务器,它们现在应该使用我们的 MSEXCHG 作为外发邮件的智能主机。
这些服务器位于 DMZ 中,这就是为什么在对 Exchange 2010 智能主机进行身份验证中获得投票的解决方案?不是替代方案,因为我们不能允许 DMZ 中的服务器随意通过我们的 Exchange 服务器发送邮件。
我们在 MSEXCHG 中所做的事情:
我们做过的事情exim4 (8):
update-exim4.conf (8)(cf exim4_files (5)) 我们将 exim 配置为exchange.contoso.com:587用作智能主机。exim4_files (5))我已经添加了以下行:exchange.contoso.com:stagingserver@activedirectory.contoso.com:secret123)使用上述配置启动 exim 后,我在mainlog 中收到以下两个 TLS 错误:
TLS error on connection to ex.contoso.com [192.168.1.8] (recv): A TLS packet with unexpected length was received.TLS error on connection …我正在使用 Debian 8 设置新服务器。 Exim4 已预装,我正在尝试使 TLS 正常工作。
我已将蛇油密钥和证书复制到 /etc/exim4 文件夹中并设置了正确的权限和所有权:
-r--r----- 1 root Debian-exim 1704 Sep 28 20:01 ssl-cert-snakeoil.key
-r--r----- 1 root Debian-exim 1257 Sep 28 20:01 ssl-cert-snakeoil.pem
Run Code Online (Sandbox Code Playgroud)
我已经在 Exim4 中配置了这些
然后我尝试从第二台服务器连接到 SMTP 并像这样启动 TLS:
root@second: ~# telnet mynewserver.net.au 25
Trying xxx.xxx.xxx.xxx...
Connected to mynewserver.net.au.
Escape character is '^]'.
220 mynewserver.net.au ESMTP Exim 4.84_2 Wed, 28 Sep 2016 20:12:12 +1000
ehlo second
250-mynewserver.net.au Hello second [xxx.xxx.xxx.xxx]
250-SIZE 52428800
250-8BITMIME
250-PIPELINING
250-STARTTLS
250 HELP
STARTTLS
454 TLS currently unavailable
Run Code Online (Sandbox Code Playgroud)
来自 …
我的进出口服务器显示以下错误:从 xxxx.xxxx.xxxx 连接的 TLS 错误。([127.0.0.1]) [xxx.xxx.xxx.xxx] (gnutls_handshake):收到 TLS 致命警报。
我使用的是普通身份验证,我的设置是:
plain_server:
driver = plaintext
public_name = PLAIN
server_condition = "${if crypteq{$auth3}{${extract{1}{:}{${lookup{$auth2}lsearch{CONFDIR/passwd}{$value}{*:*}}}}}{1}{0}}"
server_set_id = $auth2
server_prompts = :
.ifndef AUTH_SERVER_ALLOW_NOTLS_PASSWORDS
server_advertise_condition = ${if eq{$tls_cipher}{}{}{*}}
.endif
Run Code Online (Sandbox Code Playgroud)
期待任何帮助或指点
提前致谢