【问题标题】:openssl only works on certain portsopenssl 仅适用于某些端口
【发布时间】:2023-03-31 06:57:01
【问题描述】:

我正在尝试使用 imap 从我的网络服务器连接到 gmail 服务器,该服务器在端口 443 上有 ssl。它返回一个“无法连接”错误,但经过长时间的等待(不确定如何)。 我一直在使用 openssl 进行测试,并确定问题出在端口上。 在我的邮件服务器上,我可以毫无问题地运行以下命令。

openssl s_client -connect imap.gmail.com:993

当我在我的网络服务器上运行它时,连接被拒绝。如果我把它改成

openssl s_client -connect imap.gmail.com:443

因为我的 ssl 证书设置在端口 443 上,所以它工作正常。

反正我可以在端口 993 上连接吗?

【问题讨论】:

    标签: ssl gmail-imap


    【解决方案1】:

    在您运行 SSL 客户端的系统上,哪些端口对外开放并不重要。重要的是从内部打开哪些端口,即您可以连接到哪里。

    在您的情况下,似乎有一个防火墙允许端口 443 上的传入连接到您的服务器,允许从您的服务器到某些外部系统端口 443 的传出连接,但限制从您的服务器访问外部系统端口 993。这意味着您可以从服务器访问 https://imap.gmail.com(端口 443)但不能访问 imaps://imap.gmail.com(端口 993)。

    如果您有权访问防火墙并且可以更改其规则,那么您可以添加适当的规则/例外。如果您没有此类访问权限,则必须要求负责系统的管理员执行此操作。如果他们不想这样做(出于安全原因),您将无法从服务器直接访问 imap.gmail.com 端口 993。

    【讨论】:

    • 谢谢史蒂芬。我确实可以访问防火墙并打开了传出端口。当我运行openssl s_client -connect x.x.x.x:993 -dtls1 -debug 时,我得到write:errno=111 --- no peer certificate available --- No client certificate CA names sent --- SSL handshake has read 0 bytes and written 115 bytes Verification: OK --- New, (NONE), Cipher is (NONE) Secure Renegotiation IS NOT supported Compression: NONE Expansion: NONE No ALPN negotiated
    • "SSL 握手已读取 0 个字节" - 这意味着 TCP 连接现在成功(以前没有)但是服务器或(更有可能)一些深度检查中间盒(防火墙)不喜欢访问并阻止它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-24
    • 2018-11-09
    • 2012-10-30
    • 2020-10-21
    相关资源
    最近更新 更多