特此弃用此存储库,并将于 2018 年 8 月 22 日 AOE 后不久删除。也就是说,为了不进一步传播安全不当行为,所提供的配置将变得不可用。
eduroam 配置助手工具 (CAT) 完成了该存储库本来要做的任务,而且做得更好。对于 Linux,他们提供 shellscript 安装程序,如果找不到安装的网络管理器,将为您生成 wpa_supplicant 配置。
CAT做得更好,因为它还为您提供了一个证书,您可以在与您所在机构的 RADIUS 服务器通信之前使用该证书来验证该服务器。此处提供的配置并没有做到这一点,这是一种不好的做法 - 您可能已将您的密码暴露给了非预期的各方。
使用 CAT,而不是此配置,还意味着从现在开始,您应该密切关注您所在机构的配置或证书何时发生更改,并相应地升级您的配置。
如果您使用此配置,建议您更改密码。
另请参阅问题 #23、#24 和 #25。
太长了; eduroam 的wpa_supplicant
配置似乎相当强大。
Eduroam 是一种安全的无线访问服务,由世界各地的许多教育机构向教育和研究界提供。它的设计使您作为学生或研究人员,无论您今天碰巧在哪个教育机构,都只需付出最小的努力即可连接到安全的无线网络。这鼓励了世界各地的教育交流和科学合作。 (该视频用漫画解释了 eduroam!)
wpa_supplicant
是一个通用的“IEEE 802.1X 请求者”(即可以确保您的无线连接安全的工具)。大多数基于 Linux 的网络管理器在幕后使用wpa_supplicant
。当然, wpa_supplicant
有一个命令行界面,并且对您的配置进行全面控制是相当简单的。 (没有关于wpa_supplicant
☹ 的漫画。)
为此,遗憾的是通用 eduroam 网站似乎(即,如果我错了,请纠正我)没有提供有关如何设置wpa_supplicant
文档。相反,他们向最终用户提供安装程序,包括针对 Linux 用户的 shell 脚本(可以被视为原始但诚实的文档)。一些机构确实提供原始的wpa_supplicant
文档,但是以临时的方式提供的 -不保证该配置将在任何其他机构中工作,从而违背了 Eduroam 的目的。
这是建立一个统一的wpa_supplicant
配置的尝试,该配置可以全面工作。然而,就目前而言,这只是一个未记录的wpa_supplicant
配置,似乎在许多机构中运行良好。伸出援助之手,并记录下来,或者只是让我知道此配置是否也适合您。
abc123
,并且您所在大学的域名是ku.dk
,请将identity
设置为[email protected]
。anonymous_identity
设置为[email protected]
或简单的@ku.dk
。使用匿名身份不会向除所在大学以外的任何人透露您的身份——每次您从其他位置登录时,eduroam 都会打电话回家验证您的身份和密码。密码哈希值必须是密码的小端 UTF16 编码的 MD4 哈希值。例如,如果您的密码是hamster
,您可以按如下方式对其进行哈希处理:
$ echo -n 'hamster' | iconv -t utf16le | openssl md4
(请注意使用单引号以避免在 shell 中转义。)
(另请参阅HISTCONTROL
bash 变量,以将命令保留在~/.bash_history
之外。)
如果您使用pass
或另一个带有命令行界面的密码管理器,您可以考虑使用像这样的管道:
$ pass eduroam | tr -d 'n' | iconv -t utf16le | openssl md4
获得 MD4 哈希值后,将其写入您的配置中,如下所示:
password=hash:2fd23a...456cef
注意! MD4 是一种过时的哈希算法,不应被视为安全的。
如果您喜欢在没有网络管理器的情况下进行滚动,这里是使用此配置运行wpa_supplicant
快速但肮脏的方法:
$ sudo wpa_supplicant -Dnl80211 -iwlp3s0 -c supplicant.conf -B
其中nl80211
是要使用的内核驱动程序。 nl80211
是新的默认 802.11 netlink 接口,旨在取代旧的wext
(无线扩展)。如果您没有nl80211
,您可以尝试wext
,但wext
可能会失败,并出现错误ioctl[SIOCGIWSCAN]: Argument list too long
。如果您有英特尔卡,另一种选择是iwlwifi
。
查找所需驱动程序的一种方法是使用lspci
:
$ lspci -k
wlp3s0
是无线卡的网络接口名称。您可以使用ip link
找到它:
$ ip link
(可选)使用-B
选项将wpa_supplicant
进程移至后台。然而,如果您无法连接,将其排除在外可以为您提供有用的见解。
此外,如果dhcpcd
没有自动启动,请启动它。
在 Raspbian Stretch 上,您还必须添加以下行(由 @patrick-nits 提供):
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=root
country=<2-letter country code>
ctrl_interface
是因为 Raspbian Stretch 默认使用wpa_cli
。每当您使用wpa_cli
时都需要ctrl_interface
。country
。特别是,这会改变wpa_supplicant
将使用的频段。国家/地区代码必须是 ISO 3166-1 Alpha-2 代码。