精华内容
下载资源
问答
  • 无线路由WPA模式的破解系统,这是一个全面详细的操作教程。新手们也能看了教程学会破解无线路由密码。
  • 看了一下午Android WIFI源码,写了个包含多个功能的...3.设置WPA2 PSK模式下WIFI热点 4.设置NONE(无密码模式下)WIFI热点 5.获取IP地址 6.获取Mac地址 翻越源码各种坑,总结了下写个小demo,撸demo不易,欢迎下载。
  • wpa psk模式 WPA:Wi-Fi保护访问 (WPA: Wi-Fi Protected Access) WPA is an abbreviation of Wi-Fi Protected Access. It is a security protocol or also known as encryption protocol which was created to take ...

    wpa psk模式

    WPA:Wi-Fi保护访问 (WPA: Wi-Fi Protected Access)

    WPA is an abbreviation of Wi-Fi Protected Access. It is a security protocol or also known as encryption protocol which was created to take the place of the Wired Equivalent Privacy (WEP) or to develop upon the features of WEP for Wi-Fi networks. In 2003, it was launched with the 802.11i wireless standard. Its advanced version is WPA2 which is highly secured than WPA. From 2006, the certification of WPA2 is required for all network devices.

    WPA是Wi-Fi保护访问的缩写 。 它是一种安全协议或也称为加密协议 ,旨在代替有线等效保密(WEP)或在Wi-Fi网络的WEP功能上进行开发。 2003年,它以802.11i无线标准发布。 它的高级版本是WPA2 ,它比WPA高度安全。 从2006年开始,所有网络设备都必须获得WPA2认证。

    WPA full form


    Image source: https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcRZtT1EWPZxRjbeURR2GtdMrPZQH24dW9a5_7DqG5B87F5dwklk

    图片来源:https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcRZtT1EWPZxRjbeURR2GtdMrPZQH24dW9a5_7DqG5B87F5dwklk

    WPA的类型 (Types of WPA)

    The WPA is divided into two types that provide distinct users. These two types are WPA-Personal and WPA-Enterprise,

    WPA分为提供不同用户的两种类型。 这两种类型是WPA个人版和WPA企业版,

    • WPA-Personal:

      WPA个人

      This category of WPA is mainly used for small offices and personal use at home. It doesn’t need a validation or authentication server. In the case of connection of all wireless devices, a 256-bit authentication key is used.

      此类WPA主要用于小型办公室和家庭个人使用。 它不需要验证或身份验证服务器。 在连接所有无线设备的情况下,将使用256位身份验证密钥。

    • WPA-Enterprise:

      WPA-企业

      According to the name, it is mainly used in huge corporations and large businesses. A Remote Authentication Dial-in User Service (RADIUS) authentication server is applied for automatic key generation and authentication.

      顾名思义,它主要用于大型公司和大型企业。 远程身份验证拨入用户服务(RADIUS)身份验证服务器适用于自动密钥生成和身份验证。

    特征 (Features)

    • It makes available for use through any of the two a level of quality technologies much effective encryption than WEP, Temporal Key Integrity Protocol (TKIP) and Advanced Encryption Standard (AES).

      它可以通过两种质量级别的技术中的任何一种来使用,这些技术比WEP,临时密钥完整性协议(TKIP)和高级加密标准(AES)更有效。

    • The availability of built-in authentication support that is not there in WEP is offered by WPA.

      WPA提供了WEP中不提供的内置身份验证支持。

    • The support which is required for authentication servers or RADIUS servers is offered by WPA.

      WPA提供了身份验证服务器或RADIUS服务器所需的支持。

    • In network security processing to make certain that data is protected, a message integrity code is integrated during the use of TKIP. The WEPs packet guarantee called cyclic redundancy check (CRC) is not that much effective in comparison to this message integrity code integration in WPA.

      在确定要保护数据的网络安全处理中,在使用TKIP期间集成了消息完整性代码。 与WPA中的此消息完整性代码集成相比,称为循环冗余校验(CRC)的WEP数据包保证没有那么有效。

    WPA的优势 (Advantages of WPA)

    In comparison between WPA and its predecessor, WPA uses much powerful and stable encryption algorithms than its predecessor. Temporary Key Integrity Protocol (TKIP) is used by WPA, through which dynamic changes occur within the key as during the transfer of data packets across the network. As there is continues change inside the key, the process of cracking the key becomes much more strenuous than that of WEP. If the need arises, WPA will automatically announce the new key.

    与WPA及其前身相比,WPA比其前身使用了功能强大且稳定的加密算法。 WPA使用了临时密钥完整性协议(TKIP),通过该密钥,密钥的动态变化发生在网络上的数据包传输过程中。 随着密钥内部的不断变化,破解密钥的过程变得比WEP更为艰巨。 如果需要,WPA将自动宣布新密钥。

    WPA的缺点 (Disadvantages of WPA)

    Some of the disadvantages of using WPA are, with the major issue being an incompatibility with legacy hardware and older operating systems. WPA also has a better presentation overhead and the size of the data packet increases which leads to longer transmission.

    使用WPA的一些缺点是,主要问题是与旧硬件和较旧的操作系统不兼容。 WPA还具有更好的表示开销,并且数据包的大小增加了,从而导致传输时间更长。

    翻译自: https://www.includehelp.com/dictionary/wpa-full-form.aspx

    wpa psk模式

    展开全文
  • 项目开发过程中遇到需要支持WPA3功能,于是通过指令设置WPA3,确认参数设置没有异常 Flash设置如下 flash set WLAN0_IEEE80211W 2 flash set WLAN0_SHA256_ENABLE 1 flash set WLAN0_WPA_CIPHER_SUITE 0 flash set...

    问题描述

           项目开发过程中遇到需要支持WPA3功能,于是通过指令设置WPA3,确认参数设置没有异常

    Flash设置如下

    flash set WLAN0_IEEE80211W 2
    flash set WLAN0_SHA256_ENABLE 1
    flash set WLAN0_WPA_CIPHER_SUITE 0
    flash set WLAN0_WPA2_CIPHER_SUITE 2
    flash set WLAN0_WSC_AUTH 64 
    flash set WLAN0_WSC_ENC 8
    flash set WLAN0_ENCRYPT 8
    flash set WLAN0_WPA_AUTH 2
     

    iwpriv直接设置mib,指令如下

    iwpriv wlan0 set_mib dot11IEEE80211W=2
    iwpriv wlan0 set_mib enableSHA256=1
    iwpriv wlan0 set_mib encmode=2
    iwpriv wlan0 set_mib psk_enable=8 
    iwpriv wlan0 set_mib wpa2_cipher=8 
    iwpriv wlan0 set_mib wpa_cipher=0
    ifconfig wlan0 down up 

    问题分析

           从测试情况来看,是AP端拒绝了手机的连接,通过omnipeek抓包发现是关联阶段出现问题,所以查看代码发现是由于check if the PMKID is exist in pmkid cache出现问题

    问题修改

    代码如下

    diff --git a/rtl819x/linux-3.10/drivers/net/wireless/rtl8192cd/8192cd_headers.h b/rtl819x/linux-3.10/drivers/net/wireless/r
    展开全文
  • 对于无线WPA加密环境,在获得了WPA握手验证包后,攻击者会通过暴力破解模式来进行WPA密码破解,同时也可以通过事先建立有针对性的字典,然后再进行字典破解(攻击)。对于大多数无线接入点AP而言,这将会是个行之有效...
  • 本文将介绍如何使用 `wpa_supplicant`服务程序和`wpa_cli` 客户端程序,让嵌入式设备的WIFI模块工作在station模式并连接网络,以及如何使用`hostapd`和`udhcpd`创建一个WIFI热点,并且解决如何让这两种工作模式共存...

    本文将介绍如何使用 wpa_supplicant服务程序和wpa_cli 客户端程序,让嵌入式设备的WIFI模块工作在station模式并连接网络,以及如何使用hostapdudhcpd创建一个WIFI热点,并且解决如何让这两种工作模式共存。

    WLAN一般有四种工作模式

    Master(AP)		成为无线接入点提供无线接入服务
    Managed(STA)	作为客户端连接其他无线接入点
    Monitor			监听附近所有无线流量
    Ad-hoc			多台计算机直接相连
    

    网卡一般是工作在Managed(STA)模式,使用 wpa_supplicant服务程序和wpa_cli 客户端程序,要使用AP模式需要使用hostapd这个服务程序
    因为我手里用的是Realetk 的RTL8188EU模块,所以在该模块的基础上来做的测试

    一、准备工作

    要编译出wpa_supplicantwpa_clihostapd这几个程序,首先要编译OpenSSL库和netlink库
    从官网下载对应的源码
    https://www.openssl.org/source/
    http://www.infradead.org/~tgr/libnl/

    1.编译openssl

    ./config no-asm -shared  --prefix=$PWD/build --cross-compile-prefix=arm-linux-
    make
    make install
    

    有的ubuntu系统是64位的编译的时候会报错 “-m64” 在Makefile文件中去掉这个参数,共有两处

    2.编译libnl

    ./configure --host=arm-linux --prefix=$PWD/build CC=arm-linux-gcc
    make
    make install
    

    3.交叉编译 wpa_supplicant

    cp defconfig .config
    修改.config 添加libnl 和openssl 的头文件和库
    添加CC 交叉编译链

    #CFLAGS += -I$<path to libnl include files>
    #LIBS += -L$<path to libnl library files>
    CFLAGS += -I/home/linux/Tools/libnl-1.1.4/build/include
    LIBS += -L/home/linux/Tools/libnl-1.1.4/build/lib
    CFLAGS += -I/home/linux/Tools/openssl-1.0.2q/build/include
    LIBS += -L/home/linux/Tools/openssl-1.0.2q/build/lib
    CC=arm-linux-gcc
    

    然后make编译,得到wpa_supplicantwpa_cli 还有配置文件 wpa_supplicant.conf

    4.编译8188eu模块的内核驱动文件

    在板子上加载该模块

    insmod 8188eu.ko
    

    5.交叉编译hostapd

    cp defconfig .config
    

    修改.config 添加libnl 和openssl 的头文件和库
    添加CC 交叉编译链

    #CFLAGS += -I$<path to libnl include files>
    #LIBS += -L$<path to libnl library files>
    CFLAGS += -I/home/linux/Tools/libnl-1.1.4/build/include
    LIBS += -L/home/linux/Tools/libnl-1.1.4/build/lib
    CFLAGS += -I/home/linux/Tools/openssl-1.0.2q/build/include
    LIBS += -L/home/linux/Tools/openssl-1.0.2q/build/lib
    CC=arm-linux-gcc
    

    然后make编译,得到hostapd 和 hostapd_cli 还有配置文件 hostapd.conf

    有的要去掉IPV6,因为有的嵌入式设备不支持IPV6也没有这个环境,执行程序时会报 ‘in6addr_any’ 的错

    #CONFIG_IPV6=y 
    

    二.Managed(STA)模式

    1.首先启动wpa_supplicant服务

    wpa_supplicant  -B -Dwext -iwlan0 -c /etc/wpa_supplicant.conf
    

    wpa_supplicant命令的参数如下:

    drivers:
      wext = Linux wireless extensions (generic)
    options:
      -b = optional bridge interface name
      -B = run daemon in the background
      -c = Configuration file
      -C = ctrl_interface parameter (only used if -c is not)
      -i = interface name
      -d = increase debugging verbosity (-dd even more)
      -D = driver name (can be multiple drivers: nl80211,wext)
      -g = global ctrl_interface
      -K = include keys (passwords, etc.) in debug output
      -t = include timestamp in debug messages
      -h = show this help text
      -L = show license (GPL and BSD)
      -o = override driver parameter for new interfaces
      -O = override ctrl_interface parameter for new interfaces
      -p = driver parameters
      -P = PID file
      -q = decrease debugging verbosity (-qq even less)
      -v = show version
      -W = wait for a control interface monitor before starting
      -N = start describing new interface
    example:
      wpa_supplicant -Dwext -iwlan0 -c/etc/wpa_supplicant.conf
    

    /etc/wpa_supplicant.conf这个文件就是我们保存的wifi账号和密码,其实在Android手机中如果要看你连接过的WiFi和密码,就是看这个文件
    内容如下:

    ctrl_interface=/var/run/wpa_supplicant
    eapol_version=1
    ap_scan=1
    fast_reauth=1
    blob-base64-exampleblob={
    SGVsbG8gV29ybGQhCg==
    }
    
    network={
       ssid="wifi_test"
       scan_ssid=1
       psk="1234567890"
       priority=5
    }
    

    2.启动客户服务程序wpa_cli连接网络

    wpa_cli 这个程序相对复杂一点,参数比较多,命令更多,这里只列出常用的这几个

    wpa_cli [-p<path to ctrl sockets>] [-i<ifname>] [-hvB] [-a<action file>] \
    [-P<pid file>] [-g<global ctrl>] [-G<ping interval>]  [command..]
      -h = help (show this usage text)
      -v = shown version information
      -a = run in daemon mode executing the action file based on events from
       wpa_supplicant
      -B = run a daemon in the background
      default path: /var/run/wpa_supplicant
      default interface: first interface found in socket path
    commands:
      scan = request new BSS scan
      scan_results = get latest scan results
      add_network = add a network
      select_network <network id> = select a network (disable others)
      enable_network <network id> = enable a network
      disable_network <network id> = disable a network
      remove_network <network id> = remove a network
      
      set_network <network id> <variable> <value> = set network variables (shows
    list of variables when run without arguments)
    

    wpa_cli是可以进入交互模式,在这中可以通过命令来连接网络和具体配置,但是一般的,我们都是直接使用命令,放在脚本或程序中去执行的

    #wpa_cli
    >add_network  (It will display a network id for you, assume it returns 0)
    >set_network 0 ssid "wifi_test"
    >set_network 0 key_mgmt NONE
    >enable_network 0
    >quit
    

    1.扫描网络

    scan是扫描网络
    scan_results 是列出扫描的网络状态列表

    wpa_cli -iwlan0 -p /var/run/wpa_supplicant scan
    wpa_cli -iwlan0 -p /var/run/wpa_supplicant scan_reault
    

    这两句一般是连着使用

    2.添加网络

    然后就是使用add_network添加一个网络

    wpa_cli -iwlan0 -p /var/run/wpa_supplicant add_network
    

    这里会返回一个ID,后边的操作都是用这个ID去识别的这里假设是0

    3.设置网络

    之后就是去操作新添加的这个网络,从而完成联网操作
    set_network 是设置网络的相关信息,如ssid,加密方式及密码

    如果要连接加密方式是[WPA-PSK-CCMP+TKIP][WPA2-PSK-CCMP+TKIP][ESS] (wpa加密)

    wpa_cli -iwlan0 -p /var/run/wpa_supplicant set_network 0 ssid '"name"'
    wpa_cli -iwlan0 -p /var/run/wpa_supplicant set_network 0 psk '"psk"'
    

    如果要连接加密方式是[WEP][ESS] (wep加密),wifi名称是name,wifi密码是wep_key0

    wpa_cli -iwlan0 -p /var/run/wpa_supplicant set_network 0 ssid '"name"'
    wpa_cli -iwlan0 -p /var/run/wpa_supplicant set_network 0 key_mgmt NONE
    wpa_cli -iwlan0 -p /var/run/wpa_supplicant set_network 0 wep_key0 '"psk"'
    

    如果要连接加密方式是[ESS] (无加密),wifi名称是name

    wpa_cli -iwlan0 -p /var/run/wpa_supplicant set_network 0 ssid '"name"'
    wpa_cli -iwlan0 -p /var/run/wpa_supplicant set_network 0 key_mgmt NONE
    

    4.连接网络

    wpa_cli -iwlan0 -p /var/run/wpa_supplicant select_network 0
    wpa_cli -iwlan0 -p /var/run/wpa_supplicant enable_network 0
    

    5.断开连接

    wpa_cli -iwlan0 -p /var/run/wpa_supplicant disable_network 0
    wpa_cli -iwlan0 -p /var/run/wpa_supplicant remove_network 0
    

    6.获取IP

    可以使用udhcpc自动获取IP也可以手动配置固定IP

    udhcpc -i wlan0 -q
    或
    ifconfig wlan0 192.168.101.12
    

    三.Master(AP)模式

    1.启动hostapd

    hostapd是一个用户态用于AP和认证服务器的守护进程,Linux下支持的驱动有:Host AP,madwifi,基于mac80211的驱动

    usage: hostapd [-hdBKtv] [-P <PID file>] <configuration file(s)>
    
    options:
       -h   show this usage
       -d   show more debug messages (-dd for even more)
       -B   run daemon in the background
       -P   PID file
       -K   include key data in debug messages
       -t   include timestamps in some debug messages
       -v   show hostapd version
    
    hostapd -d /etc/hostapd.conf -B
    

    hostapd.conf配置文件如下,这个文件中的内容也比较多,但是很多都是默认的,详细的可以看源码中提供的hostapd.conf

    ##### hostapd configuration file ##############################################
    interface=wlan0
    ctrl_interface=/var/run/hostapd
    ssid=LP_WIFI
    channel=6
    wpa=2
    wpa_passphrase=963852741
    #bridge=br0
    
    ##### default configuration #######################################
    driver=rtl871xdrv
    beacon_int=100
    hw_mode=g
    ieee80211n=1
    wme_enabled=1
    ht_capab=[SHORT-GI-20][SHORT-GI-40][HT40+]
    wpa_key_mgmt=WPA-PSK
    wpa_pairwise=CCMP
    max_num_sta=8
    wpa_group_rekey=8640
    

    开启hostapd让模块工作在AP模式,开启后其他设备能够搜索到该热点,但是无法获取到IP地址,仍然无法连接
    此时就需要启动udhcpd服务(这是嵌入式设备上的,PC上应该是dhcp),用于分配IP地址

    2.启动udhcpd

    该程序在busybox编译的时候可以配置生成的,如果没有则需要编译源码来移植该程序
    下载 udhcp-0.9.8.tar.gz
    修改Makefile
    CROSS_COMPILE=arm-linux
    make
    即可编译得到udhcpc 和udhcpd
    复制源码下的 samples/udhcpd.conf 到ARM板/etc/udhcpd.conf下

    基本配置如下,具体上网的IP、DNS这些都在这里修改

    # The start and end of the IP lease block
    
    start   192.168.0.20#default: 192.168.0.20
    end     192.168.0.254   #default: 192.168.0.254
    
    # The interface that udhcpd will use
    
    interface   wlan0   #default: eth0
    
    #Examles
    opt router  192.168.0.1
    opt dns 192.168.10.2 192.168.10.10
    option  subnet  255.255.255.0
    #optwins192.168.10.10
    option  dns 129.219.13.81   # appened to above DNS servers for a total of 3
    option  domain  local
    option  lease   864000  # 10 days of seconds
    

    配置完之后,在板子上执行udhcpd就可以了

    udhcpd & 
    

    我写的启动AP服务的脚本:

    insmod /opt/vendor/8188eu.ko
    sleep 2
    
    ifconfig wlan0 up
    ifconfig wlan0 192.168.0.1
    hostapd -d /etc/hostapd.conf -B
    touch /var/lib/misc/udhcpd.leases
    udhcpd &
    

    这里的192.168.0.1 这个IP是等于当前wlan0的IP

    四.AP+STA模式

    在嵌入式设备中使用时往往是需要WiFi模块既能上网也能做一个热点,可能用于web配置,或者控制一些子模块,就像物联网的一些WiFi芯片ESP32、ESP8266
    而且在安卓手机中很多的设备也是同时支持者两种模式的(后期很多厂家给阉割了)
    所以WiFi模块同事支持这两种工作模式还是很有必要的

    其实也很简单,只需要修改驱动配置文件,重新编译ko文件即可

    1.修改驱动程序

    修改驱动配置文件

    vi include/autoconf.h
    找到如下部分,并修改
    //#define CONFIG_CONCURRENT_MODE 
    #ifdef CONFIG_CONCURRENT_MODE
    //#define CONFIG_HWPORT_SWAP//Port0->Sec , Port1 -> Pri
    #define CONFIG_RUNTIME_PORT_SWITCH
    //#define DBG_RUNTIME_PORT_SWITCH
    #define CONFIG_STA_MODE_SCAN_UNDER_AP_MODE
    #define CONFIG_TSF_RESET_OFFLOAD// For 2 PORT TSF SYNC.
    #endif
    
    修改如下:
    #define CONFIG_CONCURRENT_MODE 1
    #ifdef CONFIG_CONCURRENT_MODE
    	#define CONFIG_HWPORT_SWAP  //Port0->Sec , Port1 ->Pri 
    	#define CONFIG_RUNTIME_PORT_SWITCH
    	//#define DBG_RUNTIME_PORT_SWITCH
    	#define CONFIG_STA_MODE_SCAN_UNDER_AP_MODE
    	#define CONFIG_TSF_RESET_OFFLOAD1   // For 2 PORT TSF SYNC.
    #endif
    

    重新加载8188eu.ko模块后,内核中就会多一个设备节点wlan1(安卓可能是p2p0),如果没有请使用ifconfig

    ifconfig wlan0 up
    ifconfig wlan1 up
    

    如果还没有,说明你的驱动文件编译的有问题,还是没有支持共存
    在之前AP和STA模式工作的时候都是使用接口wlan0,所以两个模式是不可能共存,要能共存,必须要让内核虚拟出更多的设备节点,其实底层的物理硬件是同一个,这里就是驱动做的事了

    2.修改配置文件

    当有了wlan1后,我们就让station模式在wlan0上干活,让AP模式在wlan1上工作
    所以这里就要修改AP模式的两个配置文件

    修改之前使用的两个配置文件,将wlan0修改成wlan1即可
    /etc/hostapd.conf
    interface=wlan1
    
    /etc/udhcpd.conf
    interface   wlan1   #default: eth0
    
    然后脚本也得改改
    insmod /opt/vendor/8188eu.ko
    sleep 2
    
    ifconfig wlan0 up
    ifconfig wlan1 up
    ifconfig wlan1 192.168.0.1
    hostapd -d /etc/hostapd.conf -B
    touch /var/lib/misc/udhcpd.leases
    udhcpd &
    
    展开全文
  • 1、 wpa_supplicant介绍 supplicant是恳求者的意思,是wpa的发起者,是发送认证请求的设备(手机),手机——AP——认证服务器,可用于上述4种"认证/加密" 2、wpa_supplicant应用程序的编译与使用(阅读...

    1、  wpa_supplicant介绍

    supplicant是恳求者的意思,是wpa的发起者,是发送认证请求的设备(手机),手机——AP——认证服务器可用于上述4种"认证/加密"


    2、wpa_supplicant应用程序的编译与使用(阅读README文件)

    (1) 先编译它的依赖libopenssl
    tar xzf openssl-1.0.1d.tar.gz

    cd openssl-1.0.1d/

    第一类是全局性选项:

    --openssldir=OPENSSLDIR
    安装目录,默认是 /usr/local/ssl 。
    --prefix=PREFIX
    设置 lib include bin 目录的前缀,默认为 OPENSSLDIR 目录。
    --install_prefix=DESTDIR
    设置安装时以此目录作为"根"目录,通常用于打包,默认为空。
    zlib
    zlib-dynamic
    no-zlib
    使用静态的zlib压缩库、使用动态的zlib压缩库、不使用zlib压缩功能。
    threads
    no-threads
    是否编译支持多线程的库。默认支持。
    shared
    no-shared
    是否生成动态连接库。
    asm
    no-asm
    是否在编译过程中使用汇编代码加快编译过程。
    //配置  shared是指生成动态链接库,因为没加此项前生成的都是静态库文件。no-asm是指不使用里面的汇编代码,里面的汇编代码是给x86特别优化的 ./config shared no-asm --prefix=$PWD/tmp
    修改Makefile:  (加上sudo权限修改,才能修改成功)
    CC= arm-linux-gcc(交叉编译)
    AR= arm-linux-ar $(ARFLAGS) r
    RANLIB= arm-linux-ranlib
    NM= arm-linux-nm
    MAKEDEPPROG= arm-linux-gcc

    //编译

    make

    //安装

    make install
    安装:(把编译处理的头文件和库文件复制到工具链那里)
    把编译出来的头文件应该放入:
    /usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/usr/include


    把编译出来的库文件应该放入:
    /usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/armv4t/lib


    把编译出来的库文件应该放入NFS文件系统的lib目录:
    /work/nfs_root/fs_mini_mdev_new/lib




    (2)要有一个配置文件.config
    tar xzf wpa_supplicant-2.0.tar.gz 
    cd wpa_supplicant-2.0/wpa_supplicant/
    cp defconfig .config
    修改.config加上一行: CONFIG_LIBNL32=y
    修改Makefile:
    CC=arm-linux-gcc(使用交叉编译)

    //编译

    make CC=arm-linux-gcc     (在我的编译环境下,要指定编译条件,才能编译成arm环境下的文件;韦老师的直接make的方法,在我的环境下行不通,直接使用make,在我的环境下会编译出PC上运行的文件!就算修改makefile文件也不行)

    make(make log.txt 2>&1这句话是指编译输出的信息会存入log.txt,错误的信息也会存入第一个文件(log.txt))

    //指定安装路径(DESTDIR=$PWD/tmp指目的目录等于当前目录下的tmp

    make DESTDIR=$PWD/tmp install

    把生成的应用程序拷贝到网络文件系统的bin目录下面

    cp tmp/usr/local/sbin/ work/nfs_root/fs_mini_mdev_new/bin/

    启动开发板 

    3、使用:(查看wpa_supplicant的README文件

    参数使用


    这里-p是直接创建相关的目录,如目录run本来是没有的,但是要创建wap_supplicant,这样会先创建run目录,再在run目录下创建wpa_supplicant

    mkdir -p /var/run/wpa_supplicant

    注意:配置文件来源于/work/projects/wifi/wap_supplicant/wap_supplicant-2.0/wap_supplicant/examples里的.config文件,复制到网络文件系统的/etc目录下

    ① OPEN

    //-B是指应用程序wpa_supplicant运行于后台,-c是指定配置文件, -i是指定网卡接口名

    wpa_supplicant -B -c/etc/plaintext.conf -iwlan0

    查看网卡wlan0的状态

    wpa_cli -iwlan0 status // 查看状态

    配置网卡IP

    ifconfig wlan0 192.168.1.55

    ping网关,若能ping通,表明配置网卡IP成功

    ping 192.168.1.1


    配置文件/etc/plaintext.conf内容为:

    ctrl_interface=/var/run/wpa_supplicant

    //network表示连接哪个网络

    network={

            ssid="dswei" //AP名

            key_mgmt=NONE//指认证的方法

    }


    配置文件的写法是参考 wpa_supplicant-2.0/wpa_supplicant/examples文件夹下面的。
    关于配置文件的详细解释,在wpa_supplicant-2.0/wpa_supplicant/ wpa_supplicant.conf 里 有详细介绍。


    killall wap_supplicant  killall用于杀死指定名字的进程(kill processes by name)。

    ifconfig wlan0 down 关闭网卡0

    ② WEP/WEP
    wpa_supplicant -B -c/etc/wep.conf  -iwlan0
    wpa_cli -iwlan0 status  // 查看状态
    ifconfig wlan0 192.168.1.55
    ping 192.168.1.1


    配置文件/etc/wep.conf:

    ctrl_interface=/var/run/wpa_supplicant
    network={
            ssid="dswei"
            key_mgmt=NONE //使用open或wep的认证方式
            wep_key0="baiwenwang123"  //密码(5个字符或13个字符)
            wep_tx_keyidx=0 //表示使用哪一个密码,现在使用第0个密码
    }


    ③WPA(TKIP)
    wpa_supplicant -B -c/etc/wpa-psk-tkip.conf  -iwlan0
    wpa_cli -iwlan0 status  // 查看状态
    ifconfig wlan0 192.168.1.55
    ping 192.168.1.1


    配置文件/etc/wpa-psk-tkip.conf
    ctrl_interface=/var/run/wpa_supplicant  # 一个目录,用于wpa_supplicant和wpa_cli的socket通信,用作wap_cli查看应用程序wpa_supplicant状态
    network={
            ssid="dswei"
            proto=WPA  # proto: list of accepted protocols, 可取WPA,RSN
                       # If not set, this defaults to: WPA RSN

            key_mgmt=WPA-PSK # 认证方式(PSK是指把密码放在无线AP那里)
                             # If not set, this defaults to: WPA-PSK WPA-EAP
            pairwise=TKIP    # If not set, this defaults to: CCMP TKIP
            group=TKIP       # If not set, this defaults to: CCMP TKIP WEP104 WEP40 
            psk="baiwenwang12"  #密码
    }


    ④ WPA2(AES) 

    配置文件来源:cp /etc/wpa-psk-tkip.conf  /etc/wpa_wpa2.conf

    wpa_supplicant -B -c/etc/wpa_wpa2.conf -iwlan0
    wpa_cli -iwlan0 status  // 查看状态
    ifconfig wlan0 192.168.1.55
    ping 192.168.1.1


    配置文件/etc/wpa_wpa2.conf
    ctrl_interface=/var/run/wpa_supplicant
    network={
            ssid="dswei"
            psk="baiwenwang123"
    }


    另:

    wpa_cli可工作于"命令模式"和"交互模式"

    命令模式:wpa_cli -iwlan0 status 

                     wpa_cli -iwlan0 scan_results 查看扫描的无线AP结果

    交互模式:直接执行wpa_cli命令,可执行其他命令,输入quit命令退出



    ⑤ 配置文件/etc/wpa_wpa2.conf里设置多个network:
    ctrl_interface=/var/run/wpa_supplicant
    network={
            ssid="dswei"
            psk="baiwenwang123"
    }
    network={
            ssid="Programer"
            psk="baiwenwang"
    }


    ⑥ 访问外网:
    man resolv.conf查看格式修改/etc/resolv.conf(在服务器上的)添加DNS:(DNS是域名服务器,把网址)
    nameserver 192.168.1.1


    设置网关:
    route add default gw 192.168.1.1


    展开全文
  • 目前您可以使用我们提供的wireless-tools 或wpa_supplicant工具来配置无线网络。请记住重要的一点是,您对无线网络的配置是全局性的,而非针对具体的接口。 wpa_supplicant是一个最好的选择,但缺点是它不支持所有...
  • WPA当前分为WPAWPA2和最近发布的WPA3 3个版本,最初的WPA协议实现了IEEE 802.11i标准草案,并且由于有线等效保密(WEP)协议中的安全缺陷而引入了WPA协议。 WPA当前分为WPAWPA2和最近发布的WPA3 3个版本...
  • Openwrt无线客户端 连接时如果只装Hostapd 做为AP模式 可以使用WPA2加密如果做为客户端加密便需要 用到wpa-supplicant编译环境makemenuconfig按 / 后 搜索 找到位置并添加hostapd AP模式 WPA/WPA2支持wpa-supplicant...
  • $ su - // 进入 root 用户模式 $ ip link 可以看到 wlp2s0 网卡已经开启,如果没有开启,则 MULTICAST 之后没有 UP。 如果没有开启,则: $ ip link set wlp2s0 up 搜索附近 wifi 的名称: $ iwlist wlp2s0 scan ...
  • WEP/WPA/WPA2/WPA3初识

    万次阅读 2019-12-18 16:39:03
    简单概括: WPA = IEEE 802.11i draft 3 = IEEE 802.1X/EAP + WEP(选择性项目)/TKIP WPA2 = IEEE 802.11i = IEEE 802.1X/EAP + WEP(选择性项目)/TKIP/CCMP 一度认为是100%安全的WPA2加密模式,目前也被认为是极度的...
  • 本文将介绍如何使用wpa_supplicant服务程序和wpa_cli客户端程序,让嵌入式设备的WIFI模块工作在station模式并连接网络,以及如何使用hostapd和udhcpd创建一个WIFI热点,并且解决如何让这两种工作模式共存。...
  • 思科CISCO无线AP配置WAP2加密方式
  • 后来当把路由器的加密模式设置为 WPA/WPA2-PSK的时候,发现已经无法连接无线网络了,原因是当使用 WPA/WPA2-PSK 加密模式之后客户端不能直接发送明文密码,而是要使用加密之后的密码,既然我们知道了原因我们该怎么...
  • WPA3

    千次阅读 2020-10-10 17:12:40
    WPA3在WPA2的基础上,增强了个人和企业网络中的安全保护。WPA3包括下面几种认证方式: WPA3: Simultaneous Authentication of Equals (SAE). WPA3: 192‑bit cryptographic strength security protocol defined in ...
  • 无线网络的加密方式:WEP、WPAWPA2

    万次阅读 2018-10-23 22:16:30
    WPA-PSK/WPA2-PSK 无线网标准 有线等效加密( WEP )  有线等效保密( WEP )是世界上使用最广泛的 Wi-Fi 安全算法。因为历史的缘故,以及向后兼容的原因,很多路由器的控制面板中,用户会发现该算法位于加密...
  • WPA/WPA2加密分析

    千次阅读 2020-01-04 21:15:36
    文章目录综述WPA加密方式分析密码字典攻击破解WPA-PSKwiresharkcowpatty加快WPA/WPA2 PSK加快速度解密WPA数据包 综述 WPA主要采用的是 临时密钥完整性协议(TKIP1) 加密算法,TKIP 旨在改进WEP,且无需依赖全新硬件来...
  • 我正在使用wpa_supplicant创建一个访问点:wpa_supplicant -D nl80211 -i wlan0 -c /etc/wpa_supplicant_ap.conf问题是当在接入点配置设备时,我不允许扫描网络:iw devwlan0 scan command failed: Invalid argument ...
  • openwrt 19.07默认支持WPA3 ...透过ubus查看支持的模式 root@OpenWrt:/# ubus call luci getFeatures { "ipv6": true, "wpasupplicant": { "11ac": true, "11r": true, "owe": false, "acs": true, .
  • WPA_Suppliant简介

    2020-02-25 20:54:43
    WPA_Supplicant:开源项目源码、它主要是用来支持WEP,WPA/WPA2无线协议和加密认证的,而实际上的工作内容是通过与驱动交互上报数据给用户而用户可以通过socket发送命令给wpa_supplicant调动驱动来对WiFi芯片操作。...
  • 如何使用wpa_supplicant及wpa_cli 创建p2p

    千次阅读 2021-06-03 17:18:15
    如何使用wpa_supplicant及wpa_cli 创建p2p1. p2p_connect 方式协商P2P1.1 PIN码方式加入1.2 PBC方式加入1.2 PBC方式加入2. p2p_group_add 方式提前创建Group 组2.1 PBC方式加入2.2 PIN码方式加入(from GO)2.3 PIN码...
  • WPA3:四大安全新特性技术分析

    千次阅读 2020-12-30 23:20:25
    周一晚些时候,包括苹果、思科、英特尔、高通和微软等科技巨头在内的 Wi-Fi 联盟正式推出了新的 Wi-Fi 安全标准 WPA3。这个标准将解决所有已知的、会影响重要标准的安全问题,同时还针对 KRACK 和 DEAUTH 等无线攻击...
  • 【Kali】WPA / WPA2破解

    千次阅读 2020-05-26 20:29:15
    文章目录WPA / WPA2简介攻击WPA使用Aircrack-ng进行WPA破解用Cowpatty进行WPA破解使用GPU进行WPA破解PyritOclHashcatWifite WPA / WPA2简介       WPA / WPA2是Wi-Fi联盟开发的两个不同版本的...
  • 目前可以使用wireless-tools或wpa_supplicant工具来配置无线网络。请记住重要的一点是,对无线网络的配置是全局性的,而非针对具体的接口。wpa_supplicant是一个较好的选择,但缺点是它不支持所有的驱动。请浏览wpa_...
  • wifi加密方式WPAWPA2的区别

    千次阅读 2020-03-29 23:47:57
    (1)WEP、WAP、WPA2加密: WEP 是1999年9月通过的 IEEE 802.11 标准的一部分,使用 RC4(Rivest Cipher) 串流加密技术达到机密性,并使用 CRC-32 校验和达到资料正确性。在 2001年8月,RC4加密方式被破解,WEP加密...
  • 原文请见:http://blog.163.com/wxiongn@126/blog/static/11788203820102262748358/wpa_supplicant无线网络配置2010-04-06 13:06:33|分类:默认分类|字号订阅目前可以使用wireless-tools或wpa_supplicant工具来配置...
  • wpa_supplicant/main.c main()适用于UNIX和Windows操作系统,使用命令参数来配置wpa_supplicant events.c 驱动事件处理 wpa_supplicant_event() 相关功能 wpa_supplicant_i.h wpa_supplicant核心接口定义...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 10,862
精华内容 4,344
关键字:

wpa模式