我执行了命令Quassel 文档在文件 > 网络 > 配置网络中,单击 irc.ubuntu.com:8001 的“编辑...”,并选中“使用 SSL”(无代理,“高级”选项卡中的内容未发生任何改变)。
连接失败:SSL 握手期间出错:错误:1408F10B:SSL 例程:ssl3_get_record:错误版本号
我在“设置”>“配置 Quassel...”>“IRC”>“身份”>“高级”>“使用 SSL 证书”中找到了加载证书的部分:这不是我们应该指定上面创建的根 CA 的地方吗?但是当我单击“加载”时,我没有看到指定 .config 文件夹的方法,该文件夹显然是隐藏的。我该怎么做?
执行命令的终端输出openssl
:
$ openssl req -x509 -nodes -days 365 -newkey rsa:4096 -keyout ~/.config/quassel-irc.org/quasselCert.pem -out ~/.config/quassel-irc.org/quasselCert.pem
Generating a 4096 bit RSA private key
.........................................++++
...................................................................................++++
writing new private key to '/home/username/.config/quassel-irc.org/quasselCert.pem'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:[answered]
State or Province Name (full name) [Some-State]:[answered]
Locality Name (eg, city) []:[answered]
Organization Name (eg, company) [Internet Widgits Pty Ltd]:.
Organizational Unit Name (eg, section) []:.
Common Name (e.g. server FQDN or YOUR name) []:.
Email Address []:[answered]
答案1
你有点想得太多了。
如果你看看SSL 握手,您会发现第一步是客户端发送其版本信息,然后服务器响应其版本。请注意,这还不包括证书。
归根结底,问题在于您尝试连接的版本号是错误的,因为根本没有版本号,因为那里根本没有 SSL 支持。Freenode的连接说明明确指出 8001 不是 SSL 的正确端口。事实上,他们说了两次:
您可以通过将您的 IRC 客户端指向 chat.freenode.net 上的端口 6665-6667 和 8000-8002 来连接到 freenode,以进行纯文本连接,或指向端口 6697、7000 和 7070 来连接到 freenode,以进行 SSL 加密连接。
和
freenode 在所有服务器的端口 6697、7000 和 7070 上提供 SSL 客户端访问。
特别注意,在第一个中,它说 8000-8002 是纯文本(读取:非加密,因此非 SSL)连接。
因此解决方案是用 6697、7000 或 7070 之一替换 8001。