802.11n: scan for overlapping BSSes before starting 20/40 MHz channel
[wpasupplicant] / hostapd / hostapd.conf
1 ##### hostapd configuration file ##############################################
2 # Empty lines and lines starting with # are ignored
3
4 # AP netdevice name (without 'ap' postfix, i.e., wlan0 uses wlan0ap for
5 # management frames); ath0 for madwifi
6 interface=wlan0
7
8 # In case of madwifi and nl80211 driver interfaces, an additional configuration
9 # parameter, bridge, must be used to notify hostapd if the interface is
10 # included in a bridge. This parameter is not used with Host AP driver.
11 #bridge=br0
12
13 # Driver interface type (hostap/wired/madwifi/prism54/test/none/nl80211/bsd);
14 # default: hostap). nl80211 is used with all Linux mac80211 drivers.
15 # Use driver=none if building hostapd as a standalone RADIUS server that does
16 # not control any wireless/wired driver.
17 # driver=hostap
18
19 # hostapd event logger configuration
20 #
21 # Two output method: syslog and stdout (only usable if not forking to
22 # background).
23 #
24 # Module bitfield (ORed bitfield of modules that will be logged; -1 = all
25 # modules):
26 # bit 0 (1) = IEEE 802.11
27 # bit 1 (2) = IEEE 802.1X
28 # bit 2 (4) = RADIUS
29 # bit 3 (8) = WPA
30 # bit 4 (16) = driver interface
31 # bit 5 (32) = IAPP
32 # bit 6 (64) = MLME
33 #
34 # Levels (minimum value for logged events):
35 #  0 = verbose debugging
36 #  1 = debugging
37 #  2 = informational messages
38 #  3 = notification
39 #  4 = warning
40 #
41 logger_syslog=-1
42 logger_syslog_level=2
43 logger_stdout=-1
44 logger_stdout_level=2
45
46 # Dump file for state information (on SIGUSR1)
47 dump_file=/tmp/hostapd.dump
48
49 # Interface for separate control program. If this is specified, hostapd
50 # will create this directory and a UNIX domain socket for listening to requests
51 # from external programs (CLI/GUI, etc.) for status information and
52 # configuration. The socket file will be named based on the interface name, so
53 # multiple hostapd processes/interfaces can be run at the same time if more
54 # than one interface is used.
55 # /var/run/hostapd is the recommended directory for sockets and by default,
56 # hostapd_cli will use it when trying to connect with hostapd.
57 ctrl_interface=/var/run/hostapd
58
59 # Access control for the control interface can be configured by setting the
60 # directory to allow only members of a group to use sockets. This way, it is
61 # possible to run hostapd as root (since it needs to change network
62 # configuration and open raw sockets) and still allow GUI/CLI components to be
63 # run as non-root users. However, since the control interface can be used to
64 # change the network configuration, this access needs to be protected in many
65 # cases. By default, hostapd is configured to use gid 0 (root). If you
66 # want to allow non-root users to use the contron interface, add a new group
67 # and change this value to match with that group. Add users that should have
68 # control interface access to this group.
69 #
70 # This variable can be a group name or gid.
71 #ctrl_interface_group=wheel
72 ctrl_interface_group=0
73
74
75 ##### IEEE 802.11 related configuration #######################################
76
77 # SSID to be used in IEEE 802.11 management frames
78 ssid=test
79
80 # Country code (ISO/IEC 3166-1). Used to set regulatory domain.
81 # Set as needed to indicate country in which device is operating.
82 # This can limit available channels and transmit power.
83 #country_code=US
84
85 # Enable IEEE 802.11d. This advertises the country_code and the set of allowed
86 # channels and transmit power levels based on the regulatory limits. The
87 # country_code setting must be configured with the correct country for
88 # IEEE 802.11d functions.
89 # (default: 0 = disabled)
90 #ieee80211d=1
91
92 # Operation mode (a = IEEE 802.11a, b = IEEE 802.11b, g = IEEE 802.11g,
93 # Default: IEEE 802.11b
94 hw_mode=a
95
96 # Channel number (IEEE 802.11)
97 # (default: 0, i.e., not set)
98 # Please note that some drivers (e.g., madwifi) do not use this value from
99 # hostapd and the channel will need to be configuration separately with
100 # iwconfig.
101 channel=60
102
103 # Beacon interval in kus (1.024 ms) (default: 100; range 15..65535)
104 beacon_int=100
105
106 # DTIM (delivery trafic information message) period (range 1..255):
107 # number of beacons between DTIMs (1 = every beacon includes DTIM element)
108 # (default: 2)
109 dtim_period=2
110
111 # Maximum number of stations allowed in station table. New stations will be
112 # rejected after the station table is full. IEEE 802.11 has a limit of 2007
113 # different association IDs, so this number should not be larger than that.
114 # (default: 2007)
115 max_num_sta=255
116
117 # RTS/CTS threshold; 2347 = disabled (default); range 0..2347
118 # If this field is not included in hostapd.conf, hostapd will not control
119 # RTS threshold and 'iwconfig wlan# rts <val>' can be used to set it.
120 rts_threshold=2347
121
122 # Fragmentation threshold; 2346 = disabled (default); range 256..2346
123 # If this field is not included in hostapd.conf, hostapd will not control
124 # fragmentation threshold and 'iwconfig wlan# frag <val>' can be used to set
125 # it.
126 fragm_threshold=2346
127
128 # Rate configuration
129 # Default is to enable all rates supported by the hardware. This configuration
130 # item allows this list be filtered so that only the listed rates will be left
131 # in the list. If the list is empty, all rates are used. This list can have
132 # entries that are not in the list of rates the hardware supports (such entries
133 # are ignored). The entries in this list are in 100 kbps, i.e., 11 Mbps = 110.
134 # If this item is present, at least one rate have to be matching with the rates
135 # hardware supports.
136 # default: use the most common supported rate setting for the selected
137 # hw_mode (i.e., this line can be removed from configuration file in most
138 # cases)
139 #supported_rates=10 20 55 110 60 90 120 180 240 360 480 540
140
141 # Basic rate set configuration
142 # List of rates (in 100 kbps) that are included in the basic rate set.
143 # If this item is not included, usually reasonable default set is used.
144 #basic_rates=10 20
145 #basic_rates=10 20 55 110
146 #basic_rates=60 120 240
147
148 # Short Preamble
149 # This parameter can be used to enable optional use of short preamble for
150 # frames sent at 2 Mbps, 5.5 Mbps, and 11 Mbps to improve network performance.
151 # This applies only to IEEE 802.11b-compatible networks and this should only be
152 # enabled if the local hardware supports use of short preamble. If any of the
153 # associated STAs do not support short preamble, use of short preamble will be
154 # disabled (and enabled when such STAs disassociate) dynamically.
155 # 0 = do not allow use of short preamble (default)
156 # 1 = allow use of short preamble
157 #preamble=1
158
159 # Station MAC address -based authentication
160 # Please note that this kind of access control requires a driver that uses
161 # hostapd to take care of management frame processing and as such, this can be
162 # used with driver=hostap or driver=nl80211, but not with driver=madwifi.
163 # 0 = accept unless in deny list
164 # 1 = deny unless in accept list
165 # 2 = use external RADIUS server (accept/deny lists are searched first)
166 macaddr_acl=0
167
168 # Accept/deny lists are read from separate files (containing list of
169 # MAC addresses, one per line). Use absolute path name to make sure that the
170 # files can be read on SIGHUP configuration reloads.
171 #accept_mac_file=/etc/hostapd.accept
172 #deny_mac_file=/etc/hostapd.deny
173
174 # IEEE 802.11 specifies two authentication algorithms. hostapd can be
175 # configured to allow both of these or only one. Open system authentication
176 # should be used with IEEE 802.1X.
177 # Bit fields of allowed authentication algorithms:
178 # bit 0 = Open System Authentication
179 # bit 1 = Shared Key Authentication (requires WEP)
180 auth_algs=3
181
182 # Send empty SSID in beacons and ignore probe request frames that do not
183 # specify full SSID, i.e., require stations to know SSID.
184 # default: disabled (0)
185 # 1 = send empty (length=0) SSID in beacon and ignore probe request for
186 #     broadcast SSID
187 # 2 = clear SSID (ASCII 0), but keep the original length (this may be required
188 #     with some clients that do not support empty SSID) and ignore probe
189 #     requests for broadcast SSID
190 ignore_broadcast_ssid=0
191
192 # TX queue parameters (EDCF / bursting)
193 # default for all these fields: not set, use hardware defaults
194 # tx_queue_<queue name>_<param>
195 # queues: data0, data1, data2, data3, after_beacon, beacon
196 #               (data0 is the highest priority queue)
197 # parameters:
198 #   aifs: AIFS (default 2)
199 #   cwmin: cwMin (1, 3, 7, 15, 31, 63, 127, 255, 511, 1023)
200 #   cwmax: cwMax (1, 3, 7, 15, 31, 63, 127, 255, 511, 1023); cwMax >= cwMin
201 #   burst: maximum length (in milliseconds with precision of up to 0.1 ms) for
202 #          bursting
203 #
204 # Default WMM parameters (IEEE 802.11 draft; 11-03-0504-03-000e):
205 # These parameters are used by the access point when transmitting frames
206 # to the clients.
207 #
208 # Low priority / AC_BK = background
209 #tx_queue_data3_aifs=7
210 #tx_queue_data3_cwmin=15
211 #tx_queue_data3_cwmax=1023
212 #tx_queue_data3_burst=0
213 # Note: for IEEE 802.11b mode: cWmin=31 cWmax=1023 burst=0
214 #
215 # Normal priority / AC_BE = best effort
216 #tx_queue_data2_aifs=3
217 #tx_queue_data2_cwmin=15
218 #tx_queue_data2_cwmax=63
219 #tx_queue_data2_burst=0
220 # Note: for IEEE 802.11b mode: cWmin=31 cWmax=127 burst=0
221 #
222 # High priority / AC_VI = video
223 #tx_queue_data1_aifs=1
224 #tx_queue_data1_cwmin=7
225 #tx_queue_data1_cwmax=15
226 #tx_queue_data1_burst=3.0
227 # Note: for IEEE 802.11b mode: cWmin=15 cWmax=31 burst=6.0
228 #
229 # Highest priority / AC_VO = voice
230 #tx_queue_data0_aifs=1
231 #tx_queue_data0_cwmin=3
232 #tx_queue_data0_cwmax=7
233 #tx_queue_data0_burst=1.5
234 # Note: for IEEE 802.11b mode: cWmin=7 cWmax=15 burst=3.3
235 #
236 # Special queues; normally not user configurable
237 #
238 #tx_queue_after_beacon_aifs=2
239 #tx_queue_after_beacon_cwmin=15
240 #tx_queue_after_beacon_cwmax=1023
241 #tx_queue_after_beacon_burst=0
242 #
243 #tx_queue_beacon_aifs=2
244 #tx_queue_beacon_cwmin=3
245 #tx_queue_beacon_cwmax=7
246 #tx_queue_beacon_burst=1.5
247
248 # 802.1D Tag to AC mappings
249 # WMM specifies following mapping of data frames to different ACs. This mapping
250 # can be configured using Linux QoS/tc and sch_pktpri.o module.
251 # 802.1D Tag    802.1D Designation      Access Category WMM Designation
252 # 1             BK                      AC_BK           Background
253 # 2             -                       AC_BK           Background
254 # 0             BE                      AC_BE           Best Effort
255 # 3             EE                      AC_VI           Video
256 # 4             CL                      AC_VI           Video
257 # 5             VI                      AC_VI           Video
258 # 6             VO                      AC_VO           Voice
259 # 7             NC                      AC_VO           Voice
260 # Data frames with no priority information: AC_BE
261 # Management frames: AC_VO
262 # PS-Poll frames: AC_BE
263
264 # Default WMM parameters (IEEE 802.11 draft; 11-03-0504-03-000e):
265 # for 802.11a or 802.11g networks
266 # These parameters are sent to WMM clients when they associate.
267 # The parameters will be used by WMM clients for frames transmitted to the
268 # access point.
269 #
270 # note - txop_limit is in units of 32microseconds
271 # note - acm is admission control mandatory flag. 0 = admission control not
272 # required, 1 = mandatory
273 # note - here cwMin and cmMax are in exponent form. the actual cw value used
274 # will be (2^n)-1 where n is the value given here
275 #
276 wme_enabled=1
277 #
278 # Low priority / AC_BK = background
279 wme_ac_bk_cwmin=4
280 wme_ac_bk_cwmax=10
281 wme_ac_bk_aifs=7
282 wme_ac_bk_txop_limit=0
283 wme_ac_bk_acm=0
284 # Note: for IEEE 802.11b mode: cWmin=5 cWmax=10
285 #
286 # Normal priority / AC_BE = best effort
287 wme_ac_be_aifs=3
288 wme_ac_be_cwmin=4
289 wme_ac_be_cwmax=10
290 wme_ac_be_txop_limit=0
291 wme_ac_be_acm=0
292 # Note: for IEEE 802.11b mode: cWmin=5 cWmax=7
293 #
294 # High priority / AC_VI = video
295 wme_ac_vi_aifs=2
296 wme_ac_vi_cwmin=3
297 wme_ac_vi_cwmax=4
298 wme_ac_vi_txop_limit=94
299 wme_ac_vi_acm=0
300 # Note: for IEEE 802.11b mode: cWmin=4 cWmax=5 txop_limit=188
301 #
302 # Highest priority / AC_VO = voice
303 wme_ac_vo_aifs=2
304 wme_ac_vo_cwmin=2
305 wme_ac_vo_cwmax=3
306 wme_ac_vo_txop_limit=47
307 wme_ac_vo_acm=0
308 # Note: for IEEE 802.11b mode: cWmin=3 cWmax=4 burst=102
309
310 # Static WEP key configuration
311 #
312 # The key number to use when transmitting.
313 # It must be between 0 and 3, and the corresponding key must be set.
314 # default: not set
315 #wep_default_key=0
316 # The WEP keys to use.
317 # A key may be a quoted string or unquoted hexadecimal digits.
318 # The key length should be 5, 13, or 16 characters, or 10, 26, or 32
319 # digits, depending on whether 40-bit (64-bit), 104-bit (128-bit), or
320 # 128-bit (152-bit) WEP is used.
321 # Only the default key must be supplied; the others are optional.
322 # default: not set
323 #wep_key0=123456789a
324 #wep_key1="vwxyz"
325 #wep_key2=0102030405060708090a0b0c0d
326 #wep_key3=".2.4.6.8.0.23"
327
328 # Station inactivity limit
329 #
330 # If a station does not send anything in ap_max_inactivity seconds, an
331 # empty data frame is sent to it in order to verify whether it is
332 # still in range. If this frame is not ACKed, the station will be
333 # disassociated and then deauthenticated. This feature is used to
334 # clear station table of old entries when the STAs move out of the
335 # range.
336 #
337 # The station can associate again with the AP if it is still in range;
338 # this inactivity poll is just used as a nicer way of verifying
339 # inactivity; i.e., client will not report broken connection because
340 # disassociation frame is not sent immediately without first polling
341 # the STA with a data frame.
342 # default: 300 (i.e., 5 minutes)
343 #ap_max_inactivity=300
344
345 # Enable/disable internal bridge for packets between associated stations.
346 #
347 # When IEEE 802.11 is used in managed mode, packets are usually send through
348 # the AP even if they are from a wireless station to another wireless station.
349 # This functionality requires that the AP has a bridge functionality that sends
350 # frames back to the same interface if their destination is another associated
351 # station. In addition, broadcast/multicast frames from wireless stations will
352 # be sent both to the host system net stack (e.g., to eventually wired network)
353 # and back to the wireless interface.
354 #
355 # The internal bridge is implemented within the wireless kernel module and it
356 # bypasses kernel filtering (netfilter/iptables/ebtables). If direct
357 # communication between the stations needs to be prevented, the internal
358 # bridge can be disabled by setting bridge_packets=0.
359 #
360 # Note: If this variable is not included in hostapd.conf, hostapd does not
361 # change the configuration and iwpriv can be used to set the value with
362 # 'iwpriv wlan# param 10 0' command. If the variable is in hostapd.conf,
363 # hostapd will override possible iwpriv configuration whenever configuration
364 # file is reloaded.
365 #
366 # default: do not control from hostapd (80211.o defaults to 1=enabled)
367 #bridge_packets=1
368
369 # Maximum allowed Listen Interval (how many Beacon periods STAs are allowed to
370 # remain asleep). Default: 65535 (no limit apart from field size)
371 #max_listen_interval=100
372
373 ##### IEEE 802.11n related configuration ######################################
374
375 # ieee80211n: Whether IEEE 802.11n (HT) is enabled
376 # 0 = disabled (default)
377 # 1 = enabled
378 #ieee80211n=1
379
380 # ht_capab: HT capabilities (list of flags)
381 # LDPC coding capability: [LDPC] = supported
382 # Supported channel width set: [HT40-] = both 20 MHz and 40 MHz with secondary
383 #       channel below the primary channel; [HT40+] = both 20 MHz and 40 MHz
384 #       with secondary channel below the primary channel
385 #       (20 MHz only if neither is set)
386 #       Note: There are limits on which channels can be used with HT40- and
387 #       HT40+. Following table shows the channels that may be available for
388 #       HT40- and HT40+ use per IEEE 802.11n Annex J:
389 #       freq            HT40-           HT40+
390 #       2.4 GHz         5-13            1-7 (1-9 in Europe/Japan)
391 #       5 GHz           40,48,56,64     36,44,52,60
392 #       (depending on the location, not all of these channels may be available
393 #       for use)
394 #       Please note that 40 MHz channels may switch their primary and secondary
395 #       channels if needed or creation of 40 MHz channel maybe rejected based
396 #       on overlapping BSSes. These changes are done automatically when hostapd
397 #       is setting up the 40 MHz channel.
398 # Spatial Multiplexing (SM) Power Save: [SMPS-STATIC] or [SMPS-DYNAMIC]
399 #       (SMPS disabled if neither is set)
400 # HT-greenfield: [GF] (disabled if not set)
401 # Short GI for 20 MHz: [SHORT-GI-20] (disabled if not set)
402 # Short GI for 40 MHz: [SHORT-GI-40] (disabled if not set)
403 # Tx STBC: [TX-STBC] (disabled if not set)
404 # Rx STBC: [RX-STBC1] (one spatial stream), [RX-STBC12] (one or two spatial
405 #       streams), or [RX-STBC123] (one, two, or three spatial streams); Rx STBC
406 #       disabled if none of these set
407 # HT-delayed Block Ack: [DELAYED-BA] (disabled if not set)
408 # Maximum A-MSDU length: [MAX-AMSDU-7935] for 7935 octets (3839 octets if not
409 #       set)
410 # DSSS/CCK Mode in 40 MHz: [DSSS_CCK-40] = allowed (not allowed if not set)
411 # PSMP support: [PSMP] (disabled if not set)
412 # L-SIG TXOP protection support: [LSIG-TXOP-PROT] (disabled if not set)
413 #ht_capab=[HT40-][SHORT-GI-20][SHORT-GI-40]
414
415 ##### IEEE 802.1X-2004 related configuration ##################################
416
417 # Require IEEE 802.1X authorization
418 #ieee8021x=1
419
420 # IEEE 802.1X/EAPOL version
421 # hostapd is implemented based on IEEE Std 802.1X-2004 which defines EAPOL
422 # version 2. However, there are many client implementations that do not handle
423 # the new version number correctly (they seem to drop the frames completely).
424 # In order to make hostapd interoperate with these clients, the version number
425 # can be set to the older version (1) with this configuration value.
426 #eapol_version=2
427
428 # Optional displayable message sent with EAP Request-Identity. The first \0
429 # in this string will be converted to ASCII-0 (nul). This can be used to
430 # separate network info (comma separated list of attribute=value pairs); see,
431 # e.g., RFC 4284.
432 #eap_message=hello
433 #eap_message=hello\0networkid=netw,nasid=foo,portid=0,NAIRealms=example.com
434
435 # WEP rekeying (disabled if key lengths are not set or are set to 0)
436 # Key lengths for default/broadcast and individual/unicast keys:
437 # 5 = 40-bit WEP (also known as 64-bit WEP with 40 secret bits)
438 # 13 = 104-bit WEP (also known as 128-bit WEP with 104 secret bits)
439 #wep_key_len_broadcast=5
440 #wep_key_len_unicast=5
441 # Rekeying period in seconds. 0 = do not rekey (i.e., set keys only once)
442 #wep_rekey_period=300
443
444 # EAPOL-Key index workaround (set bit7) for WinXP Supplicant (needed only if
445 # only broadcast keys are used)
446 eapol_key_index_workaround=0
447
448 # EAP reauthentication period in seconds (default: 3600 seconds; 0 = disable
449 # reauthentication).
450 #eap_reauth_period=3600
451
452 # Use PAE group address (01:80:c2:00:00:03) instead of individual target
453 # address when sending EAPOL frames with driver=wired. This is the most common
454 # mechanism used in wired authentication, but it also requires that the port
455 # is only used by one station.
456 #use_pae_group_addr=1
457
458 ##### Integrated EAP server ###################################################
459
460 # Optionally, hostapd can be configured to use an integrated EAP server
461 # to process EAP authentication locally without need for an external RADIUS
462 # server. This functionality can be used both as a local authentication server
463 # for IEEE 802.1X/EAPOL and as a RADIUS server for other devices.
464
465 # Use integrated EAP server instead of external RADIUS authentication
466 # server. This is also needed if hostapd is configured to act as a RADIUS
467 # authentication server.
468 eap_server=0
469
470 # Path for EAP server user database
471 #eap_user_file=/etc/hostapd.eap_user
472
473 # CA certificate (PEM or DER file) for EAP-TLS/PEAP/TTLS
474 #ca_cert=/etc/hostapd.ca.pem
475
476 # Server certificate (PEM or DER file) for EAP-TLS/PEAP/TTLS
477 #server_cert=/etc/hostapd.server.pem
478
479 # Private key matching with the server certificate for EAP-TLS/PEAP/TTLS
480 # This may point to the same file as server_cert if both certificate and key
481 # are included in a single file. PKCS#12 (PFX) file (.p12/.pfx) can also be
482 # used by commenting out server_cert and specifying the PFX file as the
483 # private_key.
484 #private_key=/etc/hostapd.server.prv
485
486 # Passphrase for private key
487 #private_key_passwd=secret passphrase
488
489 # Enable CRL verification.
490 # Note: hostapd does not yet support CRL downloading based on CDP. Thus, a
491 # valid CRL signed by the CA is required to be included in the ca_cert file.
492 # This can be done by using PEM format for CA certificate and CRL and
493 # concatenating these into one file. Whenever CRL changes, hostapd needs to be
494 # restarted to take the new CRL into use.
495 # 0 = do not verify CRLs (default)
496 # 1 = check the CRL of the user certificate
497 # 2 = check all CRLs in the certificate path
498 #check_crl=1
499
500 # dh_file: File path to DH/DSA parameters file (in PEM format)
501 # This is an optional configuration file for setting parameters for an
502 # ephemeral DH key exchange. In most cases, the default RSA authentication does
503 # not use this configuration. However, it is possible setup RSA to use
504 # ephemeral DH key exchange. In addition, ciphers with DSA keys always use
505 # ephemeral DH keys. This can be used to achieve forward secrecy. If the file
506 # is in DSA parameters format, it will be automatically converted into DH
507 # params. This parameter is required if anonymous EAP-FAST is used.
508 # You can generate DH parameters file with OpenSSL, e.g.,
509 # "openssl dhparam -out /etc/hostapd.dh.pem 1024"
510 #dh_file=/etc/hostapd.dh.pem
511
512 # Configuration data for EAP-SIM database/authentication gateway interface.
513 # This is a text string in implementation specific format. The example
514 # implementation in eap_sim_db.c uses this as the UNIX domain socket name for
515 # the HLR/AuC gateway (e.g., hlr_auc_gw). In this case, the path uses "unix:"
516 # prefix.
517 #eap_sim_db=unix:/tmp/hlr_auc_gw.sock
518
519 # Encryption key for EAP-FAST PAC-Opaque values. This key must be a secret,
520 # random value. It is configured as a 16-octet value in hex format. It can be
521 # generated, e.g., with the following command:
522 # od -tx1 -v -N16 /dev/random | colrm 1 8 | tr -d ' '
523 #pac_opaque_encr_key=000102030405060708090a0b0c0d0e0f
524
525 # EAP-FAST authority identity (A-ID)
526 # A-ID indicates the identity of the authority that issues PACs. The A-ID
527 # should be unique across all issuing servers. In theory, this is a variable
528 # length field, but due to some existing implementations required A-ID to be
529 # 16 octets in length, it is strongly recommended to use that length for the
530 # field to provided interoperability with deployed peer implementation. This
531 # field is configured in hex format.
532 #eap_fast_a_id=101112131415161718191a1b1c1d1e1f
533
534 # EAP-FAST authority identifier information (A-ID-Info)
535 # This is a user-friendly name for the A-ID. For example, the enterprise name
536 # and server name in a human-readable format. This field is encoded as UTF-8.
537 #eap_fast_a_id_info=test server
538
539 # Enable/disable different EAP-FAST provisioning modes:
540 #0 = provisioning disabled
541 #1 = only anonymous provisioning allowed
542 #2 = only authenticated provisioning allowed
543 #3 = both provisioning modes allowed (default)
544 #eap_fast_prov=3
545
546 # EAP-FAST PAC-Key lifetime in seconds (hard limit)
547 #pac_key_lifetime=604800
548
549 # EAP-FAST PAC-Key refresh time in seconds (soft limit on remaining hard
550 # limit). The server will generate a new PAC-Key when this number of seconds
551 # (or fewer) of the lifetime remains.
552 #pac_key_refresh_time=86400
553
554 # EAP-SIM and EAP-AKA protected success/failure indication using AT_RESULT_IND
555 # (default: 0 = disabled).
556 #eap_sim_aka_result_ind=1
557
558 # Trusted Network Connect (TNC)
559 # If enabled, TNC validation will be required before the peer is allowed to
560 # connect. Note: This is only used with EAP-TTLS and EAP-FAST. If any other
561 # EAP method is enabled, the peer will be allowed to connect without TNC.
562 #tnc=1
563
564
565 ##### IEEE 802.11f - Inter-Access Point Protocol (IAPP) #######################
566
567 # Interface to be used for IAPP broadcast packets
568 #iapp_interface=eth0
569
570
571 ##### RADIUS client configuration #############################################
572 # for IEEE 802.1X with external Authentication Server, IEEE 802.11
573 # authentication with external ACL for MAC addresses, and accounting
574
575 # The own IP address of the access point (used as NAS-IP-Address)
576 own_ip_addr=127.0.0.1
577
578 # Optional NAS-Identifier string for RADIUS messages. When used, this should be
579 # a unique to the NAS within the scope of the RADIUS server. For example, a
580 # fully qualified domain name can be used here.
581 # When using IEEE 802.11r, nas_identifier must be set and must be between 1 and
582 # 48 octets long.
583 #nas_identifier=ap.example.com
584
585 # RADIUS authentication server
586 #auth_server_addr=127.0.0.1
587 #auth_server_port=1812
588 #auth_server_shared_secret=secret
589
590 # RADIUS accounting server
591 #acct_server_addr=127.0.0.1
592 #acct_server_port=1813
593 #acct_server_shared_secret=secret
594
595 # Secondary RADIUS servers; to be used if primary one does not reply to
596 # RADIUS packets. These are optional and there can be more than one secondary
597 # server listed.
598 #auth_server_addr=127.0.0.2
599 #auth_server_port=1812
600 #auth_server_shared_secret=secret2
601 #
602 #acct_server_addr=127.0.0.2
603 #acct_server_port=1813
604 #acct_server_shared_secret=secret2
605
606 # Retry interval for trying to return to the primary RADIUS server (in
607 # seconds). RADIUS client code will automatically try to use the next server
608 # when the current server is not replying to requests. If this interval is set,
609 # primary server will be retried after configured amount of time even if the
610 # currently used secondary server is still working.
611 #radius_retry_primary_interval=600
612
613
614 # Interim accounting update interval
615 # If this is set (larger than 0) and acct_server is configured, hostapd will
616 # send interim accounting updates every N seconds. Note: if set, this overrides
617 # possible Acct-Interim-Interval attribute in Access-Accept message. Thus, this
618 # value should not be configured in hostapd.conf, if RADIUS server is used to
619 # control the interim interval.
620 # This value should not be less 600 (10 minutes) and must not be less than
621 # 60 (1 minute).
622 #radius_acct_interim_interval=600
623
624 # Dynamic VLAN mode; allow RADIUS authentication server to decide which VLAN
625 # is used for the stations. This information is parsed from following RADIUS
626 # attributes based on RFC 3580 and RFC 2868: Tunnel-Type (value 13 = VLAN),
627 # Tunnel-Medium-Type (value 6 = IEEE 802), Tunnel-Private-Group-ID (value
628 # VLANID as a string). vlan_file option below must be configured if dynamic
629 # VLANs are used. Optionally, the local MAC ACL list (accept_mac_file) can be
630 # used to set static client MAC address to VLAN ID mapping.
631 # 0 = disabled (default)
632 # 1 = option; use default interface if RADIUS server does not include VLAN ID
633 # 2 = required; reject authentication if RADIUS server does not include VLAN ID
634 #dynamic_vlan=0
635
636 # VLAN interface list for dynamic VLAN mode is read from a separate text file.
637 # This list is used to map VLAN ID from the RADIUS server to a network
638 # interface. Each station is bound to one interface in the same way as with
639 # multiple BSSIDs or SSIDs. Each line in this text file is defining a new
640 # interface and the line must include VLAN ID and interface name separated by
641 # white space (space or tab).
642 #vlan_file=/etc/hostapd.vlan
643
644 # Interface where 802.1q tagged packets should appear when a RADIUS server is
645 # used to determine which VLAN a station is on.  hostapd creates a bridge for
646 # each VLAN.  Then hostapd adds a VLAN interface (associated with the interface
647 # indicated by 'vlan_tagged_interface') and the appropriate wireless interface
648 # to the bridge.
649 #vlan_tagged_interface=eth0
650
651
652 ##### RADIUS authentication server configuration ##############################
653
654 # hostapd can be used as a RADIUS authentication server for other hosts. This
655 # requires that the integrated EAP server is also enabled and both
656 # authentication services are sharing the same configuration.
657
658 # File name of the RADIUS clients configuration for the RADIUS server. If this
659 # commented out, RADIUS server is disabled.
660 #radius_server_clients=/etc/hostapd.radius_clients
661
662 # The UDP port number for the RADIUS authentication server
663 #radius_server_auth_port=1812
664
665 # Use IPv6 with RADIUS server (IPv4 will also be supported using IPv6 API)
666 #radius_server_ipv6=1
667
668
669 ##### WPA/IEEE 802.11i configuration ##########################################
670
671 # Enable WPA. Setting this variable configures the AP to require WPA (either
672 # WPA-PSK or WPA-RADIUS/EAP based on other configuration). For WPA-PSK, either
673 # wpa_psk or wpa_passphrase must be set and wpa_key_mgmt must include WPA-PSK.
674 # For WPA-RADIUS/EAP, ieee8021x must be set (but without dynamic WEP keys),
675 # RADIUS authentication server must be configured, and WPA-EAP must be included
676 # in wpa_key_mgmt.
677 # This field is a bit field that can be used to enable WPA (IEEE 802.11i/D3.0)
678 # and/or WPA2 (full IEEE 802.11i/RSN):
679 # bit0 = WPA
680 # bit1 = IEEE 802.11i/RSN (WPA2) (dot11RSNAEnabled)
681 #wpa=1
682
683 # WPA pre-shared keys for WPA-PSK. This can be either entered as a 256-bit
684 # secret in hex format (64 hex digits), wpa_psk, or as an ASCII passphrase
685 # (8..63 characters) that will be converted to PSK. This conversion uses SSID
686 # so the PSK changes when ASCII passphrase is used and the SSID is changed.
687 # wpa_psk (dot11RSNAConfigPSKValue)
688 # wpa_passphrase (dot11RSNAConfigPSKPassPhrase)
689 #wpa_psk=0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef
690 #wpa_passphrase=secret passphrase
691
692 # Optionally, WPA PSKs can be read from a separate text file (containing list
693 # of (PSK,MAC address) pairs. This allows more than one PSK to be configured.
694 # Use absolute path name to make sure that the files can be read on SIGHUP
695 # configuration reloads.
696 #wpa_psk_file=/etc/hostapd.wpa_psk
697
698 # Set of accepted key management algorithms (WPA-PSK, WPA-EAP, or both). The
699 # entries are separated with a space. WPA-PSK-SHA256 and WPA-EAP-SHA256 can be
700 # added to enable SHA256-based stronger algorithms.
701 # (dot11RSNAConfigAuthenticationSuitesTable)
702 #wpa_key_mgmt=WPA-PSK WPA-EAP
703
704 # Set of accepted cipher suites (encryption algorithms) for pairwise keys
705 # (unicast packets). This is a space separated list of algorithms:
706 # CCMP = AES in Counter mode with CBC-MAC [RFC 3610, IEEE 802.11i/D7.0]
707 # TKIP = Temporal Key Integrity Protocol [IEEE 802.11i/D7.0]
708 # Group cipher suite (encryption algorithm for broadcast and multicast frames)
709 # is automatically selected based on this configuration. If only CCMP is
710 # allowed as the pairwise cipher, group cipher will also be CCMP. Otherwise,
711 # TKIP will be used as the group cipher.
712 # (dot11RSNAConfigPairwiseCiphersTable)
713 # Pairwise cipher for WPA (v1) (default: TKIP)
714 #wpa_pairwise=TKIP CCMP
715 # Pairwise cipher for RSN/WPA2 (default: use wpa_pairwise value)
716 #rsn_pairwise=CCMP
717
718 # Time interval for rekeying GTK (broadcast/multicast encryption keys) in
719 # seconds. (dot11RSNAConfigGroupRekeyTime)
720 #wpa_group_rekey=600
721
722 # Rekey GTK when any STA that possesses the current GTK is leaving the BSS.
723 # (dot11RSNAConfigGroupRekeyStrict)
724 #wpa_strict_rekey=1
725
726 # Time interval for rekeying GMK (master key used internally to generate GTKs
727 # (in seconds).
728 #wpa_gmk_rekey=86400
729
730 # Maximum lifetime for PTK in seconds. This can be used to enforce rekeying of
731 # PTK to mitigate some attacks against TKIP deficiencies.
732 #wpa_ptk_rekey=600
733
734 # Enable IEEE 802.11i/RSN/WPA2 pre-authentication. This is used to speed up
735 # roaming be pre-authenticating IEEE 802.1X/EAP part of the full RSN
736 # authentication and key handshake before actually associating with a new AP.
737 # (dot11RSNAPreauthenticationEnabled)
738 #rsn_preauth=1
739 #
740 # Space separated list of interfaces from which pre-authentication frames are
741 # accepted (e.g., 'eth0' or 'eth0 wlan0wds0'. This list should include all
742 # interface that are used for connections to other APs. This could include
743 # wired interfaces and WDS links. The normal wireless data interface towards
744 # associated stations (e.g., wlan0) should not be added, since
745 # pre-authentication is only used with APs other than the currently associated
746 # one.
747 #rsn_preauth_interfaces=eth0
748
749 # peerkey: Whether PeerKey negotiation for direct links (IEEE 802.11e) is
750 # allowed. This is only used with RSN/WPA2.
751 # 0 = disabled (default)
752 # 1 = enabled
753 #peerkey=1
754
755 # ieee80211w: Whether management frame protection (MFP) is enabled
756 # 0 = disabled (default)
757 # 1 = optional
758 # 2 = required
759 #ieee80211w=0
760
761 # Association SA Query maximum timeout (in TU = 1.024 ms; for MFP)
762 # (maximum time to wait for a SA Query response)
763 # dot11AssociationSAQueryMaximumTimeout, 1...4294967295
764 #assoc_sa_query_max_timeout=1000
765
766 # Association SA Query retry timeout (in TU = 1.024 ms; for MFP)
767 # (time between two subsequent SA Query requests)
768 # dot11AssociationSAQueryRetryTimeout, 1...4294967295
769 #assoc_sa_query_retry_timeout=201
770
771
772 # okc: Opportunistic Key Caching (aka Proactive Key Caching)
773 # Allow PMK cache to be shared opportunistically among configured interfaces
774 # and BSSes (i.e., all configurations within a single hostapd process).
775 # 0 = disabled (default)
776 # 1 = enabled
777 #okc=1
778
779
780 ##### IEEE 802.11r configuration ##############################################
781
782 # Mobility Domain identifier (dot11FTMobilityDomainID, MDID)
783 # MDID is used to indicate a group of APs (within an ESS, i.e., sharing the
784 # same SSID) between which a STA can use Fast BSS Transition.
785 # 2-octet identifier as a hex string.
786 #mobility_domain=a1b2
787
788 # PMK-R0 Key Holder identifier (dot11FTR0KeyHolderID)
789 # 1 to 48 octet identifier.
790 # This is configured with nas_identifier (see RADIUS client section above).
791
792 # Default lifetime of the PMK-RO in minutes; range 1..65535
793 # (dot11FTR0KeyLifetime)
794 #r0_key_lifetime=10000
795
796 # PMK-R1 Key Holder identifier (dot11FTR1KeyHolderID)
797 # 6-octet identifier as a hex string.
798 #r1_key_holder=000102030405
799
800 # Reassociation deadline in time units (TUs / 1.024 ms; range 1000..65535)
801 # (dot11FTReassociationDeadline)
802 #reassociation_deadline=1000
803
804 # List of R0KHs in the same Mobility Domain
805 # format: <MAC address> <NAS Identifier> <128-bit key as hex string>
806 # This list is used to map R0KH-ID (NAS Identifier) to a destination MAC
807 # address when requesting PMK-R1 key from the R0KH that the STA used during the
808 # Initial Mobility Domain Association.
809 #r0kh=02:01:02:03:04:05 r0kh-1.example.com 000102030405060708090a0b0c0d0e0f
810 #r0kh=02:01:02:03:04:06 r0kh-2.example.com 00112233445566778899aabbccddeeff
811 # And so on.. One line per R0KH.
812
813 # List of R1KHs in the same Mobility Domain
814 # format: <MAC address> <R0KH-ID> <128-bit key as hex string>
815 # This list is used to map R1KH-ID to a destination MAC address when sending
816 # PMK-R1 key from the R0KH. This is also the list of authorized R1KHs in the MD
817 # that can request PMK-R1 keys.
818 #r1kh=02:01:02:03:04:05 02:11:22:33:44:55 000102030405060708090a0b0c0d0e0f
819 #r1kh=02:01:02:03:04:06 02:11:22:33:44:66 00112233445566778899aabbccddeeff
820 # And so on.. One line per R1KH.
821
822 # Whether PMK-R1 push is enabled at R0KH
823 # 0 = do not push PMK-R1 to all configured R1KHs (default)
824 # 1 = push PMK-R1 to all configured R1KHs whenever a new PMK-R0 is derived
825 #pmk_r1_push=1
826
827 ##### Passive scanning ########################################################
828 # Scan different channels every N seconds. 0 = disable passive scanning.
829 #passive_scan_interval=60
830
831 # Listen N usecs on each channel when doing passive scanning.
832 # This value plus the time needed for changing channels should be less than
833 # 32 milliseconds (i.e. 32000 usec) to avoid interruptions to normal
834 # operations. Time needed for channel changing varies based on the used wlan
835 # hardware.
836 # default: disabled (0)
837 #passive_scan_listen=10000
838
839 # Passive scanning mode:
840 # 0 = scan all supported modes (802.11a/b/g/Turbo) (default)
841 # 1 = scan only the mode that is currently used for normal operations
842 #passive_scan_mode=1
843
844 # Maximum number of entries kept in AP table (either for passive scanning or
845 # for detecting Overlapping Legacy BSS Condition). The oldest entry will be
846 # removed when adding a new entry that would make the list grow over this
847 # limit. Note! Wi-Fi certification for IEEE 802.11g requires that OLBC is
848 # enabled, so this field should not be set to 0 when using IEEE 802.11g.
849 # default: 255
850 #ap_table_max_size=255
851
852 # Number of seconds of no frames received after which entries may be deleted
853 # from the AP table. Since passive scanning is not usually performed frequently
854 # this should not be set to very small value. In addition, there is no
855 # guarantee that every scan cycle will receive beacon frames from the
856 # neighboring APs.
857 # default: 60
858 #ap_table_expiration_time=3600
859
860
861 ##### Wi-Fi Protected Setup (WPS) #############################################
862
863 # WPS state
864 # 0 = WPS disabled (default)
865 # 1 = WPS enabled, not configured
866 # 2 = WPS enabled, configured
867 #wps_state=2
868
869 # AP can be configured into a locked state where new WPS Registrar are not
870 # accepted, but previously authorized Registrars (including the internal one)
871 # can continue to add new Enrollees.
872 #ap_setup_locked=1
873
874 # Universally Unique IDentifier (UUID; see RFC 4122) of the device
875 # This value is used as the UUID for the internal WPS Registrar. If the AP
876 # is also using UPnP, this value should be set to the device's UPnP UUID.
877 # If not configured, UUID will be generated based on the local MAC address.
878 #uuid=12345678-9abc-def0-1234-56789abcdef0
879
880 # Note: If wpa_psk_file is set, WPS is used to generate random, per-device PSKs
881 # that will be appended to the wpa_psk_file. If wpa_psk_file is not set, the
882 # default PSK (wpa_psk/wpa_passphrase) will be delivered to Enrollees. Use of
883 # per-device PSKs is recommended as the more secure option (i.e., make sure to
884 # set wpa_psk_file when using WPS with WPA-PSK).
885
886 # When an Enrollee requests access to the network with PIN method, the Enrollee
887 # PIN will need to be entered for the Registrar. PIN request notifications are
888 # sent to hostapd ctrl_iface monitor. In addition, they can be written to a
889 # text file that could be used, e.g., to populate the AP administration UI with
890 # pending PIN requests. If the following variable is set, the PIN requests will
891 # be written to the configured file.
892 #wps_pin_requests=/var/run/hostapd_wps_pin_requests
893
894 # Device Name
895 # User-friendly description of device; up to 32 octets encoded in UTF-8
896 #device_name=Wireless AP
897
898 # Manufacturer
899 # The manufacturer of the device (up to 64 ASCII characters)
900 #manufacturer=Company
901
902 # Model Name
903 # Model of the device (up to 32 ASCII characters)
904 #model_name=WAP
905
906 # Model Number
907 # Additional device description (up to 32 ASCII characters)
908 #model_number=123
909
910 # Serial Number
911 # Serial number of the device (up to 32 characters)
912 #serial_number=12345
913
914 # Primary Device Type
915 # Used format: <categ>-<OUI>-<subcateg>
916 # categ = Category as an integer value
917 # OUI = OUI and type octet as a 4-octet hex-encoded value; 0050F204 for
918 #       default WPS OUI
919 # subcateg = OUI-specific Sub Category as an integer value
920 # Examples:
921 #   1-0050F204-1 (Computer / PC)
922 #   1-0050F204-2 (Computer / Server)
923 #   5-0050F204-1 (Storage / NAS)
924 #   6-0050F204-1 (Network Infrastructure / AP)
925 #device_type=6-0050F204-1
926
927 # OS Version
928 # 4-octet operating system version number (hex string)
929 #os_version=01020300
930
931 # Config Methods
932 # List of the supported configuration methods
933 #config_methods=label display push_button keypad
934
935 # Access point PIN for initial configuration and adding Registrars
936 # If not set, hostapd will not allow external WPS Registrars to control the
937 # access point.
938 #ap_pin=12345670
939
940 # Skip building of automatic WPS credential
941 # This can be used to allow the automatically generated Credential attribute to
942 # be replaced with pre-configured Credential(s).
943 #skip_cred_build=1
944
945 # Additional Credential attribute(s)
946 # This option can be used to add pre-configured Credential attributes into M8
947 # message when acting as a Registrar. If skip_cred_build=1, this data will also
948 # be able to override the Credential attribute that would have otherwise been
949 # automatically generated based on network configuration. This configuration
950 # option points to an external file that much contain the WPS Credential
951 # attribute(s) as binary data.
952 #extra_cred=hostapd.cred
953
954 # Credential processing
955 #   0 = process received credentials internally (default)
956 #   1 = do not process received credentials; just pass them over ctrl_iface to
957 #       external program(s)
958 #   2 = process received credentials internally and pass them over ctrl_iface
959 #       to external program(s)
960 # Note: With wps_cred_processing=1, skip_cred_build should be set to 1 and
961 # extra_cred be used to provide the Credential data for Enrollees.
962 #
963 # wps_cred_processing=1 will disabled automatic updates of hostapd.conf file
964 # both for Credential processing and for marking AP Setup Locked based on
965 # validation failures of AP PIN. An external program is responsible on updating
966 # the configuration appropriately in this case.
967 #wps_cred_processing=0
968
969 # AP Settings Attributes for M7
970 # By default, hostapd generates the AP Settings Attributes for M7 based on the
971 # current configuration. It is possible to override this by providing a file
972 # with pre-configured attributes. This is similar to extra_cred file format,
973 # but the AP Settings attributes are not encapsulated in a Credential
974 # attribute.
975 #ap_settings=hostapd.ap_settings
976
977 # WPS UPnP interface
978 # If set, support for external Registrars is enabled.
979 #upnp_iface=br0
980
981 # Friendly Name (required for UPnP)
982 # Short description for end use. Should be less than 64 characters.
983 #friendly_name=WPS Access Point
984
985 # Manufacturer URL (optional for UPnP)
986 #manufacturer_url=http://www.example.com/
987
988 # Model Description (recommended for UPnP)
989 # Long description for end user. Should be less than 128 characters.
990 #model_description=Wireless Access Point
991
992 # Model URL (optional for UPnP)
993 #model_url=http://www.example.com/model/
994
995 # Universal Product Code (optional for UPnP)
996 # 12-digit, all-numeric code that identifies the consumer package.
997 #upc=123456789012
998
999 ##### Multiple BSSID support ##################################################
1000 #
1001 # Above configuration is using the default interface (wlan#, or multi-SSID VLAN
1002 # interfaces). Other BSSIDs can be added by using separator 'bss' with
1003 # default interface name to be allocated for the data packets of the new BSS.
1004 #
1005 # hostapd will generate BSSID mask based on the BSSIDs that are
1006 # configured. hostapd will verify that dev_addr & MASK == dev_addr. If this is
1007 # not the case, the MAC address of the radio must be changed before starting
1008 # hostapd (ifconfig wlan0 hw ether <MAC addr>).
1009 #
1010 # BSSIDs are assigned in order to each BSS, unless an explicit BSSID is
1011 # specified using the 'bssid' parameter.
1012 # If an explicit BSSID is specified, it must be chosen such that it:
1013 # - results in a valid MASK that covers it and the dev_addr
1014 # - is not the same as the MAC address of the radio
1015 # - is not the same as any other explicitly specified BSSID
1016 #
1017 # Please note that hostapd uses some of the values configured for the first BSS
1018 # as the defaults for the following BSSes. However, it is recommended that all
1019 # BSSes include explicit configuration of all relevant configuration items.
1020 #
1021 #bss=wlan0_0
1022 #ssid=test2
1023 # most of the above items can be used here (apart from radio interface specific
1024 # items, like channel)
1025
1026 #bss=wlan0_1
1027 #bssid=00:13:10:95:fe:0b
1028 # ...