通过 SSL 连接到 ZNC

Connecting to ZNC over SSL

我尝试通过 SSL 设置 ERC > ZNC 连接。无 SSL 连接工作正常。问题是当我尝试通过 erc-tls 命令使用 Erc 进行连接时,没有任何反应,“正在打开连接..”消息永远存在。

ZNC 配置:

AnonIPLimit = 10
ConnectDelay = 5
ProtectWebSessions = true
ServerThrottle = 30
Skin = _default_
StatusPrefix = *
SSLCiphers = EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH
SSLProtocols = -SSLv2 -SSLv3 -TLSv1 +TLSv1.1 +TLSv1.2
Version = 1.7.2

<Listener l>
    IPv4 = true
    IPv6 = false
    SSL = true
    AllowIRC = true
    AllowWeb = false
</Listener>
...

Emacs 配置:

  (setq tls-program
    '("gnutls-cli --x509cafile %t -p %p %h"
      "gnutls-cli --x509cafile %t -p %p %h --protocols ssl3"
      "gnutls-cli --priority secure256 -p %p %h"))

我通过 ERC 连接:(erc-tls :server "server.domain" :port 55555 :nick "znc-nick" :password "znc-nick/freenode:znc-password")

有什么想法吗?

问题已解决。该问题是由 Emacs 中过于严格的网络配置文件引起的,该配置文件不允许传入的自签名证书。为了解决这个问题,并保持当前设置不变,我创建了 运行 启动 ERC 会话的函数。我使用 ZNC 包连接 ZNC 服务器。

  (defun my/znc-all ()
    "Connect to all ZNC networks. Accept incoming self signed certificates."
    (interactive)
    (let ((tls-checktrust nil)
           (gnutls-verify-error nil))
      (znc-all)))