我在Quassel 文档中执行了命令,在文件 > 网络 > 配置网络中单击 irc.ubuntu.com:8001 的“编辑...”并选中“使用 SSL”(没有代理,高级选项卡中没有任何内容被更改)。
连接失败:SSL 握手期间出错:error:1408F10B:SSL routines:ssl3_get_record:wrong version number
我在 Settings > Configure Quassel... > IRC > Identities > Advanced > Use SSL Certificate 中找到了加载证书的部分:这不是我们应该指定上面创建的根 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]
你在那儿有点超前了。
如果您查看SSL 握手,您会发现第一步是客户端发送有关其版本的信息,然后是服务器响应其版本。请注意,这是在涉及证书之前。
归根结底,问题在于您尝试连接版本号错误的位置,因为没有版本号,因为那里根本没有 SSL 支持。Freenode 的连接说明明确指出 8001 不是 SSL 的正确端口。事实上,他们说了两次:
和
请特别注意,在两者中的第一个中,它说 8000-8002 用于纯文本(阅读:非加密,因此非 SSL)连接。
因此解决方案是将 8001 替换为 6697、7000 或 7070 之一。