【发布时间】:2022-12-18 07:42:50
【问题描述】:
我正在使用 freeradius v.3.0.26 并配置了 eap 模块,用于 eap-tls 身份验证。
我安装了包 eapol_test 来检查是否一切正常。
一切看起来都很好,但是如果我在我的 eap 配置文件中使用 tls1.3 (mods-enabled/eap):
tls_min_version = "1.3"
tls_max_version = "1.3"
服务器返回一条错误消息...
客户端尝试通过 tls 1.3 连接,但服务器发回“TLS 1.2 警报,致命协议版本”:
Sun Dec 11 15:23:20 2022 : Debug: (1) eap_tls: (TLS) recv TLS 1.3 Handshake, ClientHello
Sun Dec 11 15:23:20 2022 : Debug: (1) eap_tls: (TLS) send TLS 1.2 Alert, fatal protocol_version
Sun Dec 11 15:23:20 2022 : ERROR: (1) eap_tls: (TLS) Alert write:fatal:protocol version
Sun Dec 11 15:23:20 2022 : ERROR: (1) eap_tls: (TLS) Server : Error in error
Sun Dec 11 15:23:20 2022 : ERROR: (1) eap_tls: (TLS) Failed reading from OpenSSL: ../ssl/statem/statem_srvr.c[1657]:error:0A000102:SSL routines::unsupported protocol
Sun Dec 11 15:23:20 2022 : ERROR: (1) eap_tls: (TLS) System call (I/O) error (-1)
Sun Dec 11 15:23:20 2022 : ERROR: (1) eap_tls: (TLS) EAP Receive handshake failed during operation
Sun Dec 11 15:23:20 2022 : ERROR: (1) eap_tls: [eaptls process] = fail
Sun Dec 11 15:23:20 2022 : ERROR: (1) eap: Failed continuing EAP TLS (13) session. EAP sub-module failed
当我尝试通过真正的无线客户端连接时也会发生同样的情况,所以 eapol_test 没有任何问题......
一旦我设置了以下选项:
tls_min_version = "1.2"
tls_max_version = "1.3"
身份验证有效,但随后使用了 tls 1.2。
是否可以将 freeradius 与 eap tls 1.3 一起使用?
接下来我不明白的是连接时的一些警告消息:
Sun Dec 11 15:02:50 2022 : Warning: Certificate chain - 2 cert(s) untrusted
Sun Dec 11 15:02:50 2022 : Warning: (TLS) untrusted certificate with depth [2] subject name ....CN=ROOT CA.......
Sun Dec 11 15:02:50 2022 : Warning: (TLS) untrusted certificate with depth [1] subject name ....CN=Intermediate CA.......
Sun Dec 11 15:02:50 2022 : Warning: (TLS) untrusted certificate with depth [0] subject name ....CN=Client Cert.......
我已经阅读了eap config中的提示并进行了配置:
private_key_password = XXXXXX
private_key_file = /etc/freeradius/3.0/certs/radius-server.key
certificate_file = /etc/freeradius/3.0/certs/radius-server.pem
ca_file = /etc/freeradius/3.0/certs/ca.cert.crt
auto_chain = yes
ca_path = ${cadir}
radius-server.pem = 仅包含服务器证书
ca.cert.crt 仅包含根 ca
连接和身份验证有效,但我不明白警告消息,因为客户端也发送了完整的链
【问题讨论】:
-
好的,我想我已经用 tls1.3 解决了这个问题。似乎这是不可能的。调试日志中还有一条警告消息,您可以查看这表明大多数 wpa 请求者不遵守标准,而 freeradius 仅支持少数设备。我还用 Sophos AP 和 Zyxel AP EAP TLS 1.3 测试了 freeradius 3.2,但我不工作。
标签: openssl ssl-certificate client-certificates ca freeradius