我的大学使用 WPA2 Enterprise 加密让学生登录他们的无线网络。在 NetworkManager 中,我输入了他们需要的所有内容
每次尝试连接时,都会出现一个窗口,要求我一遍又一遍地输入密码
小智 41
这里有一个错误报告:https : //bugs.launchpad.net/ubuntu/+source/network-manager/+bug/1104476
解决方法是删除该行
system-ca-cert=true
Run Code Online (Sandbox Code Playgroud)
来自 /etc/NetworkManager/system-connections/ 中的配置文件
小智 25
这是一个解决方法。
打开终端 ( Alt+ F2) 并运行以下命令:
cd /etc/NetworkManager/system-connections
sudo touch SSID #SSID is the name of the profile, e.g. eduroam
sudo nano SSID
Run Code Online (Sandbox Code Playgroud)然后编辑“SSID”配置文件如下:
[ipv6]
method=auto
[connection]
id=SSID #(e.g.EDUroam)
uuid=9e123fbc-0123-46e3-97b5-f3214e123456 #unique uuid will be created upon creation of this profile
type=802-11-wireless
[802-11-wireless-security]
key-mgmt=wpa-eap
auth-alg=open
[802-11-wireless]
ssid=SSID
mode=infrastructure
mac-address=0A:12:3C:DA:C1:A5
security=802-11-wireless-security
[802-1x]
eap=peap;
identity=studentid123123
phase2-auth=mschapv2
password=mypass123123
[ipv4]
method=auto
Run Code Online (Sandbox Code Playgroud)修改上面的文件,它应该可以工作。
小智 8
我在工作中遇到了同样的问题,我按照说明进行了更改,system-ca-cert=false但我也必须在进行更改后立即更改无线驱动程序设置。查看我在下面获得信息的链接
http://wireless.kernel.org/en/users/Documentation/wpa_supplicant
-o<driver> and -O<ctrl>
/usr/share/dbus-1/system-services/fi.epitest.hostap.WPASupplicant.service
[D-BUS Service]
Name=fi.epitest.hostap.WPASupplicant
Exec=/sbin/wpa_supplicant -u -f /var/log/wpa_supplicant.log
User=root
[D-BUS Service]
Name=fi.epitest.hostap.WPASupplicant
Exec=/sbin/wpa_supplicant -u -onl80211 -O/var/run/wpa_supplicant
User=root
Run Code Online (Sandbox Code Playgroud)
最近,许多 eduroam 部署在 Ubuntu 22.04 LTS 上出现故障,因为它们仍然使用不安全的重新协商,这种重新协商已于 2010 年被 RFC 5746 弃用,并且 OpenSSL 在 2010 年 3 月左右放弃了对重新协商的支持(以及 TLS 1.0 和 1.1)。在您的大学修复网络之前,您可以通过编辑一些配置文件来重新启用不安全的重新协商。
以下步骤由用户“nfalse”(#22) 和 Simon Chopin (#36)贡献给Launchpad Bug #1958267
$ sudo cp /etc/ssl/openssl.cnf /etc/wpa_supplicant/
Run Code Online (Sandbox Code Playgroud)
这将确保启用 TLS 1.0 仅适用于 WPA 协商,这将在一定程度上减轻此更改的安全影响。
以 root 身份编辑新的配置文件:
$ sudo gedit /etc/wpa_supplicant/openssl.cnf
Run Code Online (Sandbox Code Playgroud)
然后,找到以下几行:
[openssl_init]
providers = provider_sect
Run Code Online (Sandbox Code Playgroud)
之后立即插入以下行:
ssl_conf = ssl_sect
[ssl_sect]
system_default = system_default_sect
[system_default_sect]
Options = UnsafeLegacyRenegotiation
CipherString = DEFAULT@SECLEVEL=1
Run Code Online (Sandbox Code Playgroud)
以 root 身份编辑/usr/lib/systemd/system/wpa_supplicant.service.
$ sudo gedit /usr/lib/systemd/system/wpa_supplicant.service
Run Code Online (Sandbox Code Playgroud)
找到以下几行:
[Service]
Type=dbus
BusName=fi.w1.wpa_supplicant1
ExecStart=/sbin/wpa_supplicant -u -s -O /run/wpa_supplicant
ExecReload=/bin/kill -HUP $MAINPID
Run Code Online (Sandbox Code Playgroud)
之后BusName,插入Environment="OPENSSL_CONF=/etc/wpa_supplicant/openssl.cnf". 整个部分应如下所示:
[Service]
Type=dbus
BusName=fi.w1.wpa_supplicant1
Environment="OPENSSL_CONF=/etc/wpa_supplicant/openssl.cnf"
ExecStart=/sbin/wpa_supplicant -u -s -O /run/wpa_supplicant
ExecReload=/bin/kill -HUP $MAINPID
Run Code Online (Sandbox Code Playgroud)
此时您可以重新启动整个计算机,也可以只运行以下命令:
$ sudo systemctl daemon-reload
$ sudo systemctl restart wpa_supplicant.service
Run Code Online (Sandbox Code Playgroud)