Replace hostapd_michael_mic_failure() with generic driver event
[hostap-gosc2009.git] / hostapd / hostapd.conf
blob36a5aae1d0622cc524d27812142e3c1b4ec79d95
1 ##### hostapd configuration file ##############################################
2 # Empty lines and lines starting with # are ignored
4 # AP netdevice name (without 'ap' postfix, i.e., wlan0 uses wlan0ap for
5 # management frames); ath0 for madwifi
6 interface=wlan0
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
13 # Driver interface type (hostap/wired/madwifi/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
19 # hostapd event logger configuration
21 # Two output method: syslog and stdout (only usable if not forking to
22 # background).
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
34 # Levels (minimum value for logged events):
35 #  0 = verbose debugging
36 #  1 = debugging
37 #  2 = informational messages
38 #  3 = notification
39 #  4 = warning
41 logger_syslog=-1
42 logger_syslog_level=2
43 logger_stdout=-1
44 logger_stdout_level=2
46 # Dump file for state information (on SIGUSR1)
47 dump_file=/tmp/hostapd.dump
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
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.
70 # This variable can be a group name or gid.
71 #ctrl_interface_group=wheel
72 ctrl_interface_group=0
75 ##### IEEE 802.11 related configuration #######################################
77 # SSID to be used in IEEE 802.11 management frames
78 ssid=test
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
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
92 # Operation mode (a = IEEE 802.11a, b = IEEE 802.11b, g = IEEE 802.11g,
93 # Default: IEEE 802.11b
94 hw_mode=a
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
103 # Beacon interval in kus (1.024 ms) (default: 100; range 15..65535)
104 beacon_int=100
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
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
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
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
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
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
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
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
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
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
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
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
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.
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
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
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
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
236 # Special queues; normally not user configurable
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
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
248 # 802.1D Tag (= UP) 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_BE           Best Effort
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
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.
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
276 wmm_enabled=1
278 # Low priority / AC_BK = background
279 wmm_ac_bk_cwmin=4
280 wmm_ac_bk_cwmax=10
281 wmm_ac_bk_aifs=7
282 wmm_ac_bk_txop_limit=0
283 wmm_ac_bk_acm=0
284 # Note: for IEEE 802.11b mode: cWmin=5 cWmax=10
286 # Normal priority / AC_BE = best effort
287 wmm_ac_be_aifs=3
288 wmm_ac_be_cwmin=4
289 wmm_ac_be_cwmax=10
290 wmm_ac_be_txop_limit=0
291 wmm_ac_be_acm=0
292 # Note: for IEEE 802.11b mode: cWmin=5 cWmax=7
294 # High priority / AC_VI = video
295 wmm_ac_vi_aifs=2
296 wmm_ac_vi_cwmin=3
297 wmm_ac_vi_cwmax=4
298 wmm_ac_vi_txop_limit=94
299 wmm_ac_vi_acm=0
300 # Note: for IEEE 802.11b mode: cWmin=4 cWmax=5 txop_limit=188
302 # Highest priority / AC_VO = voice
303 wmm_ac_vo_aifs=2
304 wmm_ac_vo_cwmin=2
305 wmm_ac_vo_cwmax=3
306 wmm_ac_vo_txop_limit=47
307 wmm_ac_vo_acm=0
308 # Note: for IEEE 802.11b mode: cWmin=3 cWmax=4 burst=102
310 # Static WEP key configuration
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"
328 # Station inactivity limit
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.
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
345 # Maximum allowed Listen Interval (how many Beacon periods STAs are allowed to
346 # remain asleep). Default: 65535 (no limit apart from field size)
347 #max_listen_interval=100
349 ##### IEEE 802.11n related configuration ######################################
351 # ieee80211n: Whether IEEE 802.11n (HT) is enabled
352 # 0 = disabled (default)
353 # 1 = enabled
354 # Note: You will also need to enable WMM for full HT functionality.
355 #ieee80211n=1
357 # ht_capab: HT capabilities (list of flags)
358 # LDPC coding capability: [LDPC] = supported
359 # Supported channel width set: [HT40-] = both 20 MHz and 40 MHz with secondary
360 #       channel below the primary channel; [HT40+] = both 20 MHz and 40 MHz
361 #       with secondary channel below the primary channel
362 #       (20 MHz only if neither is set)
363 #       Note: There are limits on which channels can be used with HT40- and
364 #       HT40+. Following table shows the channels that may be available for
365 #       HT40- and HT40+ use per IEEE 802.11n Annex J:
366 #       freq            HT40-           HT40+
367 #       2.4 GHz         5-13            1-7 (1-9 in Europe/Japan)
368 #       5 GHz           40,48,56,64     36,44,52,60
369 #       (depending on the location, not all of these channels may be available
370 #       for use)
371 #       Please note that 40 MHz channels may switch their primary and secondary
372 #       channels if needed or creation of 40 MHz channel maybe rejected based
373 #       on overlapping BSSes. These changes are done automatically when hostapd
374 #       is setting up the 40 MHz channel.
375 # Spatial Multiplexing (SM) Power Save: [SMPS-STATIC] or [SMPS-DYNAMIC]
376 #       (SMPS disabled if neither is set)
377 # HT-greenfield: [GF] (disabled if not set)
378 # Short GI for 20 MHz: [SHORT-GI-20] (disabled if not set)
379 # Short GI for 40 MHz: [SHORT-GI-40] (disabled if not set)
380 # Tx STBC: [TX-STBC] (disabled if not set)
381 # Rx STBC: [RX-STBC1] (one spatial stream), [RX-STBC12] (one or two spatial
382 #       streams), or [RX-STBC123] (one, two, or three spatial streams); Rx STBC
383 #       disabled if none of these set
384 # HT-delayed Block Ack: [DELAYED-BA] (disabled if not set)
385 # Maximum A-MSDU length: [MAX-AMSDU-7935] for 7935 octets (3839 octets if not
386 #       set)
387 # DSSS/CCK Mode in 40 MHz: [DSSS_CCK-40] = allowed (not allowed if not set)
388 # PSMP support: [PSMP] (disabled if not set)
389 # L-SIG TXOP protection support: [LSIG-TXOP-PROT] (disabled if not set)
390 #ht_capab=[HT40-][SHORT-GI-20][SHORT-GI-40]
392 ##### IEEE 802.1X-2004 related configuration ##################################
394 # Require IEEE 802.1X authorization
395 #ieee8021x=1
397 # IEEE 802.1X/EAPOL version
398 # hostapd is implemented based on IEEE Std 802.1X-2004 which defines EAPOL
399 # version 2. However, there are many client implementations that do not handle
400 # the new version number correctly (they seem to drop the frames completely).
401 # In order to make hostapd interoperate with these clients, the version number
402 # can be set to the older version (1) with this configuration value.
403 #eapol_version=2
405 # Optional displayable message sent with EAP Request-Identity. The first \0
406 # in this string will be converted to ASCII-0 (nul). This can be used to
407 # separate network info (comma separated list of attribute=value pairs); see,
408 # e.g., RFC 4284.
409 #eap_message=hello
410 #eap_message=hello\0networkid=netw,nasid=foo,portid=0,NAIRealms=example.com
412 # WEP rekeying (disabled if key lengths are not set or are set to 0)
413 # Key lengths for default/broadcast and individual/unicast keys:
414 # 5 = 40-bit WEP (also known as 64-bit WEP with 40 secret bits)
415 # 13 = 104-bit WEP (also known as 128-bit WEP with 104 secret bits)
416 #wep_key_len_broadcast=5
417 #wep_key_len_unicast=5
418 # Rekeying period in seconds. 0 = do not rekey (i.e., set keys only once)
419 #wep_rekey_period=300
421 # EAPOL-Key index workaround (set bit7) for WinXP Supplicant (needed only if
422 # only broadcast keys are used)
423 eapol_key_index_workaround=0
425 # EAP reauthentication period in seconds (default: 3600 seconds; 0 = disable
426 # reauthentication).
427 #eap_reauth_period=3600
429 # Use PAE group address (01:80:c2:00:00:03) instead of individual target
430 # address when sending EAPOL frames with driver=wired. This is the most common
431 # mechanism used in wired authentication, but it also requires that the port
432 # is only used by one station.
433 #use_pae_group_addr=1
435 ##### Integrated EAP server ###################################################
437 # Optionally, hostapd can be configured to use an integrated EAP server
438 # to process EAP authentication locally without need for an external RADIUS
439 # server. This functionality can be used both as a local authentication server
440 # for IEEE 802.1X/EAPOL and as a RADIUS server for other devices.
442 # Use integrated EAP server instead of external RADIUS authentication
443 # server. This is also needed if hostapd is configured to act as a RADIUS
444 # authentication server.
445 eap_server=0
447 # Path for EAP server user database
448 #eap_user_file=/etc/hostapd.eap_user
450 # CA certificate (PEM or DER file) for EAP-TLS/PEAP/TTLS
451 #ca_cert=/etc/hostapd.ca.pem
453 # Server certificate (PEM or DER file) for EAP-TLS/PEAP/TTLS
454 #server_cert=/etc/hostapd.server.pem
456 # Private key matching with the server certificate for EAP-TLS/PEAP/TTLS
457 # This may point to the same file as server_cert if both certificate and key
458 # are included in a single file. PKCS#12 (PFX) file (.p12/.pfx) can also be
459 # used by commenting out server_cert and specifying the PFX file as the
460 # private_key.
461 #private_key=/etc/hostapd.server.prv
463 # Passphrase for private key
464 #private_key_passwd=secret passphrase
466 # Enable CRL verification.
467 # Note: hostapd does not yet support CRL downloading based on CDP. Thus, a
468 # valid CRL signed by the CA is required to be included in the ca_cert file.
469 # This can be done by using PEM format for CA certificate and CRL and
470 # concatenating these into one file. Whenever CRL changes, hostapd needs to be
471 # restarted to take the new CRL into use.
472 # 0 = do not verify CRLs (default)
473 # 1 = check the CRL of the user certificate
474 # 2 = check all CRLs in the certificate path
475 #check_crl=1
477 # dh_file: File path to DH/DSA parameters file (in PEM format)
478 # This is an optional configuration file for setting parameters for an
479 # ephemeral DH key exchange. In most cases, the default RSA authentication does
480 # not use this configuration. However, it is possible setup RSA to use
481 # ephemeral DH key exchange. In addition, ciphers with DSA keys always use
482 # ephemeral DH keys. This can be used to achieve forward secrecy. If the file
483 # is in DSA parameters format, it will be automatically converted into DH
484 # params. This parameter is required if anonymous EAP-FAST is used.
485 # You can generate DH parameters file with OpenSSL, e.g.,
486 # "openssl dhparam -out /etc/hostapd.dh.pem 1024"
487 #dh_file=/etc/hostapd.dh.pem
489 # Configuration data for EAP-SIM database/authentication gateway interface.
490 # This is a text string in implementation specific format. The example
491 # implementation in eap_sim_db.c uses this as the UNIX domain socket name for
492 # the HLR/AuC gateway (e.g., hlr_auc_gw). In this case, the path uses "unix:"
493 # prefix.
494 #eap_sim_db=unix:/tmp/hlr_auc_gw.sock
496 # Encryption key for EAP-FAST PAC-Opaque values. This key must be a secret,
497 # random value. It is configured as a 16-octet value in hex format. It can be
498 # generated, e.g., with the following command:
499 # od -tx1 -v -N16 /dev/random | colrm 1 8 | tr -d ' '
500 #pac_opaque_encr_key=000102030405060708090a0b0c0d0e0f
502 # EAP-FAST authority identity (A-ID)
503 # A-ID indicates the identity of the authority that issues PACs. The A-ID
504 # should be unique across all issuing servers. In theory, this is a variable
505 # length field, but due to some existing implementations requiring A-ID to be
506 # 16 octets in length, it is strongly recommended to use that length for the
507 # field to provid interoperability with deployed peer implementations. This
508 # field is configured in hex format.
509 #eap_fast_a_id=101112131415161718191a1b1c1d1e1f
511 # EAP-FAST authority identifier information (A-ID-Info)
512 # This is a user-friendly name for the A-ID. For example, the enterprise name
513 # and server name in a human-readable format. This field is encoded as UTF-8.
514 #eap_fast_a_id_info=test server
516 # Enable/disable different EAP-FAST provisioning modes:
517 #0 = provisioning disabled
518 #1 = only anonymous provisioning allowed
519 #2 = only authenticated provisioning allowed
520 #3 = both provisioning modes allowed (default)
521 #eap_fast_prov=3
523 # EAP-FAST PAC-Key lifetime in seconds (hard limit)
524 #pac_key_lifetime=604800
526 # EAP-FAST PAC-Key refresh time in seconds (soft limit on remaining hard
527 # limit). The server will generate a new PAC-Key when this number of seconds
528 # (or fewer) of the lifetime remains.
529 #pac_key_refresh_time=86400
531 # EAP-SIM and EAP-AKA protected success/failure indication using AT_RESULT_IND
532 # (default: 0 = disabled).
533 #eap_sim_aka_result_ind=1
535 # Trusted Network Connect (TNC)
536 # If enabled, TNC validation will be required before the peer is allowed to
537 # connect. Note: This is only used with EAP-TTLS and EAP-FAST. If any other
538 # EAP method is enabled, the peer will be allowed to connect without TNC.
539 #tnc=1
542 ##### IEEE 802.11f - Inter-Access Point Protocol (IAPP) #######################
544 # Interface to be used for IAPP broadcast packets
545 #iapp_interface=eth0
548 ##### RADIUS client configuration #############################################
549 # for IEEE 802.1X with external Authentication Server, IEEE 802.11
550 # authentication with external ACL for MAC addresses, and accounting
552 # The own IP address of the access point (used as NAS-IP-Address)
553 own_ip_addr=127.0.0.1
555 # Optional NAS-Identifier string for RADIUS messages. When used, this should be
556 # a unique to the NAS within the scope of the RADIUS server. For example, a
557 # fully qualified domain name can be used here.
558 # When using IEEE 802.11r, nas_identifier must be set and must be between 1 and
559 # 48 octets long.
560 #nas_identifier=ap.example.com
562 # RADIUS authentication server
563 #auth_server_addr=127.0.0.1
564 #auth_server_port=1812
565 #auth_server_shared_secret=secret
567 # RADIUS accounting server
568 #acct_server_addr=127.0.0.1
569 #acct_server_port=1813
570 #acct_server_shared_secret=secret
572 # Secondary RADIUS servers; to be used if primary one does not reply to
573 # RADIUS packets. These are optional and there can be more than one secondary
574 # server listed.
575 #auth_server_addr=127.0.0.2
576 #auth_server_port=1812
577 #auth_server_shared_secret=secret2
579 #acct_server_addr=127.0.0.2
580 #acct_server_port=1813
581 #acct_server_shared_secret=secret2
583 # Retry interval for trying to return to the primary RADIUS server (in
584 # seconds). RADIUS client code will automatically try to use the next server
585 # when the current server is not replying to requests. If this interval is set,
586 # primary server will be retried after configured amount of time even if the
587 # currently used secondary server is still working.
588 #radius_retry_primary_interval=600
591 # Interim accounting update interval
592 # If this is set (larger than 0) and acct_server is configured, hostapd will
593 # send interim accounting updates every N seconds. Note: if set, this overrides
594 # possible Acct-Interim-Interval attribute in Access-Accept message. Thus, this
595 # value should not be configured in hostapd.conf, if RADIUS server is used to
596 # control the interim interval.
597 # This value should not be less 600 (10 minutes) and must not be less than
598 # 60 (1 minute).
599 #radius_acct_interim_interval=600
601 # Dynamic VLAN mode; allow RADIUS authentication server to decide which VLAN
602 # is used for the stations. This information is parsed from following RADIUS
603 # attributes based on RFC 3580 and RFC 2868: Tunnel-Type (value 13 = VLAN),
604 # Tunnel-Medium-Type (value 6 = IEEE 802), Tunnel-Private-Group-ID (value
605 # VLANID as a string). vlan_file option below must be configured if dynamic
606 # VLANs are used. Optionally, the local MAC ACL list (accept_mac_file) can be
607 # used to set static client MAC address to VLAN ID mapping.
608 # 0 = disabled (default)
609 # 1 = option; use default interface if RADIUS server does not include VLAN ID
610 # 2 = required; reject authentication if RADIUS server does not include VLAN ID
611 #dynamic_vlan=0
613 # VLAN interface list for dynamic VLAN mode is read from a separate text file.
614 # This list is used to map VLAN ID from the RADIUS server to a network
615 # interface. Each station is bound to one interface in the same way as with
616 # multiple BSSIDs or SSIDs. Each line in this text file is defining a new
617 # interface and the line must include VLAN ID and interface name separated by
618 # white space (space or tab).
619 #vlan_file=/etc/hostapd.vlan
621 # Interface where 802.1q tagged packets should appear when a RADIUS server is
622 # used to determine which VLAN a station is on.  hostapd creates a bridge for
623 # each VLAN.  Then hostapd adds a VLAN interface (associated with the interface
624 # indicated by 'vlan_tagged_interface') and the appropriate wireless interface
625 # to the bridge.
626 #vlan_tagged_interface=eth0
629 ##### RADIUS authentication server configuration ##############################
631 # hostapd can be used as a RADIUS authentication server for other hosts. This
632 # requires that the integrated EAP server is also enabled and both
633 # authentication services are sharing the same configuration.
635 # File name of the RADIUS clients configuration for the RADIUS server. If this
636 # commented out, RADIUS server is disabled.
637 #radius_server_clients=/etc/hostapd.radius_clients
639 # The UDP port number for the RADIUS authentication server
640 #radius_server_auth_port=1812
642 # Use IPv6 with RADIUS server (IPv4 will also be supported using IPv6 API)
643 #radius_server_ipv6=1
646 ##### WPA/IEEE 802.11i configuration ##########################################
648 # Enable WPA. Setting this variable configures the AP to require WPA (either
649 # WPA-PSK or WPA-RADIUS/EAP based on other configuration). For WPA-PSK, either
650 # wpa_psk or wpa_passphrase must be set and wpa_key_mgmt must include WPA-PSK.
651 # For WPA-RADIUS/EAP, ieee8021x must be set (but without dynamic WEP keys),
652 # RADIUS authentication server must be configured, and WPA-EAP must be included
653 # in wpa_key_mgmt.
654 # This field is a bit field that can be used to enable WPA (IEEE 802.11i/D3.0)
655 # and/or WPA2 (full IEEE 802.11i/RSN):
656 # bit0 = WPA
657 # bit1 = IEEE 802.11i/RSN (WPA2) (dot11RSNAEnabled)
658 #wpa=1
660 # WPA pre-shared keys for WPA-PSK. This can be either entered as a 256-bit
661 # secret in hex format (64 hex digits), wpa_psk, or as an ASCII passphrase
662 # (8..63 characters) that will be converted to PSK. This conversion uses SSID
663 # so the PSK changes when ASCII passphrase is used and the SSID is changed.
664 # wpa_psk (dot11RSNAConfigPSKValue)
665 # wpa_passphrase (dot11RSNAConfigPSKPassPhrase)
666 #wpa_psk=0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef
667 #wpa_passphrase=secret passphrase
669 # Optionally, WPA PSKs can be read from a separate text file (containing list
670 # of (PSK,MAC address) pairs. This allows more than one PSK to be configured.
671 # Use absolute path name to make sure that the files can be read on SIGHUP
672 # configuration reloads.
673 #wpa_psk_file=/etc/hostapd.wpa_psk
675 # Set of accepted key management algorithms (WPA-PSK, WPA-EAP, or both). The
676 # entries are separated with a space. WPA-PSK-SHA256 and WPA-EAP-SHA256 can be
677 # added to enable SHA256-based stronger algorithms.
678 # (dot11RSNAConfigAuthenticationSuitesTable)
679 #wpa_key_mgmt=WPA-PSK WPA-EAP
681 # Set of accepted cipher suites (encryption algorithms) for pairwise keys
682 # (unicast packets). This is a space separated list of algorithms:
683 # CCMP = AES in Counter mode with CBC-MAC [RFC 3610, IEEE 802.11i/D7.0]
684 # TKIP = Temporal Key Integrity Protocol [IEEE 802.11i/D7.0]
685 # Group cipher suite (encryption algorithm for broadcast and multicast frames)
686 # is automatically selected based on this configuration. If only CCMP is
687 # allowed as the pairwise cipher, group cipher will also be CCMP. Otherwise,
688 # TKIP will be used as the group cipher.
689 # (dot11RSNAConfigPairwiseCiphersTable)
690 # Pairwise cipher for WPA (v1) (default: TKIP)
691 #wpa_pairwise=TKIP CCMP
692 # Pairwise cipher for RSN/WPA2 (default: use wpa_pairwise value)
693 #rsn_pairwise=CCMP
695 # Time interval for rekeying GTK (broadcast/multicast encryption keys) in
696 # seconds. (dot11RSNAConfigGroupRekeyTime)
697 #wpa_group_rekey=600
699 # Rekey GTK when any STA that possesses the current GTK is leaving the BSS.
700 # (dot11RSNAConfigGroupRekeyStrict)
701 #wpa_strict_rekey=1
703 # Time interval for rekeying GMK (master key used internally to generate GTKs
704 # (in seconds).
705 #wpa_gmk_rekey=86400
707 # Maximum lifetime for PTK in seconds. This can be used to enforce rekeying of
708 # PTK to mitigate some attacks against TKIP deficiencies.
709 #wpa_ptk_rekey=600
711 # Enable IEEE 802.11i/RSN/WPA2 pre-authentication. This is used to speed up
712 # roaming be pre-authenticating IEEE 802.1X/EAP part of the full RSN
713 # authentication and key handshake before actually associating with a new AP.
714 # (dot11RSNAPreauthenticationEnabled)
715 #rsn_preauth=1
717 # Space separated list of interfaces from which pre-authentication frames are
718 # accepted (e.g., 'eth0' or 'eth0 wlan0wds0'. This list should include all
719 # interface that are used for connections to other APs. This could include
720 # wired interfaces and WDS links. The normal wireless data interface towards
721 # associated stations (e.g., wlan0) should not be added, since
722 # pre-authentication is only used with APs other than the currently associated
723 # one.
724 #rsn_preauth_interfaces=eth0
726 # peerkey: Whether PeerKey negotiation for direct links (IEEE 802.11e) is
727 # allowed. This is only used with RSN/WPA2.
728 # 0 = disabled (default)
729 # 1 = enabled
730 #peerkey=1
732 # ieee80211w: Whether management frame protection (MFP) is enabled
733 # 0 = disabled (default)
734 # 1 = optional
735 # 2 = required
736 #ieee80211w=0
738 # Association SA Query maximum timeout (in TU = 1.024 ms; for MFP)
739 # (maximum time to wait for a SA Query response)
740 # dot11AssociationSAQueryMaximumTimeout, 1...4294967295
741 #assoc_sa_query_max_timeout=1000
743 # Association SA Query retry timeout (in TU = 1.024 ms; for MFP)
744 # (time between two subsequent SA Query requests)
745 # dot11AssociationSAQueryRetryTimeout, 1...4294967295
746 #assoc_sa_query_retry_timeout=201
749 # okc: Opportunistic Key Caching (aka Proactive Key Caching)
750 # Allow PMK cache to be shared opportunistically among configured interfaces
751 # and BSSes (i.e., all configurations within a single hostapd process).
752 # 0 = disabled (default)
753 # 1 = enabled
754 #okc=1
757 ##### IEEE 802.11r configuration ##############################################
759 # Mobility Domain identifier (dot11FTMobilityDomainID, MDID)
760 # MDID is used to indicate a group of APs (within an ESS, i.e., sharing the
761 # same SSID) between which a STA can use Fast BSS Transition.
762 # 2-octet identifier as a hex string.
763 #mobility_domain=a1b2
765 # PMK-R0 Key Holder identifier (dot11FTR0KeyHolderID)
766 # 1 to 48 octet identifier.
767 # This is configured with nas_identifier (see RADIUS client section above).
769 # Default lifetime of the PMK-RO in minutes; range 1..65535
770 # (dot11FTR0KeyLifetime)
771 #r0_key_lifetime=10000
773 # PMK-R1 Key Holder identifier (dot11FTR1KeyHolderID)
774 # 6-octet identifier as a hex string.
775 #r1_key_holder=000102030405
777 # Reassociation deadline in time units (TUs / 1.024 ms; range 1000..65535)
778 # (dot11FTReassociationDeadline)
779 #reassociation_deadline=1000
781 # List of R0KHs in the same Mobility Domain
782 # format: <MAC address> <NAS Identifier> <128-bit key as hex string>
783 # This list is used to map R0KH-ID (NAS Identifier) to a destination MAC
784 # address when requesting PMK-R1 key from the R0KH that the STA used during the
785 # Initial Mobility Domain Association.
786 #r0kh=02:01:02:03:04:05 r0kh-1.example.com 000102030405060708090a0b0c0d0e0f
787 #r0kh=02:01:02:03:04:06 r0kh-2.example.com 00112233445566778899aabbccddeeff
788 # And so on.. One line per R0KH.
790 # List of R1KHs in the same Mobility Domain
791 # format: <MAC address> <R0KH-ID> <128-bit key as hex string>
792 # This list is used to map R1KH-ID to a destination MAC address when sending
793 # PMK-R1 key from the R0KH. This is also the list of authorized R1KHs in the MD
794 # that can request PMK-R1 keys.
795 #r1kh=02:01:02:03:04:05 02:11:22:33:44:55 000102030405060708090a0b0c0d0e0f
796 #r1kh=02:01:02:03:04:06 02:11:22:33:44:66 00112233445566778899aabbccddeeff
797 # And so on.. One line per R1KH.
799 # Whether PMK-R1 push is enabled at R0KH
800 # 0 = do not push PMK-R1 to all configured R1KHs (default)
801 # 1 = push PMK-R1 to all configured R1KHs whenever a new PMK-R0 is derived
802 #pmk_r1_push=1
804 ##### Neighbor table ##########################################################
805 # Maximum number of entries kept in AP table (either for neigbor table or for
806 # detecting Overlapping Legacy BSS Condition). The oldest entry will be
807 # removed when adding a new entry that would make the list grow over this
808 # limit. Note! WFA certification for IEEE 802.11g requires that OLBC is
809 # enabled, so this field should not be set to 0 when using IEEE 802.11g.
810 # default: 255
811 #ap_table_max_size=255
813 # Number of seconds of no frames received after which entries may be deleted
814 # from the AP table. Since passive scanning is not usually performed frequently
815 # this should not be set to very small value. In addition, there is no
816 # guarantee that every scan cycle will receive beacon frames from the
817 # neighboring APs.
818 # default: 60
819 #ap_table_expiration_time=3600
822 ##### Wi-Fi Protected Setup (WPS) #############################################
824 # WPS state
825 # 0 = WPS disabled (default)
826 # 1 = WPS enabled, not configured
827 # 2 = WPS enabled, configured
828 #wps_state=2
830 # AP can be configured into a locked state where new WPS Registrar are not
831 # accepted, but previously authorized Registrars (including the internal one)
832 # can continue to add new Enrollees.
833 #ap_setup_locked=1
835 # Universally Unique IDentifier (UUID; see RFC 4122) of the device
836 # This value is used as the UUID for the internal WPS Registrar. If the AP
837 # is also using UPnP, this value should be set to the device's UPnP UUID.
838 # If not configured, UUID will be generated based on the local MAC address.
839 #uuid=12345678-9abc-def0-1234-56789abcdef0
841 # Note: If wpa_psk_file is set, WPS is used to generate random, per-device PSKs
842 # that will be appended to the wpa_psk_file. If wpa_psk_file is not set, the
843 # default PSK (wpa_psk/wpa_passphrase) will be delivered to Enrollees. Use of
844 # per-device PSKs is recommended as the more secure option (i.e., make sure to
845 # set wpa_psk_file when using WPS with WPA-PSK).
847 # When an Enrollee requests access to the network with PIN method, the Enrollee
848 # PIN will need to be entered for the Registrar. PIN request notifications are
849 # sent to hostapd ctrl_iface monitor. In addition, they can be written to a
850 # text file that could be used, e.g., to populate the AP administration UI with
851 # pending PIN requests. If the following variable is set, the PIN requests will
852 # be written to the configured file.
853 #wps_pin_requests=/var/run/hostapd_wps_pin_requests
855 # Device Name
856 # User-friendly description of device; up to 32 octets encoded in UTF-8
857 #device_name=Wireless AP
859 # Manufacturer
860 # The manufacturer of the device (up to 64 ASCII characters)
861 #manufacturer=Company
863 # Model Name
864 # Model of the device (up to 32 ASCII characters)
865 #model_name=WAP
867 # Model Number
868 # Additional device description (up to 32 ASCII characters)
869 #model_number=123
871 # Serial Number
872 # Serial number of the device (up to 32 characters)
873 #serial_number=12345
875 # Primary Device Type
876 # Used format: <categ>-<OUI>-<subcateg>
877 # categ = Category as an integer value
878 # OUI = OUI and type octet as a 4-octet hex-encoded value; 0050F204 for
879 #       default WPS OUI
880 # subcateg = OUI-specific Sub Category as an integer value
881 # Examples:
882 #   1-0050F204-1 (Computer / PC)
883 #   1-0050F204-2 (Computer / Server)
884 #   5-0050F204-1 (Storage / NAS)
885 #   6-0050F204-1 (Network Infrastructure / AP)
886 #device_type=6-0050F204-1
888 # OS Version
889 # 4-octet operating system version number (hex string)
890 #os_version=01020300
892 # Config Methods
893 # List of the supported configuration methods
894 #config_methods=label display push_button keypad
896 # Access point PIN for initial configuration and adding Registrars
897 # If not set, hostapd will not allow external WPS Registrars to control the
898 # access point.
899 #ap_pin=12345670
901 # Skip building of automatic WPS credential
902 # This can be used to allow the automatically generated Credential attribute to
903 # be replaced with pre-configured Credential(s).
904 #skip_cred_build=1
906 # Additional Credential attribute(s)
907 # This option can be used to add pre-configured Credential attributes into M8
908 # message when acting as a Registrar. If skip_cred_build=1, this data will also
909 # be able to override the Credential attribute that would have otherwise been
910 # automatically generated based on network configuration. This configuration
911 # option points to an external file that much contain the WPS Credential
912 # attribute(s) as binary data.
913 #extra_cred=hostapd.cred
915 # Credential processing
916 #   0 = process received credentials internally (default)
917 #   1 = do not process received credentials; just pass them over ctrl_iface to
918 #       external program(s)
919 #   2 = process received credentials internally and pass them over ctrl_iface
920 #       to external program(s)
921 # Note: With wps_cred_processing=1, skip_cred_build should be set to 1 and
922 # extra_cred be used to provide the Credential data for Enrollees.
924 # wps_cred_processing=1 will disabled automatic updates of hostapd.conf file
925 # both for Credential processing and for marking AP Setup Locked based on
926 # validation failures of AP PIN. An external program is responsible on updating
927 # the configuration appropriately in this case.
928 #wps_cred_processing=0
930 # AP Settings Attributes for M7
931 # By default, hostapd generates the AP Settings Attributes for M7 based on the
932 # current configuration. It is possible to override this by providing a file
933 # with pre-configured attributes. This is similar to extra_cred file format,
934 # but the AP Settings attributes are not encapsulated in a Credential
935 # attribute.
936 #ap_settings=hostapd.ap_settings
938 # WPS UPnP interface
939 # If set, support for external Registrars is enabled.
940 #upnp_iface=br0
942 # Friendly Name (required for UPnP)
943 # Short description for end use. Should be less than 64 characters.
944 #friendly_name=WPS Access Point
946 # Manufacturer URL (optional for UPnP)
947 #manufacturer_url=http://www.example.com/
949 # Model Description (recommended for UPnP)
950 # Long description for end user. Should be less than 128 characters.
951 #model_description=Wireless Access Point
953 # Model URL (optional for UPnP)
954 #model_url=http://www.example.com/model/
956 # Universal Product Code (optional for UPnP)
957 # 12-digit, all-numeric code that identifies the consumer package.
958 #upc=123456789012
960 ##### Multiple BSSID support ##################################################
962 # Above configuration is using the default interface (wlan#, or multi-SSID VLAN
963 # interfaces). Other BSSIDs can be added by using separator 'bss' with
964 # default interface name to be allocated for the data packets of the new BSS.
966 # hostapd will generate BSSID mask based on the BSSIDs that are
967 # configured. hostapd will verify that dev_addr & MASK == dev_addr. If this is
968 # not the case, the MAC address of the radio must be changed before starting
969 # hostapd (ifconfig wlan0 hw ether <MAC addr>). If a BSSID is configured for
970 # every secondary BSS, this limitation is not applied at hostapd and other
971 # masks may be used if the driver supports them (e.g., swap the locally
972 # administered bit)
974 # BSSIDs are assigned in order to each BSS, unless an explicit BSSID is
975 # specified using the 'bssid' parameter.
976 # If an explicit BSSID is specified, it must be chosen such that it:
977 # - results in a valid MASK that covers it and the dev_addr
978 # - is not the same as the MAC address of the radio
979 # - is not the same as any other explicitly specified BSSID
981 # Please note that hostapd uses some of the values configured for the first BSS
982 # as the defaults for the following BSSes. However, it is recommended that all
983 # BSSes include explicit configuration of all relevant configuration items.
985 #bss=wlan0_0
986 #ssid=test2
987 # most of the above items can be used here (apart from radio interface specific
988 # items, like channel)
990 #bss=wlan0_1
991 #bssid=00:13:10:95:fe:0b
992 # ...