Fix nl80211 driver to receive EAPOL response
[libeap.git] / 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 driver, an additional configuration parameter, bridge,
9 # must be used to notify hostapd if the interface is included in a bridge. This
10 # parameter is not used with Host AP driver.
11 #bridge=br0
12
13 # Driver interface type (hostap/wired/madwifi/prism54/test/nl80211/bsd);
14 # default: hostap)
15 # Use driver=test 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 # Modify as needed to indicate country in which device is operating.
82 # This can limit available channels and transmit power.
83 # (default: US)
84 #country_code=US
85
86 # Enable IEEE 802.11d. This advertises the country_code and the set of allowed
87 # channels and transmit power levels based on the regulatory limits. The
88 # country_code setting must be configured with the correct country for
89 # IEEE 802.11d functions.
90 # (default: 0 = disabled)
91 #ieee80211d=1
92
93 # Enable IEEE 802.11h. This enables the TPC and DFS services when operating
94 # in a regulatory domain which requires them.  Once enabled it will be 
95 # operational only when working in hw_mode a and in countries where it is
96 # required. The end user should not be allowed to disable this.
97 # The country_code setting must be configured with the correct country for
98 # IEEE 802.11h to function. 
99 # When IEEE 802.11h is operational, the channel_policy and configured channel 
100 # settings will be ignored but will behave as though the channel_policy is
101 # set to "3" (automatic channel selection). When IEEE 802.11h is enabled but
102 # not operational (for example, if the radio mode is changed from "a" to "b")
103 # the channel_policy and channel settings take effect again. 
104 # (default: 1 = enabled)
105 #ieee80211h=1
106
107 # Operation mode (a = IEEE 802.11a, b = IEEE 802.11b, g = IEEE 802.11g,
108 # Default: IEEE 802.11b
109 hw_mode=a
110
111 # Channel number (IEEE 802.11)
112 # (default: 0, i.e., not set, used with channel_policy=2)
113 channel=60
114
115 # Beacon interval in kus (1.024 ms) (default: 100; range 15..65535)
116 beacon_int=100
117
118 # DTIM (delivery trafic information message) period (range 1..255):
119 # number of beacons between DTIMs (1 = every beacon includes DTIM element)
120 # (default: 2)
121 dtim_period=2
122
123 # Maximum number of stations allowed in station table. New stations will be
124 # rejected after the station table is full. IEEE 802.11 has a limit of 2007
125 # different association IDs, so this number should not be larger than that.
126 # (default: 2007)
127 max_num_sta=255
128
129 # RTS/CTS threshold; 2347 = disabled (default); range 0..2347
130 # If this field is not included in hostapd.conf, hostapd will not control
131 # RTS threshold and 'iwconfig wlan# rts <val>' can be used to set it.
132 rts_threshold=2347
133
134 # Fragmentation threshold; 2346 = disabled (default); range 256..2346
135 # If this field is not included in hostapd.conf, hostapd will not control
136 # fragmentation threshold and 'iwconfig wlan# frag <val>' can be used to set
137 # it.
138 fragm_threshold=2346
139
140 # Rate configuration
141 # Default is to enable all rates supported by the hardware. This configuration
142 # item allows this list be filtered so that only the listed rates will be left
143 # in the list. If the list is empty, all rates are used. This list can have
144 # entries that are not in the list of rates the hardware supports (such entries
145 # are ignored). The entries in this list are in 100 kbps, i.e., 11 Mbps = 110.
146 # If this item is present, at least one rate have to be matching with the rates
147 # hardware supports.
148 # default: use the most common supported rate setting for the selected
149 # hw_mode (i.e., this line can be removed from configuration file in most
150 # cases)
151 #supported_rates=10 20 55 110 60 90 120 180 240 360 480 540
152
153 # Basic rate set configuration
154 # List of rates (in 100 kbps) that are included in the basic rate set.
155 # If this item is not included, usually reasonable default set is used.
156 #basic_rates=10 20
157 #basic_rates=10 20 55 110
158 #basic_rates=60 120 240
159
160 # Station MAC address -based authentication
161 # Please note that this kind of access control requires a driver that uses
162 # hostapd to take care of management frame processing and as such, this can be
163 # used with driver=hostap or driver=nl80211, but not with driver=madwifi.
164 # 0 = accept unless in deny list
165 # 1 = deny unless in accept list
166 # 2 = use external RADIUS server (accept/deny lists are searched first)
167 macaddr_acl=0
168
169 # Accept/deny lists are read from separate files (containing list of
170 # MAC addresses, one per line). Use absolute path name to make sure that the
171 # files can be read on SIGHUP configuration reloads.
172 #accept_mac_file=/etc/hostapd.accept
173 #deny_mac_file=/etc/hostapd.deny
174
175 # IEEE 802.11 specifies two authentication algorithms. hostapd can be
176 # configured to allow both of these or only one. Open system authentication
177 # should be used with IEEE 802.1X.
178 # Bit fields of allowed authentication algorithms:
179 # bit 0 = Open System Authentication
180 # bit 1 = Shared Key Authentication (requires WEP)
181 auth_algs=3
182
183 # Send empty SSID in beacons and ignore probe request frames that do not
184 # specify full SSID, i.e., require stations to know SSID.
185 # default: disabled (0)
186 # 1 = send empty (length=0) SSID in beacon and ignore probe request for
187 #     broadcast SSID
188 # 2 = clear SSID (ASCII 0), but keep the original length (this may be required
189 #     with some clients that do not support empty SSID) and ignore probe
190 #     requests for broadcast SSID
191 ignore_broadcast_ssid=0
192
193 # TX queue parameters (EDCF / bursting)
194 # default for all these fields: not set, use hardware defaults
195 # tx_queue_<queue name>_<param>
196 # queues: data0, data1, data2, data3, after_beacon, beacon
197 #               (data0 is the highest priority queue)
198 # parameters:
199 #   aifs: AIFS (default 2)
200 #   cwmin: cwMin (1, 3, 7, 15, 31, 63, 127, 255, 511, 1023)
201 #   cwmax: cwMax (1, 3, 7, 15, 31, 63, 127, 255, 511, 1023); cwMax >= cwMin
202 #   burst: maximum length (in milliseconds with precision of up to 0.1 ms) for
203 #          bursting
204 #
205 # Default WMM parameters (IEEE 802.11 draft; 11-03-0504-03-000e):
206 # These parameters are used by the access point when transmitting frames
207 # to the clients.
208 #
209 # Low priority / AC_BK = background
210 #tx_queue_data3_aifs=7
211 #tx_queue_data3_cwmin=15
212 #tx_queue_data3_cwmax=1023
213 #tx_queue_data3_burst=0
214 # Note: for IEEE 802.11b mode: cWmin=31 cWmax=1023 burst=0
215 #
216 # Normal priority / AC_BE = best effort
217 #tx_queue_data2_aifs=3
218 #tx_queue_data2_cwmin=15
219 #tx_queue_data2_cwmax=63
220 #tx_queue_data2_burst=0
221 # Note: for IEEE 802.11b mode: cWmin=31 cWmax=127 burst=0
222 #
223 # High priority / AC_VI = video
224 #tx_queue_data1_aifs=1
225 #tx_queue_data1_cwmin=7
226 #tx_queue_data1_cwmax=15
227 #tx_queue_data1_burst=3.0
228 # Note: for IEEE 802.11b mode: cWmin=15 cWmax=31 burst=6.0
229 #
230 # Highest priority / AC_VO = voice
231 #tx_queue_data0_aifs=1
232 #tx_queue_data0_cwmin=3
233 #tx_queue_data0_cwmax=7
234 #tx_queue_data0_burst=1.5
235 # Note: for IEEE 802.11b mode: cWmin=7 cWmax=15 burst=3.3
236 #
237 # Special queues; normally not user configurable
238 #
239 #tx_queue_after_beacon_aifs=2
240 #tx_queue_after_beacon_cwmin=15
241 #tx_queue_after_beacon_cwmax=1023
242 #tx_queue_after_beacon_burst=0
243 #
244 #tx_queue_beacon_aifs=2
245 #tx_queue_beacon_cwmin=3
246 #tx_queue_beacon_cwmax=7
247 #tx_queue_beacon_burst=1.5
248
249 # 802.1D Tag to AC mappings
250 # WMM specifies following mapping of data frames to different ACs. This mapping
251 # can be configured using Linux QoS/tc and sch_pktpri.o module.
252 # 802.1D Tag    802.1D Designation      Access Category WMM Designation
253 # 1             BK                      AC_BK           Background
254 # 2             -                       AC_BK           Background
255 # 0             BE                      AC_BE           Best Effort
256 # 3             EE                      AC_VI           Video
257 # 4             CL                      AC_VI           Video
258 # 5             VI                      AC_VI           Video
259 # 6             VO                      AC_VO           Voice
260 # 7             NC                      AC_VO           Voice
261 # Data frames with no priority information: AC_BE
262 # Management frames: AC_VO
263 # PS-Poll frames: AC_BE
264
265 # Default WMM parameters (IEEE 802.11 draft; 11-03-0504-03-000e):
266 # for 802.11a or 802.11g networks
267 # These parameters are sent to WMM clients when they associate.
268 # The parameters will be used by WMM clients for frames transmitted to the
269 # access point.
270 #
271 # note - txop_limit is in units of 32microseconds
272 # note - acm is admission control mandatory flag. 0 = admission control not
273 # required, 1 = mandatory
274 # note - here cwMin and cmMax are in exponent form. the actual cw value used
275 # will be (2^n)-1 where n is the value given here
276 #
277 wme_enabled=1
278 #
279 # Low priority / AC_BK = background
280 wme_ac_bk_cwmin=4
281 wme_ac_bk_cwmax=10
282 wme_ac_bk_aifs=7
283 wme_ac_bk_txop_limit=0
284 wme_ac_bk_acm=0
285 # Note: for IEEE 802.11b mode: cWmin=5 cWmax=10
286 #
287 # Normal priority / AC_BE = best effort
288 wme_ac_be_aifs=3
289 wme_ac_be_cwmin=4
290 wme_ac_be_cwmax=10
291 wme_ac_be_txop_limit=0
292 wme_ac_be_acm=0
293 # Note: for IEEE 802.11b mode: cWmin=5 cWmax=7
294 #
295 # High priority / AC_VI = video
296 wme_ac_vi_aifs=2
297 wme_ac_vi_cwmin=3
298 wme_ac_vi_cwmax=4
299 wme_ac_vi_txop_limit=94
300 wme_ac_vi_acm=0
301 # Note: for IEEE 802.11b mode: cWmin=4 cWmax=5 txop_limit=188
302 #
303 # Highest priority / AC_VO = voice
304 wme_ac_vo_aifs=2
305 wme_ac_vo_cwmin=2
306 wme_ac_vo_cwmax=3
307 wme_ac_vo_txop_limit=47
308 wme_ac_vo_acm=0
309 # Note: for IEEE 802.11b mode: cWmin=3 cWmax=4 burst=102
310
311 # Associate as a station to another AP while still acting as an AP on the same
312 # channel.
313 #assoc_ap_addr=00:12:34:56:78:9a
314
315 # Static WEP key configuration
316 #
317 # The key number to use when transmitting.
318 # It must be between 0 and 3, and the corresponding key must be set.
319 # default: not set
320 #wep_default_key=0
321 # The WEP keys to use.
322 # A key may be a quoted string or unquoted hexadecimal digits.
323 # The key length should be 5, 13, or 16 characters, or 10, 26, or 32
324 # digits, depending on whether 40-bit (64-bit), 104-bit (128-bit), or
325 # 128-bit (152-bit) WEP is used.
326 # Only the default key must be supplied; the others are optional.
327 # default: not set
328 #wep_key0=123456789a
329 #wep_key1="vwxyz"
330 #wep_key2=0102030405060708090a0b0c0d
331 #wep_key3=".2.4.6.8.0.23"
332
333 # Station inactivity limit
334 #
335 # If a station does not send anything in ap_max_inactivity seconds, an
336 # empty data frame is sent to it in order to verify whether it is
337 # still in range. If this frame is not ACKed, the station will be
338 # disassociated and then deauthenticated. This feature is used to
339 # clear station table of old entries when the STAs move out of the
340 # range.
341 #
342 # The station can associate again with the AP if it is still in range;
343 # this inactivity poll is just used as a nicer way of verifying
344 # inactivity; i.e., client will not report broken connection because
345 # disassociation frame is not sent immediately without first polling
346 # the STA with a data frame.
347 # default: 300 (i.e., 5 minutes)
348 #ap_max_inactivity=300
349
350 # Enable/disable internal bridge for packets between associated stations.
351 #
352 # When IEEE 802.11 is used in managed mode, packets are usually send through
353 # the AP even if they are from a wireless station to another wireless station.
354 # This functionality requires that the AP has a bridge functionality that sends
355 # frames back to the same interface if their destination is another associated
356 # station. In addition, broadcast/multicast frames from wireless stations will
357 # be sent both to the host system net stack (e.g., to eventually wired network)
358 # and back to the wireless interface.
359 #
360 # The internal bridge is implemented within the wireless kernel module and it
361 # bypasses kernel filtering (netfilter/iptables/ebtables). If direct
362 # communication between the stations needs to be prevented, the internal
363 # bridge can be disabled by setting bridge_packets=0.
364 #
365 # Note: If this variable is not included in hostapd.conf, hostapd does not
366 # change the configuration and iwpriv can be used to set the value with
367 # 'iwpriv wlan# param 10 0' command. If the variable is in hostapd.conf,
368 # hostapd will override possible iwpriv configuration whenever configuration
369 # file is reloaded.
370 #
371 # default: do not control from hostapd (80211.o defaults to 1=enabled)
372 #bridge_packets=1
373
374 # Maximum allowed Listen Interval (how many Beacon periods STAs are allowed to
375 # remain asleep). Default: 65535 (no limit apart from field size)
376 #max_listen_interval=100
377
378 ##### IEEE 802.1X-2004 related configuration ##################################
379
380 # Require IEEE 802.1X authorization
381 #ieee8021x=1
382
383 # IEEE 802.1X/EAPOL version
384 # hostapd is implemented based on IEEE Std 802.1X-2004 which defines EAPOL
385 # version 2. However, there are many client implementations that do not handle
386 # the new version number correctly (they seem to drop the frames completely).
387 # In order to make hostapd interoperate with these clients, the version number
388 # can be set to the older version (1) with this configuration value.
389 #eapol_version=2
390
391 # Optional displayable message sent with EAP Request-Identity. The first \0
392 # in this string will be converted to ASCII-0 (nul). This can be used to
393 # separate network info (comma separated list of attribute=value pairs); see,
394 # e.g., RFC 4284.
395 #eap_message=hello
396 #eap_message=hello\0networkid=netw,nasid=foo,portid=0,NAIRealms=example.com
397
398 # WEP rekeying (disabled if key lengths are not set or are set to 0)
399 # Key lengths for default/broadcast and individual/unicast keys:
400 # 5 = 40-bit WEP (also known as 64-bit WEP with 40 secret bits)
401 # 13 = 104-bit WEP (also known as 128-bit WEP with 104 secret bits)
402 #wep_key_len_broadcast=5
403 #wep_key_len_unicast=5
404 # Rekeying period in seconds. 0 = do not rekey (i.e., set keys only once)
405 #wep_rekey_period=300
406
407 # EAPOL-Key index workaround (set bit7) for WinXP Supplicant (needed only if
408 # only broadcast keys are used)
409 eapol_key_index_workaround=0
410
411 # EAP reauthentication period in seconds (default: 3600 seconds; 0 = disable
412 # reauthentication).
413 #eap_reauth_period=3600
414
415 # Use PAE group address (01:80:c2:00:00:03) instead of individual target
416 # address when sending EAPOL frames with driver=wired. This is the most common
417 # mechanism used in wired authentication, but it also requires that the port
418 # is only used by one station.
419 #use_pae_group_addr=1
420
421 ##### Integrated EAP server ###################################################
422
423 # Optionally, hostapd can be configured to use an integrated EAP server
424 # to process EAP authentication locally without need for an external RADIUS
425 # server. This functionality can be used both as a local authentication server
426 # for IEEE 802.1X/EAPOL and as a RADIUS server for other devices.
427
428 # Use integrated EAP server instead of external RADIUS authentication
429 # server. This is also needed if hostapd is configured to act as a RADIUS
430 # authentication server.
431 eap_server=0
432
433 # Path for EAP server user database
434 #eap_user_file=/etc/hostapd.eap_user
435
436 # CA certificate (PEM or DER file) for EAP-TLS/PEAP/TTLS
437 #ca_cert=/etc/hostapd.ca.pem
438
439 # Server certificate (PEM or DER file) for EAP-TLS/PEAP/TTLS
440 #server_cert=/etc/hostapd.server.pem
441
442 # Private key matching with the server certificate for EAP-TLS/PEAP/TTLS
443 # This may point to the same file as server_cert if both certificate and key
444 # are included in a single file. PKCS#12 (PFX) file (.p12/.pfx) can also be
445 # used by commenting out server_cert and specifying the PFX file as the
446 # private_key.
447 #private_key=/etc/hostapd.server.prv
448
449 # Passphrase for private key
450 #private_key_passwd=secret passphrase
451
452 # Enable CRL verification.
453 # Note: hostapd does not yet support CRL downloading based on CDP. Thus, a
454 # valid CRL signed by the CA is required to be included in the ca_cert file.
455 # This can be done by using PEM format for CA certificate and CRL and
456 # concatenating these into one file. Whenever CRL changes, hostapd needs to be
457 # restarted to take the new CRL into use.
458 # 0 = do not verify CRLs (default)
459 # 1 = check the CRL of the user certificate
460 # 2 = check all CRLs in the certificate path
461 #check_crl=1
462
463 # dh_file: File path to DH/DSA parameters file (in PEM format)
464 # This is an optional configuration file for setting parameters for an
465 # ephemeral DH key exchange. In most cases, the default RSA authentication does
466 # not use this configuration. However, it is possible setup RSA to use
467 # ephemeral DH key exchange. In addition, ciphers with DSA keys always use
468 # ephemeral DH keys. This can be used to achieve forward secrecy. If the file
469 # is in DSA parameters format, it will be automatically converted into DH
470 # params. This parameter is required if anonymous EAP-FAST is used.
471 #dh_file=/etc/hostapd.dh.pem
472
473 # Configuration data for EAP-SIM database/authentication gateway interface.
474 # This is a text string in implementation specific format. The example
475 # implementation in eap_sim_db.c uses this as the UNIX domain socket name for
476 # the HLR/AuC gateway (e.g., hlr_auc_gw). In this case, the path uses "unix:"
477 # prefix.
478 #eap_sim_db=unix:/tmp/hlr_auc_gw.sock
479
480 # Encryption key for EAP-FAST PAC-Opaque values. This key must be a secret,
481 # random value. It is configured as a 16-octet value in hex format. It can be
482 # generated, e.g., with the following command:
483 # od -tx1 -v -N16 /dev/random | colrm 1 8 | tr -d ' '
484 #pac_opaque_encr_key=000102030405060708090a0b0c0d0e0f
485
486 # EAP-FAST authority identity (A-ID)
487 #eap_fast_a_id=test server
488
489 # EAP-SIM and EAP-AKA protected success/failure indication using AT_RESULT_IND
490 # (default: 0 = disabled).
491 #eap_sim_aka_result_ind=1
492
493 # Trusted Network Connect (TNC)
494 # If enabled, TNC validation will be required before the peer is allowed to
495 # connect. Note: This is only used with EAP-TTLS and EAP-FAST. If any other
496 # EAP method is enabled, the peer will be allowed to connect without TNC.
497 #tnc=1
498
499
500 ##### IEEE 802.11f - Inter-Access Point Protocol (IAPP) #######################
501
502 # Interface to be used for IAPP broadcast packets
503 #iapp_interface=eth0
504
505
506 ##### RADIUS client configuration #############################################
507 # for IEEE 802.1X with external Authentication Server, IEEE 802.11
508 # authentication with external ACL for MAC addresses, and accounting
509
510 # The own IP address of the access point (used as NAS-IP-Address)
511 own_ip_addr=127.0.0.1
512
513 # Optional NAS-Identifier string for RADIUS messages. When used, this should be
514 # a unique to the NAS within the scope of the RADIUS server. For example, a
515 # fully qualified domain name can be used here.
516 # When using IEEE 802.11r, nas_identifier must be set and must be between 1 and
517 # 48 octets long.
518 #nas_identifier=ap.example.com
519
520 # RADIUS authentication server
521 #auth_server_addr=127.0.0.1
522 #auth_server_port=1812
523 #auth_server_shared_secret=secret
524
525 # RADIUS accounting server
526 #acct_server_addr=127.0.0.1
527 #acct_server_port=1813
528 #acct_server_shared_secret=secret
529
530 # Secondary RADIUS servers; to be used if primary one does not reply to
531 # RADIUS packets. These are optional and there can be more than one secondary
532 # server listed.
533 #auth_server_addr=127.0.0.2
534 #auth_server_port=1812
535 #auth_server_shared_secret=secret2
536 #
537 #acct_server_addr=127.0.0.2
538 #acct_server_port=1813
539 #acct_server_shared_secret=secret2
540
541 # Retry interval for trying to return to the primary RADIUS server (in
542 # seconds). RADIUS client code will automatically try to use the next server
543 # when the current server is not replying to requests. If this interval is set,
544 # primary server will be retried after configured amount of time even if the
545 # currently used secondary server is still working.
546 #radius_retry_primary_interval=600
547
548
549 # Interim accounting update interval
550 # If this is set (larger than 0) and acct_server is configured, hostapd will
551 # send interim accounting updates every N seconds. Note: if set, this overrides
552 # possible Acct-Interim-Interval attribute in Access-Accept message. Thus, this
553 # value should not be configured in hostapd.conf, if RADIUS server is used to
554 # control the interim interval.
555 # This value should not be less 600 (10 minutes) and must not be less than
556 # 60 (1 minute).
557 #radius_acct_interim_interval=600
558
559 # Dynamic VLAN mode; allow RADIUS authentication server to decide which VLAN
560 # is used for the stations. This information is parsed from following RADIUS
561 # attributes based on RFC 3580 and RFC 2868: Tunnel-Type (value 13 = VLAN),
562 # Tunnel-Medium-Type (value 6 = IEEE 802), Tunnel-Private-Group-ID (value
563 # VLANID as a string). vlan_file option below must be configured if dynamic
564 # VLANs are used.
565 # 0 = disabled (default)
566 # 1 = option; use default interface if RADIUS server does not include VLAN ID
567 # 2 = required; reject authentication if RADIUS server does not include VLAN ID
568 #dynamic_vlan=0
569
570 # VLAN interface list for dynamic VLAN mode is read from a separate text file.
571 # This list is used to map VLAN ID from the RADIUS server to a network
572 # interface. Each station is bound to one interface in the same way as with
573 # multiple BSSIDs or SSIDs. Each line in this text file is defining a new
574 # interface and the line must include VLAN ID and interface name separated by
575 # white space (space or tab).
576 #vlan_file=/etc/hostapd.vlan
577
578 # Interface where 802.1q tagged packets should appear when a RADIUS server is
579 # used to determine which VLAN a station is on.  hostapd creates a bridge for
580 # each VLAN.  Then hostapd adds a VLAN interface (associated with the interface
581 # indicated by 'vlan_tagged_interface') and the appropriate wireless interface
582 # to the bridge.
583 #vlan_tagged_interface=eth0
584
585
586 ##### RADIUS authentication server configuration ##############################
587
588 # hostapd can be used as a RADIUS authentication server for other hosts. This
589 # requires that the integrated EAP server is also enabled and both
590 # authentication services are sharing the same configuration.
591
592 # File name of the RADIUS clients configuration for the RADIUS server. If this
593 # commented out, RADIUS server is disabled.
594 #radius_server_clients=/etc/hostapd.radius_clients
595
596 # The UDP port number for the RADIUS authentication server
597 #radius_server_auth_port=1812
598
599 # Use IPv6 with RADIUS server (IPv4 will also be supported using IPv6 API)
600 #radius_server_ipv6=1
601
602
603 ##### WPA/IEEE 802.11i configuration ##########################################
604
605 # Enable WPA. Setting this variable configures the AP to require WPA (either
606 # WPA-PSK or WPA-RADIUS/EAP based on other configuration). For WPA-PSK, either
607 # wpa_psk or wpa_passphrase must be set and wpa_key_mgmt must include WPA-PSK.
608 # For WPA-RADIUS/EAP, ieee8021x must be set (but without dynamic WEP keys),
609 # RADIUS authentication server must be configured, and WPA-EAP must be included
610 # in wpa_key_mgmt.
611 # This field is a bit field that can be used to enable WPA (IEEE 802.11i/D3.0)
612 # and/or WPA2 (full IEEE 802.11i/RSN):
613 # bit0 = WPA
614 # bit1 = IEEE 802.11i/RSN (WPA2) (dot11RSNAEnabled)
615 #wpa=1
616
617 # WPA pre-shared keys for WPA-PSK. This can be either entered as a 256-bit
618 # secret in hex format (64 hex digits), wpa_psk, or as an ASCII passphrase
619 # (8..63 characters) that will be converted to PSK. This conversion uses SSID
620 # so the PSK changes when ASCII passphrase is used and the SSID is changed.
621 # wpa_psk (dot11RSNAConfigPSKValue)
622 # wpa_passphrase (dot11RSNAConfigPSKPassPhrase)
623 #wpa_psk=0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef
624 #wpa_passphrase=secret passphrase
625
626 # Optionally, WPA PSKs can be read from a separate text file (containing list
627 # of (PSK,MAC address) pairs. This allows more than one PSK to be configured.
628 # Use absolute path name to make sure that the files can be read on SIGHUP
629 # configuration reloads.
630 #wpa_psk_file=/etc/hostapd.wpa_psk
631
632 # Set of accepted key management algorithms (WPA-PSK, WPA-EAP, or both). The
633 # entries are separated with a space.
634 # (dot11RSNAConfigAuthenticationSuitesTable)
635 #wpa_key_mgmt=WPA-PSK WPA-EAP
636
637 # Set of accepted cipher suites (encryption algorithms) for pairwise keys
638 # (unicast packets). This is a space separated list of algorithms:
639 # CCMP = AES in Counter mode with CBC-MAC [RFC 3610, IEEE 802.11i/D7.0]
640 # TKIP = Temporal Key Integrity Protocol [IEEE 802.11i/D7.0]
641 # Group cipher suite (encryption algorithm for broadcast and multicast frames)
642 # is automatically selected based on this configuration. If only CCMP is
643 # allowed as the pairwise cipher, group cipher will also be CCMP. Otherwise,
644 # TKIP will be used as the group cipher.
645 # (dot11RSNAConfigPairwiseCiphersTable)
646 # Pairwise cipher for WPA (v1) (default: TKIP)
647 #wpa_pairwise=TKIP CCMP
648 # Pairwise cipher for RSN/WPA2 (default: use wpa_pairwise value)
649 #rsn_pairwise=CCMP
650
651 # Time interval for rekeying GTK (broadcast/multicast encryption keys) in
652 # seconds. (dot11RSNAConfigGroupRekeyTime)
653 #wpa_group_rekey=600
654
655 # Rekey GTK when any STA that possesses the current GTK is leaving the BSS.
656 # (dot11RSNAConfigGroupRekeyStrict)
657 #wpa_strict_rekey=1
658
659 # Time interval for rekeying GMK (master key used internally to generate GTKs
660 # (in seconds).
661 #wpa_gmk_rekey=86400
662
663 # Enable IEEE 802.11i/RSN/WPA2 pre-authentication. This is used to speed up
664 # roaming be pre-authenticating IEEE 802.1X/EAP part of the full RSN
665 # authentication and key handshake before actually associating with a new AP.
666 # (dot11RSNAPreauthenticationEnabled)
667 #rsn_preauth=1
668 #
669 # Space separated list of interfaces from which pre-authentication frames are
670 # accepted (e.g., 'eth0' or 'eth0 wlan0wds0'. This list should include all
671 # interface that are used for connections to other APs. This could include
672 # wired interfaces and WDS links. The normal wireless data interface towards
673 # associated stations (e.g., wlan0) should not be added, since
674 # pre-authentication is only used with APs other than the currently associated
675 # one.
676 #rsn_preauth_interfaces=eth0
677
678 # peerkey: Whether PeerKey negotiation for direct links (IEEE 802.11e) is
679 # allowed. This is only used with RSN/WPA2.
680 # 0 = disabled (default)
681 # 1 = enabled
682 #peerkey=1
683
684 # ieee80211w: Whether management frame protection is enabled
685 # 0 = disabled (default)
686 # 1 = optional
687 # 2 = required
688 #ieee80211w=0
689
690
691 ##### IEEE 802.11r configuration ##############################################
692
693 # Mobility Domain identifier (dot11FTMobilityDomainID, MDID)
694 # MDID is used to indicate a group of APs (within an ESS, i.e., sharing the
695 # same SSID) between which a STA can use Fast BSS Transition.
696 # 2-octet identifier as a hex string.
697 #mobility_domain=a1b2
698
699 # PMK-R0 Key Holder identifier (dot11FTR0KeyHolderID)
700 # 1 to 48 octet identifier.
701 # This is configured with nas_identifier (see RADIUS client section above).
702
703 # Default lifetime of the PMK-RO in minutes; range 1..65535
704 # (dot11FTR0KeyLifetime)
705 #r0_key_lifetime=10000
706
707 # PMK-R1 Key Holder identifier (dot11FTR1KeyHolderID)
708 # 6-octet identifier as a hex string.
709 #r1_key_holder=000102030405
710
711 # Reassociation deadline in time units (TUs / 1.024 ms; range 1000..65535)
712 # (dot11FTReassociationDeadline)
713 #reassociation_deadline=1000
714
715 # List of R0KHs in the same Mobility Domain
716 # format: <MAC address> <NAS Identifier> <128-bit key as hex string>
717 # This list is used to map R0KH-ID (NAS Identifier) to a destination MAC
718 # address when requesting PMK-R1 key from the R0KH that the STA used during the
719 # Initial Mobility Domain Association.
720 #r0kh=02:01:02:03:04:05 r0kh-1.example.com 000102030405060708090a0b0c0d0e0f
721 #r0kh=02:01:02:03:04:06 r0kh-2.example.com 00112233445566778899aabbccddeeff
722 # And so on.. One line per R0KH.
723
724 # List of R1KHs in the same Mobility Domain
725 # format: <MAC address> <R0KH-ID> <128-bit key as hex string>
726 # This list is used to map R1KH-ID to a destination MAC address when sending
727 # PMK-R1 key from the R0KH. This is also the list of authorized R1KHs in the MD
728 # that can request PMK-R1 keys.
729 #r1kh=02:01:02:03:04:05 02:11:22:33:44:55 000102030405060708090a0b0c0d0e0f
730 #r1kh=02:01:02:03:04:06 02:11:22:33:44:66 00112233445566778899aabbccddeeff
731 # And so on.. One line per R1KH.
732
733 # Whether PMK-R1 push is enabled at R0KH
734 # 0 = do not push PMK-R1 to all configured R1KHs (default)
735 # 1 = push PMK-R1 to all configured R1KHs whenever a new PMK-R0 is derived
736 #pmk_r1_push=1
737
738 ##### Passive scanning ########################################################
739 # Scan different channels every N seconds. 0 = disable passive scanning.
740 #passive_scan_interval=60
741
742 # Listen N usecs on each channel when doing passive scanning.
743 # This value plus the time needed for changing channels should be less than
744 # 32 milliseconds (i.e. 32000 usec) to avoid interruptions to normal
745 # operations. Time needed for channel changing varies based on the used wlan
746 # hardware.
747 # default: disabled (0)
748 #passive_scan_listen=10000
749
750 # Passive scanning mode:
751 # 0 = scan all supported modes (802.11a/b/g/Turbo) (default)
752 # 1 = scan only the mode that is currently used for normal operations
753 #passive_scan_mode=1
754
755 # Maximum number of entries kept in AP table (either for passive scanning or
756 # for detecting Overlapping Legacy BSS Condition). The oldest entry will be
757 # removed when adding a new entry that would make the list grow over this
758 # limit. Note! Wi-Fi certification for IEEE 802.11g requires that OLBC is
759 # enabled, so this field should not be set to 0 when using IEEE 802.11g.
760 # default: 255
761 #ap_table_max_size=255
762
763 # Number of seconds of no frames received after which entries may be deleted
764 # from the AP table. Since passive scanning is not usually performed frequently
765 # this should not be set to very small value. In addition, there is no
766 # guarantee that every scan cycle will receive beacon frames from the
767 # neighboring APs.
768 # default: 60
769 #ap_table_expiration_time=3600
770
771
772 ##### Multiple BSSID support ##################################################
773 #
774 # Above configuration is using the default interface (wlan#, or multi-SSID VLAN
775 # interfaces). Other BSSIDs can be added by using separator 'bss' with
776 # default interface name to be allocated for the data packets of the new BSS.
777 #
778 # hostapd will generate BSSID mask based on the BSSIDs that are
779 # configured. hostapd will verify that dev_addr & MASK == dev_addr. If this is
780 # not the case, the MAC address of the radio must be changed before starting
781 # hostapd (ifconfig wlan0 hw ether <MAC addr>).
782 #
783 # BSSIDs are assigned in order to each BSS, unless an explicit BSSID is
784 # specified using the 'bssid' parameter.
785 # If an explicit BSSID is specified, it must be chosen such that it:
786 # - results in a valid MASK that covers it and the dev_addr
787 # - is not the same as the MAC address of the radio
788 # - is not the same as any other explicitly specified BSSID
789 #
790 # Please note that hostapd uses some of the values configured for the first BSS
791 # as the defaults for the following BSSes. However, it is recommended that all
792 # BSSes include explicit configuration of all relevant configuration items.
793 #
794 #bss=wlan0_0
795 #ssid=test2
796 # most of the above items can be used here (apart from radio interface specific
797 # items, like channel)
798
799 #bss=wlan0_1
800 #bssid=00:13:10:95:fe:0b
801 # ...