wpa工具简介
wpa工具主要包含如下几个命令:
命令 | 作用 |
---|---|
wpa_supplicant | wpa的服务,想要链接wifi必须先启动它,假如不启动它就没法使用wifi,它一般运行在后台 |
wpa_cli | wpa的客户端命令,使用它来操作wifi |
wpa_passphrase | 把配置文件里的密码加密成密文的工具,防止别人通过配置文件偷看密码 |
wpa_action | 控制网卡的命令,例如reload,stop |
wpa_supplicant命令
wpa_supplicant支持的驱动:
驱动名称 | 含义 |
---|---|
nl80211 | Linux nl80211/cfg80211 |
wext | Linux wireless extensions (generic) |
wired | Wired Ethernet driver |
none | no driver (RADIUS server/WPS ER) |
wpa_supplicant常用参数:
参数 | 含义 |
---|---|
-b | 指定网络设备名称 |
-B | 后台运行 |
-c | 指定wifi账号密码的保存文件 |
-C | ctrl_interface参数(仅在没有-c参数时使用) |
-d | 增加调试信息打印(-dd甚至更多) |
-D | 指定驱动名字 |
-e | 指定熵文件 |
-f | 日志输出到调试文件,而不是标准输出 |
-g | 全局控制接口 |
-G | 全局控制接口组 |
-h | 显示帮助 |
-I | 额外的配置文件 |
-K | 在调试输出中包含密钥(密码等) |
-L | 显示BSD许可证 |
-m | P2P设备接口配置文件 |
-N | 开始描述新的接口 |
-o | 重载新接口的驱动参数 |
-O | 对于新接口,覆盖ctrl_interface参数 |
-p | 驱动程序参数 |
-i | 指定使用哪个wifi设备,因为有些开发板有很多个wifi: wlan0,wlan1,wlan2… |
-P | PID 文件 |
-q | 减少调试打印信息(-qq更少) |
-s | 将日志输出到syslog而不是stdout |
-t | 在调试消息中包含时间戳 |
-T | 记录到除了日志之外的Linux跟踪(记录所有消息,而不考虑调试的冗长程度) |
-u | 启用DBus控制接口 |
-v | show version |
-W | 在启动前等待控制接口监视器 |
wpa_cli命令
wpa_cli命令是操作wifi使用的命令,由于该命令太多参数,在此只举例常用的参数:
命令 | 功能 |
---|---|
wpa_cli scan | 搜索wifi |
wpa_cli scan_result | 打印搜索到的wifi |
wpa_cli add_network | 增加一个新的wifi链接,会得到一个返回值 N |
wpa_cli set_network N ssid “testwifi” | 设置第N个wifi的wifi名字为testwifi |
wpa_cli set_network N psk “12345678” | 设置第N个wifi的wifi密码为12345678 |
wpa_cli select_network N | 选中第N个wifi |
wpa_cli enable_network N | 链接第N个wifi |
wpa_cli list_network | 查看已保存的wifi |
wpa_cli disconnect / reconnect | 断开 / 重连wifi |
wpa_cli save_config | 保存wifi配置 |
wpa_cli remove_network N | 从配置文件里删除第N个wifi配置 |
wpa_cli status | 查看wifi当前的链接状态 |
wpa_passphrase命令
wpa_passphrase命令是加密wifi密码使用的,当你不想明文写入密码到配置文件时,你可以用wpa_passphrase命令:
wpa_passphrase mywifi 12345678
打印结果:
network={
ssid=“mywifi”
#psk=“12345678”
psk=d0f3013a5857ec3b44f674be6773c96ef7d78a2133841e27d84af2b1e4d24752
}
可以看到psk是密文显示了,当链接时它会自己解密,不用我们操作.
当然,此时并没有写入配置文件,你要重定向追加写入配置文件:
1e27d84af2b1e4d24752
}
可以看到psk是密文显示了,当链接时它会自己解密,不用我们操作.
当然,此时并没有写入配置文件,你要重定向追加写入配置文件:
wpa_passphrase mywifi 12345678 >> /etc/wpa_supplicant/wpa_supplicant.conf