问题标签 [wpa-supplicant]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1675 浏览

linux - 尝试使用 wpa supplicant 在 eap-tls 模式下设置 freeradius

我正在尝试在 eap-tls 模式下设置 freeraadius。我使用 freeradius 作为服务器,使用 wpa-supplicant 作为客户端。我已经在 Ubuntu-14.04.3 中安装了这两个软件包。我正在使用随 freeradius 软件包提供的示例证书。我使用/freerad/raddb/cert中提供的脚本引导程序。我不知道这个脚本是否正确签署了证书,因为我不是这方面的专家。我只是在 client.conf 中将这些证书的路径提供给 freeradius 和 wpa-supplicant 中的配置文件。以下是我正在使用的 wpa-supplicant 配置

我正在使用Freeradius -X命令和 eapol_test -c eap-tls.conf -s testing123运行 wpa-supplicant 命令来运行 freeradius。

我在 wpa-supplicant 终端上收到以下错误:

OpenSSL:tls_connection_client_cert - SSL_use_certificate_file (DER) failed error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag

OpenSSL:未决错误:错误:0D07803A:asn1 编码例程:ASN1_ITEM_EX_D2I:嵌套 asn1 错误

OpenSSL:未决错误:错误:140C800D:SSL 例程:SSL_use_certificate_file:ASN1 lib

OpenSSL:SSL_use_certificate_file (PEM) --> OK

OpenSSL:tls_connection_private_key - SSL_use_PrivateKey_File (DER) failed error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag

OpenSSL:未决错误:错误:0D08303A:asn1 编码例程:ASN1_TEMPLATE_NOEXP_D2I:嵌套 asn1 错误

OpenSSL:未决错误:错误:0D0680A8:asn1 编码例程:ASN1_CHECK_TLEN:错误标签

OpenSSL:未决错误:错误:0D07803A:asn1 编码例程:ASN1_ITEM_EX_D2I:嵌套 asn1 错误

OpenSSL:未决错误:错误:04093004:rsa 例程:OLD_RSA_PRIV_DECODE:RSA lib

OpenSSL:未决错误:错误:0D0680A8:asn1 编码例程:ASN1_CHECK_TLEN:错误标签

OpenSSL:未决错误:错误:0D07803A:asn1 编码例程:ASN1_ITEM_EX_D2I:嵌套 asn1 错误

OpenSSL:未决错误:错误:140CB00D:SSL 例程:SSL_use_PrivateKey_file:ASN1 lib

OpenSSL:tls_connection_private_key - SSL_use_PrivateKey_File (PEM) failed error:0907B068:PEM routines:PEM_READ_BIO_PRIVATEKEY:bad password read

OpenSSL:未决错误:错误:140CB009:SSL 例程:SSL_use_PrivateKey_file:PEM lib

OpenSSL:tls_read_pkcs12 - 无法使用 PKCS#12 文件错误:0D0680A8:asn1 编码例程:ASN1_CHECK_TLEN:错误标签

OpenSSL:未决错误:错误:0D07803A:asn1 编码例程:ASN1_ITEM_EX_D2I:嵌套 asn1 错误

OpenSSL:无法加载私钥

TLS:无法加载私钥“/home/areh/freeradius-server-3.0.11/raddb/certs/client.key”

TLS:设置 TLS 连接参数失败

我正在使用 wpa_supplicant-0.7.3 并尝试使用 2.5 版本,freeradius 版本是 freeradius-server-3.0.11。我真的很感激任何线索或帮助。我正在使用wireshark进行调试,我可以看到正在交换访问挑战和访问请求数据包,但从未到达下一个消息阶段。请帮助解决这个问题。

0 投票
1 回答
4121 浏览

networking - 使用 hostapd 和 wpa_supplicant 的热点

我需要使用 hostapd 为 EAP-SIM、EAP-AKA 和 EAP-AKA' 创建热点设置,并使用 wpa_supplicant 对其进行测试。

目前我可以使用 hostapd 进行 WPA-PSK 身份验证,hostapd2.4 用于此设置。我已经修改了 hostapd.conf 以支持热点但是当我尝试连接时,网络将始终处于扫描状态并且不会'连接。wpa_supplicant 中 HS20 的必要参数也被启用。

以下是请求者参数,

构建配置:CONFIG_INTERWORKING=y CONFIG_HS20=y

wpa_supplicant 配置:Enable Interworking interworking=1 Enable Hotspot 2.0 hs20=1 auto_interworking=1

还指定了一个凭据块,它采用必要的参数进行 hostapd 身份验证。

使用 wpa_supplicantv2.5。我还有一个 dhcp 服务器运行用于分配 IP 地址,还有一个milenage db 运行用于 EAP-SIM、EAP-AKA 和 EAP-AKA' 身份验证。

谁能建议在 hostapd 中启用热点的必要基本设置是什么?

0 投票
1 回答
1721 浏览

wifi - 如何在 Linux 上检查正确的 SSID 密码

我正在为硬件设备编写 Web 界面,目前正在执行网络配置向导。我想让用户选择 SSID,如果它是安全的,然后输入密码。我想在那里检查密码是否正确,而无需在向导中进行任何进一步的操作。

有没有比抛出细节wpa_supplicant和解析日志输出更简单的方法呢?

0 投票
1 回答
1012 浏览

c - 使用 wpa_supplicant p2p DBus 接口注册信号处理程序

我在尝试注册以使用gdbusC 中的库从 wpa_supplicant 的 p2p dbus 接口接收“InvitationReceived”信号时遇到问题。

我可以很好地创建到 P2P dbus 接口的代理连接并在其上调用方法,但是当我尝试将信号处理程序连接到代理时,我只是收到以下错误消息,指出信号无效(代码中的相关输出样本):

(进程:6764):GLib-GObject-WARNING **:/tmp/buildd/glib2.0-2.42.1/./gobject/gsignal.c:2461:信号'InvitationReceived'对于类型的实例'0x909ae0'无效'GDBusProxy'

这很奇怪,因为“InvitationReceived”是wpa_supplicant dbus api定义的信号名称。


代码示例:

是否有一些特殊的路径需要附加到信号名称中?还是我应该使用与用于调用方法的代理不同的代理来注册信号处理程序?

0 投票
1 回答
924 浏览

node.js - 在 node.js 中获取 wpa_supplicant 接口列表

我的最终目标是创建一个可以告诉我为什么无线连接设置失败的模块。

目前我正在尝试使用node-dbus模块访问 wlan0 接口。就目前而言,wpa_supplicant 告诉我它不知道 wlan0

'wpa_supplicant 对此接口一无所知。'

非常感谢任何帮助或建议。

代码:

更新1:

我使用 DBus 属性 api 来调查 Interfaces 属性,发现属性本身为空。

我唯一的结论是 wpa_supplicant 从不向 dbus 注册任何新接口。

(我已确保使用终端命令使用 wpa_supplicant 设置我的 wlan0)

0 投票
1 回答
1314 浏览

embedded-linux - wifi断开时如何使用wpa_cli获取WiFi断开事件

我正在研究嵌入式 Linux 系统。当现有 WiFi 断开连接时,我需要连接到新 WiFi。我可以使用具有固定睡眠时间的循环来查看 wifi 是否已连接,但似乎效率低下。任何人都可以建议一种方法,可以将 wpa_cli 启动为一个在 WiFi 断开连接时触发事件的守护进程。

提前致谢。夕阳西下。

0 投票
1 回答
122 浏览

linux - Linux 内核 3.3 未向连接的接入点注册丢失的信标

我正在使用 linux 内核 3.3(我无法升级我的内核,抱歉!)并且正在尝试使用该wpa_cli实用程序来监控我的 WiFi 连接的状态。我正在使用 Edimax WiFi 加密狗连接到无线接入点。

我希望看到这样的事情:

或相同的东西,但wpa_state=COMPLETED取决于我的连接状态。

通过解析此文本输出,我可以查看我的无线连接是否处于活动状态或正在扫描。但是,我注意到在关闭我的接入点后wpa_state=COMPLETED仍然返回。使用命令:

强制扫描,wpa_state偶尔会正确,但通常 (99%) 不正确。

这是我的/etc/wpa_supplicant.conf

经过一番调查,我相信发生了一些奇怪的事情,导致内核返回了 AP 列表的缓存版本。我正在使用RTL8192cu驱动程序。这个问题我已经看过了,和我的不一样。

我的信念是问题可能出在内核的某个地方。在文件net/mac80211/scan.c中,在函数的第 214 行ieee80211_scan_rx,我看到我的 AP 中出现bssid了一个BSS(当 AP 通电时)并通过ieee80211_rx_bss_put此处)放置。此时,它会在扫描结果中返回,并wpa_supplicant导致MLME内核中的层进行身份验证并与该 AP 连接。但是,在断开 AP 电源后,我再也没有看到该MLME层放弃它对它的atomic_t控制BSS。这会导致函数在扫描结束时 ( ) 中的文件第 205 行 (此处BSS)中永远不会取消链接 。cfg80211_bss_expirecfg80211_wext_giwscannet/wireless/scan.c

具体来说,我想知道为什么用于“保持” a 的原子BSS在从 AP 断电时没有减少 - 导致 linux 错过足够的信标以断开连接?或者,我是否需要添加一些 wpa_supplicant 配置以使MLME内核层递减它在 上的保留BSS,或者这显然是一个内核错误?

我已经尝试过:

并没有解决我的问题。

0 投票
1 回答
138 浏览

networking - 在 wpa-supplicant 中实现 EAP 等安全协议

我目前正在尝试了解各种安全协议实现,例如 wpa_supplicant 中的 EAP。但是通过从 w1.fi 读取 wpa-supplicant-devel.pdf 是非常复杂的方式。

我想从 wpa_supplicant 专家那里了解如何以有效的方式开始深入推动它。应该知道什么高级 c 概念才能更好地理解它。

可以为此建议任何资源/材料/网站/书籍。

也请不要忽略这个描述性问题,因为您知道在 wpa_supplicant 中很难开始。

提前致谢。

0 投票
3 回答
4042 浏览

c - 使用 C 开始使用 wpa_supplicant

在人们得出结论说这是一个重复的帖子之前,我想指出我已经浏览了关于这个主题的其他帖子,但真的没有找到解决方案。


我需要的

我的目标是从 C 程序访问 wpa_supplicant 以执行以下操作:

  1. 查看活动连接
  2. 检测接口何时关闭
  3. 连接AP/设置AP等

我发现了什么

  • 如果我需要编写一个 C 程序来与 wpa_supplicant 通信,我不需要 DBus
  • 我可以通过将wpa_ctrl.h这些文件包含在我的项目目录中来使用其中的功能
  • 以下是我发现的与此问题相关的一些链接。1、2、3 _ _ _ _
  • 我还浏览了有关使用外部程序的官方文档wpa_ctrl.c

为什么上面并没有真正解决问题

  • 我在 SO 和其他相关网站上找到的有关此问题的大多数帖子都指向官方文档之类的资源,这些资源很好但不能解决问题
  • 在很多这样的帖子中,人们已经放弃了这一点,或者已经制定了解决方案,但还没有在网上发布。
  • 对于本主题的新手来说,如果可以发布一个工作示例——wpa_supplicant 的“hello world”,将会很有帮助。

到目前为止我所做的

  • 这个链接,我复制 wpa_supplicant-2.5/src/common/wpa_ctrl.hwpa_supplicant-2.5/src/utils目录中(因为common.h有很多依赖项)。然后我在同一目录中编写了一个简单的 C 程序hostapd_cli.c,如下所示。我得到一个未定义的对“wpa_ctrl_open”错误的引用

    /li>

生成文件

构建日志


关于如何使用这些文件并将其集成到外部项目或如何编译它的材料不多,我有点无能为力。任何有关如何进行的帮助将不胜感激。

编辑 1:更正错字并添加构建日志

0 投票
1 回答
685 浏览

events - 您可以从 linux 中的 wpa_supplicant 订阅 netlink 事件吗?

鉴于 Linux 中的 wpa_supplicant 使用 nl80211,我可以订阅其中一个多播组并监听关联、解除关联、身份验证和解除身份验证事件吗?