Home | History | Annotate | Line # | Download | only in docbook
      1      1.1  christos <!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN">
      2      1.1  christos 
      3      1.1  christos <refentry>
      4  1.1.1.6  christos   <refentryinfo>
      5  1.1.1.6  christos     <date>07 August 2019</date>
      6  1.1.1.6  christos   </refentryinfo>
      7  1.1.1.6  christos 
      8      1.1  christos   <refmeta>
      9      1.1  christos     <refentrytitle>eapol_test</refentrytitle>
     10      1.1  christos     <manvolnum>8</manvolnum>
     11      1.1  christos   </refmeta>
     12      1.1  christos   <refnamediv>
     13      1.1  christos     <refname>eapol_test</refname>
     14      1.1  christos 
     15      1.1  christos     <refpurpose>EAP peer and RADIUS client testing</refpurpose>
     16      1.1  christos   </refnamediv>
     17      1.1  christos 
     18      1.1  christos   <refsynopsisdiv>
     19      1.1  christos     <cmdsynopsis>
     20      1.1  christos       <command>eapol_test</command>
     21      1.1  christos       <arg>-nWS</arg>
     22      1.1  christos       <arg>-c<replaceable>config file</replaceable></arg>
     23      1.1  christos       <arg>-a<replaceable>server IP address</replaceable></arg>
     24      1.1  christos       <arg>-A<replaceable>client IP address</replaceable></arg>
     25      1.1  christos       <arg>-p<replaceable>UDP port</replaceable></arg>
     26      1.1  christos       <arg>-s<replaceable>shared secret</replaceable></arg>
     27      1.1  christos       <arg>-r<replaceable>re-authentications</replaceable></arg>
     28      1.1  christos       <arg>-t<replaceable>timeout</replaceable></arg>
     29      1.1  christos       <arg>-C<replaceable>Connect-Info</replaceable></arg>
     30      1.1  christos       <arg>-M<replaceable>MAC address</replaceable></arg>
     31      1.1  christos       <arg>-o<replaceable>file</replaceable></arg>
     32      1.1  christos       <arg>-N<replaceable>attr spec</replaceable></arg>
     33      1.1  christos     </cmdsynopsis>
     34      1.1  christos     <cmdsynopsis>
     35      1.1  christos       <command>eapol_test scard</command>
     36      1.1  christos     </cmdsynopsis>
     37      1.1  christos     <cmdsynopsis>
     38      1.1  christos       <command>eapol_test sim</command>
     39      1.1  christos       <arg>PIN</arg>
     40      1.1  christos       <arg>num triplets</arg>
     41      1.1  christos     </cmdsynopsis>
     42      1.1  christos   </refsynopsisdiv>
     43      1.1  christos 
     44      1.1  christos   <refsect1>
     45      1.1  christos     <title>Overview</title>
     46      1.1  christos 
     47      1.1  christos     <para>eapol_test is a program that links together the same EAP
     48      1.1  christos     peer implementation that wpa_supplicant is using and the RADIUS
     49      1.1  christos     authentication client code from hostapd. In addition, it has
     50      1.1  christos     minimal glue code to combine these two components in similar
     51      1.1  christos     ways to IEEE 802.1X/EAPOL Authenticator state machines. In other
     52      1.1  christos     words, it integrates IEEE 802.1X Authenticator (normally, an
     53      1.1  christos     access point) and IEEE 802.1X Supplicant (normally, a wireless
     54      1.1  christos     client) together to generate a single program that can be used to
     55      1.1  christos     test EAP methods without having to setup an access point and a
     56      1.1  christos     wireless client.</para>
     57      1.1  christos 
     58      1.1  christos     <para>The main uses for eapol_test are in interoperability testing
     59      1.1  christos     of EAP methods against RADIUS servers and in development testing
     60      1.1  christos     for new EAP methods. It can be easily used to automate EAP testing
     61      1.1  christos     for interoperability and regression since the program can be run
     62      1.1  christos     from shell scripts without require additional test components apart
     63      1.1  christos     from a RADIUS server. For example, the automated EAP tests described
     64      1.1  christos     in eap_testing.txt are implemented with eapol_test. Similarly,
     65      1.1  christos     eapol_test could be used to implement an automated regression
     66      1.1  christos     test suite for a RADIUS authentication server.</para>
     67      1.1  christos 
     68      1.1  christos 
     69      1.1  christos     <para>As an example:</para>
     70      1.1  christos 
     71      1.1  christos <blockquote><programlisting>
     72      1.1  christos eapol_test -ctest.conf -a127.0.0.1 -p1812 -ssecret -r1
     73      1.1  christos </programlisting></blockquote>
     74      1.1  christos 
     75      1.1  christos     <para>tries to complete EAP authentication based on the network
     76      1.1  christos     configuration from test.conf against the RADIUS server running
     77      1.1  christos     on the local host. A re-authentication is triggered to test fast
     78      1.1  christos     re-authentication. The configuration file uses the same format for
     79      1.1  christos     network blocks as wpa_supplicant.</para>
     80      1.1  christos 
     81      1.1  christos   </refsect1>
     82      1.1  christos   <refsect1>
     83      1.1  christos     <title>Command Arguments</title>
     84      1.1  christos     <variablelist>
     85      1.1  christos       <varlistentry>
     86      1.1  christos 	<term>-c configuration file path</term>
     87      1.1  christos 
     88      1.1  christos 	<listitem><para>A configuration to use.  The configuration should
     89      1.1  christos 	use the same format for network blocks as wpa_supplicant.
     90      1.1  christos 	</para></listitem>
     91      1.1  christos       </varlistentry>
     92      1.1  christos 
     93      1.1  christos       <varlistentry>
     94      1.1  christos 	<term>-a AS address</term>
     95      1.1  christos 
     96      1.1  christos 	<listitem><para>IP address of the authentication server.  The
     97      1.1  christos 	default is '127.0.0.1'.</para></listitem>
     98      1.1  christos       </varlistentry>
     99      1.1  christos 
    100      1.1  christos       <varlistentry>
    101      1.1  christos 	<term>-A client address</term>
    102      1.1  christos 
    103      1.1  christos 	<listitem><para>IP address of the client.  The default is to
    104      1.1  christos 	select an address automatically.</para></listitem>
    105      1.1  christos       </varlistentry>
    106      1.1  christos 
    107      1.1  christos       <varlistentry>
    108      1.1  christos 	<term>-p AS port</term>
    109      1.1  christos 
    110      1.1  christos 	<listitem><para>UDP port of the authentication server. The
    111      1.1  christos 	default is '1812'.</para></listitem>
    112      1.1  christos       </varlistentry>
    113      1.1  christos 
    114      1.1  christos       <varlistentry>
    115      1.1  christos 	<term>-s AS secret</term>
    116      1.1  christos 
    117      1.1  christos 	<listitem><para>Shared secret with the authentication server.
    118      1.1  christos 	The default is 'radius'.</para></listitem>
    119      1.1  christos       </varlistentry>
    120      1.1  christos 
    121      1.1  christos       <varlistentry>
    122      1.1  christos 	<term>-r count</term>
    123      1.1  christos 
    124      1.1  christos 	<listitem><para>Number of reauthentications.</para></listitem>
    125      1.1  christos       </varlistentry>
    126      1.1  christos 
    127      1.1  christos       <varlistentry>
    128      1.1  christos 	<term>-t timeout</term>
    129      1.1  christos 
    130      1.1  christos 	<listitem><para>Timeout in seconds. The default is 30.</para></listitem>
    131      1.1  christos       </varlistentry>
    132      1.1  christos 
    133      1.1  christos       <varlistentry>
    134      1.1  christos 	<term>-C info</term>
    135      1.1  christos 
    136      1.1  christos 	<listitem><para>RADIUS Connect-Info.  The default is
    137      1.1  christos 	'CONNECT 11Mbps 802.11b'.</para></listitem>
    138      1.1  christos       </varlistentry>
    139      1.1  christos 
    140      1.1  christos 
    141      1.1  christos       <varlistentry>
    142      1.1  christos 	<term>-M mac address</term>
    143      1.1  christos 
    144      1.1  christos 	<listitem><para>Client MAC address (Calling-Station-Id).  The
    145      1.1  christos 	default is '02:00:00:00:00:01'.</para></listitem>
    146      1.1  christos       </varlistentry>
    147      1.1  christos 
    148      1.1  christos       <varlistentry>
    149      1.1  christos 	<term>-o file</term>
    150      1.1  christos 
    151      1.1  christos 	<listitem><para>Location to write out server certificate.
    152      1.1  christos 	</para></listitem>
    153      1.1  christos       </varlistentry>
    154      1.1  christos 
    155      1.1  christos       <varlistentry>
    156      1.1  christos 	<term>-N attr spec</term>
    157      1.1  christos 
    158      1.1  christos 	<listitem><para>Send arbitrary attribute specific by
    159      1.1  christos 	attr_id:syntax:value, or attr_id alone.  attr_id should be the numeric
    160      1.1  christos 	ID of the attribute, and syntax should be one of 's' (string),
    161      1.1  christos 	'd' (integer), or 'x' (octet string). The value is the attribute value
    162      1.1  christos 	to send.  When attr_id is given alone, NULL is used as the attribute
    163      1.1  christos 	value.  Multiple attributes can be specified by using the option
    164      1.1  christos 	several times.</para></listitem>
    165      1.1  christos       </varlistentry>
    166      1.1  christos 
    167      1.1  christos       <varlistentry>
    168      1.1  christos 	<term>-n</term>
    169      1.1  christos 
    170      1.1  christos 	<listitem><para>Indicates that no MPPE keys are expected.
    171      1.1  christos 	</para></listitem>
    172      1.1  christos       </varlistentry>
    173      1.1  christos 
    174      1.1  christos       <varlistentry>
    175      1.1  christos 	<term>-W</term>
    176      1.1  christos 
    177      1.1  christos 	<listitem><para>Wait for a control interface monitor before starting.
    178      1.1  christos 	</para></listitem>
    179      1.1  christos       </varlistentry>
    180      1.1  christos 
    181      1.1  christos       <varlistentry>
    182      1.1  christos 	<term>-S</term>
    183      1.1  christos 
    184      1.1  christos 	<listitem><para>Save configuration after authentication.
    185      1.1  christos 	</para></listitem>
    186      1.1  christos       </varlistentry>
    187      1.1  christos 
    188      1.1  christos     </variablelist>
    189      1.1  christos   </refsect1>
    190      1.1  christos   <refsect1>
    191      1.1  christos     <title>See Also</title>
    192      1.1  christos     <para>
    193      1.1  christos       <citerefentry>
    194      1.1  christos 	<refentrytitle>wpa_supplicant</refentrytitle>
    195      1.1  christos 	<manvolnum>8</manvolnum>
    196      1.1  christos       </citerefentry>
    197      1.1  christos     </para>
    198      1.1  christos   </refsect1>
    199      1.1  christos   <refsect1>
    200      1.1  christos     <title>Legal</title>
    201  1.1.1.6  christos     <para>wpa_supplicant is copyright (c) 2003-2022,
    202      1.1  christos     Jouni Malinen <email>j (a] w1.fi</email> and
    203      1.1  christos     contributors.
    204      1.1  christos     All Rights Reserved.</para>
    205      1.1  christos 
    206      1.1  christos     <para>This program is licensed under the BSD license (the one with
    207      1.1  christos     advertisement clause removed).</para>
    208      1.1  christos   </refsect1>
    209      1.1  christos </refentry>
    210