hostapd是一个带加密功能的无线接入点程序,是Linux操作系统上构件无线接入点的一个比较方便的工具,支持IEEE 802.11协议和IEEE 802.1X/WPA/WPA2/EAP/RADIUS加密。

对于 hostapd,最关键的一步就是配置hostapd的配置文件了。源程序里面包含了一个hostapd.conf文件(选项解释),这个文件很大,里面的配置项相当的多,从简单到高级。但一般地我们能够使用到的功能只是其中很少的一部分,下面介绍一下我认为最常用的一些配置选项。首先介绍一些基本的配置项:

-------------------------------------- 基本配置 如下: -----------------------------------------

ssid=mytest
hw_mode=g
channel=10
interface=wlan0
bridge=br0
driver=nl80211
ignore_broadcast_ssid=0
macaddr_acl=0
accept_mac_file=/etc/hostapd.accept
deny_mac_file=/etc/hostapd.deny

-------------------------------------------------------------------------------

上面列出的配置基本上是必须的,其中:

  • ssid:别人所看到的我们这个无线接入点的名称;
  • hw_mode:指定802.11协议,包括 a = IEEE 802.11a, b = IEEE 802.11b, g = IEEE 802.11g;
  • channel:设定无线频道;
  • interface:接入点设备名称,注意不要包含ap后缀,即如果该设备称为wlan0ap,填写wlan0即可;
  • bridge:指定所处网桥,对于一个同时接入公网、提供内部网和无线接入的路由器来说,设定网桥很有必要;
  • driver:设定无线驱动,我这里是nl80211;
  • macaddr_acl:可选,指定MAC地址过滤规则,0表示除非在禁止列表否则允许,1表示除非在允许列表否则禁止,2表示使用外部RADIUS服务器;
  • accept_mac_file:指定允许MAC列表文件所在;
  • deny_mac_file:指定禁止MAC列表文件所在;

下面介绍关于认证方式的配置:

auth_algs=1

其中auth_algs指定采用哪种认证算法,采用位域(bit fields)方式来制定,其中bit 0表示开放系统认证(Open System Authentication, OSA),bit 1 表示共享密钥认证(Shared Key Authentication, SKA)。我这里设置alth_algs的值为1,表示只采用OSA;如果为3则两种认证方式都支持。不过很奇怪的是,在我工作中如果配置了3,不管采用WEP/WPA/WP2加密的方式都从没连接成功过,配置为2也是如此。所以在我的配置当中,如果采用认证,则设置auth_algs为1;否则把这行代码注释掉(在前面加#)。

由于RADIUS认证需要提供外部RADIUS服务器,我们没有这个功能,因此我只研究了WEP、WPA和WPA2这三种加密方式。

#wep_default_key=0
#wep_key0=1234567890
#wep_key1="vwxyz"
#wep_key2=0102030405060708090a0b0c0d
#wep_key3=".2.4.6.8.0.23"
#wep_key_len_broadcast=13
#wep_key_len_unicast=13
#wep_rekey_period=300

如果要启用WEP加密,只需配置wep_default_key和其中一个wep_keyx,其中x的值只能在0~3之间,wep_default_key的值必须启用了。注意wep_keyx的值不是任意的,只能是5、13或16个字符(用双引号括住),或者是10、26或32个16进制数字。由于WEP加密算法已经被破解了,所以通常不启用它,全部注释掉。

wpa=2
wpa_passphrase=12345678
wpa_key_mgmt=WPA-PSK
#wpa_pairwise=TKIP CCMP
rsn_pairwise=CCMP

现在推荐的加密方式是WPA/WPA2,配置是很简单的:

  • wpa:指定WPA类型,这是一个位域值(bit fields),bit 0表示启用WPA,bit 1表示启用WPA2。在我的配置中,置成2 可以正常连接;
  • wpa_passphrase:WPA/WPA2加密需要指定密钥,这个选项就是配置WPA/WPA2的密钥。注意wpa_passphrase要求8~63个字符。另外还可以通过配置wpa_psk来制定密钥,不过要设置一个256位的16进制密钥,不适合我们的需求;
  • wpa_pairwise/rsn_pairwise:如果启用了WPA,需要指定wpa_pairwise;如果启用了WPA2,需要指定rsn_pairwise,或者采用wpa_pairwise的设定。都可以设定成TKIP、CCMP或者两者都有,具体含义我也没仔细弄清楚。
上述配置完成以后,在终端执行hostapd /etc/hostapd/hostapd.conf -B(-B是需要在后台运行的时候添加),到这里,怎表明了第一个过程结束了,
也就是,我们在手机终端上可以搜索到 mytest这个接入点,但是无法连接到这个接入,应该此时出现的情况是:正在获取IP地址,接下来给终端分配IP;

配置wifi为AP模式 -- 接入点hostapd基本配置相关推荐

  1. 【Ubuntu 】配置WIFI为 AP模式

    0,安装软件 apt-get install hostapdapt-get install isc-dhcp-server 1,编辑 /etc/network/interfaces # interfa ...

  2. Android KitKat 4.4 Wifi移植AP模式和网络共享的调试日志

    Tethering技术在移动平台上已经运用的越来越广泛了.它能够把移动设备当做一个接入点,其它的设备能够通过Wi-Fi.USB或是Bluetooth等方式连接到此移动设备.在Android中能够将Wi ...

  3. WiFi从ap模式修改为sta模式

    WiFi从ap模式修改为sta模式 基于Linux操作系统,瑞芯微rv1108处理器,使用的是ITM-UT15的WiFi模块. 系统上电后初始化的模式是ap模式. 1.需要在代码中找到相关的配置代码注 ...

  4. android 飞行模式 配置 wifi可用,飞行模式也能用Wi-Fi

    Android手机的飞行模式就是一竿子关闭包括通讯.Wi-Fi.蓝牙和NFC在内的所有无线功能.但有时我们只需飞行模式的省电,却又希望单独开启Wi-Fi,此时应该如何设置呢? 以OPPO手机为例,RO ...

  5. 无线linux应用及配置--wifi配置

    linux下应用wifi,AP侧运行程序hostapd,客户端运行wpa_supplicant.官网:http://w1.fi/. 无线网卡应用 无线网卡的应用服务程序为wpa_supplicant, ...

  6. SSD202 驱动WIFI-ssw01b的AP模式

    1 电路相关 复位芯片方法1 echo ON > /dev/wifi_reset echo OFF > /dev/wifi_reset 复位芯片方法2 echo 71 > /sys/ ...

  7. Android AP模式创建有/无密码热点

    1.用到的类(可以不用反射) WifiManager:控制wifi的状态监测和打开.关闭. WifiConfiguration:配置wifi的用户名.密码和加密方式等. KeyMgmt:设置加密的方式 ...

  8. ESP32设置AP模式与手机连接,并向手机发送数据

    说在前面的话:本文采用的是windows环境,工程是开源一小步之ESP32开发指南教程中的示例工程hx-tcp,主要是为了自己记录吧,如果有解决问题的注意一下.我在开发环境没问题的前提下进行了如下操作 ...

  9. imx6 linux wifi ap模式配置(usb-wifi模块rt3070)

    不是所有的usb-wif模块在linux下面都可以支持ap模式. 在linux下的ap模式是通过工具hostapd工具进行配置运行的,该工具一般使用nl80211协议驱动无线网卡ap模式的运行.所以一 ...

最新文章

  1. python异常处理的作用_python--异常处理
  2. python3.5 mysql 库_Python 3.5 连接Mysql数据库(pymysql 方式)
  3. UVa11452 Dancing the Cheeky-Cheeky(kmp)
  4. 2021-01-07 matlab数值分析 数值积分与数值微分 复合梯形公式 复合Simpson公式
  5. Flutter之Center
  6. oracle rman备份整库,RMAN备份恢复整个库
  7. mysql无法添加或更新子行_MySQL无法添加或更新子行
  8. 网络存储空间_网络存储服务器的三大分类,你都清楚吗?
  9. __nonnull((1)) 未完待续
  10. VC中树状控件(TreeCtrl)的用法
  11. 有人认为,“中文编程”是解决中国程序员效率的秘密武器,请问它是一个“银弹”么?...
  12. yum安装php解析,详解Centos下YUM安装PHP的两种方式
  13. SQLite:在Julia中判断一个表是否存在数据库中?
  14. mini2440的串口在Qt上实现
  15. 总结与归纳:深度神经网络中的数据融合方法
  16. Processing 入门教程(二十一) 利用数组产生雪花坠落效果
  17. vue.js提示Vue is not a constructor或Vue.createApp is not a function解决方法
  18. 电机控制器培训资料-《如何快准狠的标定永磁同步电机》 品牌:车用电机控制器
  19. Linux 实用指令 -- 网络配置(查看网络IP和网关、 ping 测试主机之间网络连通、Linux网络环境配置(指定固定ip))
  20. 短时傅里叶变换原理及其MATLAB实现(Short Time Fourier Transform,STFT)

热门文章

  1. VNC:Linux下的远程遥控专家
  2. qt android双系统,传华为P50系列手机将会搭载Android、鸿蒙双系统版本
  3. 联想i520java游戏_细节决定一切_联想 i520_手机Android频道-中关村在线
  4. win11如何修改ip地址
  5. 肯德基、必胜客中国部分餐厅限时推出植物肉汉堡;B站与《男人装》首次破圈合作 | 美通企业日报...
  6. 世界顶级的杀毒软件——比特梵德
  7. 快速解决:Xshell拖不进去文件夹或者软件包的问题
  8. dfgdfgadfadfgasga
  9. 有一种游戏(从妄撮谈起)
  10. 真正中文攻略之狼少女 辛希雅(シンシア)~Sincerely to You