802.1X 请将 NetworkManager conf 转换为 wpa_supplicant conf

802.1X 请将 NetworkManager conf 转换为 wpa_supplicant conf

操作系统:(Arch Linux)Linux HP-Arch 4.17.4-1-ARCH

NetworkManager 能够连接到我的 AP“SYSU-SECURE”,该 AP 需要 802.1X 身份验证。但是,我现在想直接使用 shell 脚本运行 wpa_supplicant。

NetworkManager 上的“SYSU-SECURE”配置在这里:(
由 GUI nm-applet 生成)
(文件:/etc/NetworkManager/system-connections/SYSU-SECURE)

[connection]
id=SYSU-SECURE
uuid=<SOME_UUID>
type=wifi
permissions=user:<SOME_LOCAL_ACCOUNT>:;

[wifi]
mac-address=00:DB:DF:78:F6:9F
mac-address-blacklist=
mode=infrastructure
ssid=SYSU-SECURE

[wifi-security]
auth-alg=open
key-mgmt=wpa-eap

[802-1x]
eap=peap;
identity=<SOME_USERNAME>
password=<SOME_PASSWORD>
phase2-auth=mschapv2

[ipv4]
dns-search=
method=auto

[ipv6]
addr-gen-mode=stable-privacy
dns-search=
method=auto

上面的配置成功了。但是我想要的是这样的:(
文件:/usr/local/bin/connect_to_SYSU-SECURE.sh)

#!/bin/bash
wpa_supplicant -B -i wlo1 -c <(echo '
network={
  ssid="SYSU-SECURE"
  key_mgmt=IEEE8021X
  eap=PEAP
  phase2="auth=MSCHAPV2"
  identity="<SOME_USERNAME>"
  password="<SOME_PASSWORD>"
}')
dhcpcd -4 wlo1

上面的 shell 脚本失败了。请帮我改正一下。
谢谢。

答案1

对于现代 WPA-Enterprise,您需要设置key_mgmtWPA-EAP。(您可能已经注意到,NM 中的大多数值实际上与 wpa_supplicant 直接接受的值相同。)

有两种不同的方式使用 802.1X 来实现 Wi-Fi,选择IEEE8021X实际是选择“WEP 动态密钥”模式(或者甚至可能是纯文本、仅身份验证模式)。


我建议继续使用 NetworkManager 并删除该permissions=选项,以便连接变为全系统连接。

相关内容