使用终端方式在Kali Linux中配置Wi-Fi网络

当前无线网络已经越来越普遍,并且802.11工作组已经推出了802.11i作为网络安全标准的最新改进,取代了古老的WEP技术。

配置

  • 首先使用以下命令查找可用的无线网络设备:

iw dev

可以看到输出

phy#0
    Interface wlan0
        ifindex 3
        wdev 0x1
        addr 94:eb:cd:8e:eb:3f
        type managed

iw是一个新型的nl80211无线网络设备命令行配置工具,支持所有最新加入到内核的设备驱动。以前使用的iwconfig工具,也就是用于配置无线扩展接口的工具,已经停止开发并且推荐切换到iwnl80211

以上命令输出可以看到,系统中只有一块无线网卡,接口命名是wlan0并且被设置成phy#0,类型是managed(也就是该设备是Wi-Fi状态或者客户端已经连接打一个访问点AP),硬件地址(Mac Address)是94:eb:cd:8e:eb:3f

当然,也可以使用旧命令iwconfig查看所有设备。

wlan0     IEEE 802.11bgn  ESSID:off/any
          Mode:Managed  Access Point: Not-Associated
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:on
  • 检查设备状态是UP还是DOWN

输出显示

上述ip命令用于显示路由,设备,策略路由和隧道(tunnels),也可以用于激活或禁用设备,并且可以用来查找常规的网络信息。

  • 激活wifi接口:

然后再次使用ip link show wlan0可以看到如下输出

  • 现在可以检查WiFi网络是否连接

显示输出没有连接

  • 扫描所有附近无线网络:

显示输出

可以看到,这里的SSID名字是 1702 也就是我们要连接的无线AP,这里的安全协议是WPA

  • 使用wpa_supplicant工具生成一个配置文件,包含无线网络的预先共享密钥(也就是密码):

wpa_passphrase [ ssid ] [ passphrase ]

工具命令 wpa_passphrase 会自动根据扫描获得的WiFi SSID对应的信息生成配置文件。

  • 现在我们具备了配置文件,包含了SSID,就可以使用wpa_supplicant命令连接无线网络了:

-B 参数表示将wpa_supplicant运行在后台

-D 表示指定无线网络驱动,wext是通用驱动

-c 指定配置文件

这里有一个错误输出,可能和后续使用systemctl来运行wpa_supplicant失败相关(systemd发现返回失败)

  • 此时再次使用iw命令应征连接SSID

显示输出

注意:此时还没有获得IP地址

  • 通过DHCP获取地址

  • 再次检查IP地址

显示输出已经获得地址

  • 检查路由:

我这里使用的是通过USB接口连接笔记本电脑的树莓派Zero,所以默认的时候路由是通过USB接口,这里需要修改 /etc/network/interfaces

  • 注意:要激活wpa_supplicant,这样下次启动才会自动运行

显示输出

这表明需要修改 /lib/systemd/system/wpa_supplicant.service 配置文件:

修改配置文件后,再次执行systemctl restart wpa_supplicant

不过,我还是遇到问题显示

显示初始化设备失败。

当前还是通过命令脚本启动

参考

Last updated

Was this helpful?