New build path variable
[freeradius.git] / README
1 1. INTRODUCTION
2
3   The FreeRADIUS Server Project is a high performance and highly
4 configurable RADIUS server that is available under the terms of the
5 GNU GPLv2.  Using RADIUS allows authentication and authorization for a
6 network to be centralized, and minimizes the number of changes that
7 have to be done when adding or deleting new users to a network.
8
9   FreeRADIUS can authenticate users on systems such as 802.1x (WiFi),
10 dialup, PPPoE, VPN's, VoIP, and many others.  It supports back-end
11 databases such as MySQL, PostgreSQL, Oracle, Microsoft Active
12 Directory, OpenLDAP, and many more.  It is used daily to authenticate
13 the Internet access for hundreds of millions of people, in sites
14 ranging from 10 users, to 10 million and more users.
15
16   Version 2.0 of the server is intended to be backwards compatible
17 with previous versions, but also to have many new features, such as:
18
19   * simple policy language (see "man unlang")
20   * virtual servers (raddb/sites-available/README)
21   * IPv6 support
22   * better proxy support (raddb/proxy.conf)
23   * More EAP types
24   * Debugging output should be MUCH easier to understand
25   * VMPS support
26   * More modules are marked "stable" (python, etc.)
27   * SQL configuration has been cleaned up (see raddb/sql/*)
28   * limited support for HUP
29   * check configuration and exit (radiusd -C)
30   * Server core is now event based (simpler, more powerful)
31
32   Administrators upgrading from a previous version should install this
33 version in a different location from their existing systems.  Any
34 existing configuration should be carefully migrated to the new
35 version, in order to take advantage of the new features which can
36 greatly simply configuration.
37
38   While every attempt has been made to ensure that this version is
39 backwards compatible with previous versions, there may be cases where
40 it is not backwards compatible.  In most cases, incompatibilities are
41 a side-effect of fixing bugs, or of adding new features.  Some
42 configuration differences are noted below:
43
44   * The recommended format for clients has changed.  See "clients.conf".
45     The old format should still work, but should be changed to use the
46     new format.
47
48   * The recommended formant for realms has changed.  See "proxy.conf"
49     The old format should still work, but should be changed to use the
50     new format.  In addition, the new format has much more flexibility.
51
52   * Any configuration using TTLS or PEAP should be updated to use
53     virtual servers. See "virtual_server" in "eap.conf", and
54     "raddb/sites-available/inner-tunnel".  In most cases, using an
55     "inner-tunnel" virtual server will make the configuration MUCH
56     simpler.
57
58   * A number of deprecated command-line options have been removed.
59     (-y -z -A -l -g) See "man radiusd".  These configurations can be
60     controlled in "radiusd.conf", so it is not necessary to have them
61     as command-line options.
62
63   Please see http://freeradius.org and http://wiki.freeradius.org for
64 more information.
65
66
67 2. INSTALLATION
68
69   To install the server, please see the INSTALL file in this
70 directory.
71
72
73 3. DEBUGGING THE SERVER
74
75   Run the server in debugging mode, (radiusd -X) and READ the output.
76 We cannot emphasize this point strongly enough.  The vast majority of
77 problems can be solved by carefully reading the debugging output,
78 which includes WARNINGs about common issues, and suggestions for how
79 they may be fixed.
80
81   Read the FAQ.  Many questions are answered there.  See the Wiki
82
83         http://wiki.freeradius.org
84
85   Read the configuration files.  Many parts of the server have NO
86 documentation, other than comments in the configuration file.
87
88   Search the mailing lists.  There is a Google link on the bottom of
89   the page:
90
91         http://www.freeradius.org/list/users.html
92
93   Type some key words into the search box, and you should find
94 discussions about common problems and solution.
95
96
97 4. ADDITIONAL INFORMATION
98
99   See 'doc/README' for more information about FreeRADIUS.
100
101   There is an O'Reilly book available.  It serves as a good
102 introduction for anyone new to RADIUS.  However, it is almost 5 years
103 old, and is not much more than a basic introduction to the subject.
104
105 http://www.amazon.com/exec/obidos/ASIN/0596003226/freeradiusorg-20/
106
107   For other RADIUS information, the Livington internet site had a lot
108 of information about radius online.  Unfortunately Livingston, and the
109 site, don't exist anymore but there is a copy of the site still at:
110
111         http://portmasters.com/www.livingston.com/
112
113   Especially worth reading is the "RADIUS for Unix administrators guide"
114
115 HTML:  http://portmasters.com/tech/docs/radius/1185title.html
116 PDF:   http://portmasters.com/tech/docs/pdf/radius.pdf
117
118
119 5. PROBLEMS AND CONCERNS
120
121   We understand that the server may be difficult to configure,
122 install, or administer.  It is, after all, a complex system with many
123 different configuration possibilities.
124
125   The most common problem is that people change large amounts of the
126 configuration without understanding what they're doing, and without
127 testing their changes.  The preferred method of operation is the
128 following:
129
130    1) Start off with the default configuration files.
131    2) Save a copy of the default configuration: It WORKS.  Don't change it!
132    3) Verify that the server starts.  (You ARE using debugging mode, right?)
133    4) Send it test packets using "radclient", or a NAS or AP.
134    5) Verify that the server does what you expect.
135      a) If it does not work, change the configuration, and go to step (3)
136         If you're stuck, revert to using the "last working" configuration.
137      b) If it works, proceed to step (6).
138    6) Save a copy of the working configuration, along with a note
139       of what you changed, and why.
140    7) Make a SMALL change to the configuration.
141    8) Repeat from step (3).
142
143   This method will ensure that you have a working configuration that
144 is customized to your site as quickly as possible.  While it may seem
145 frustrating to proceed via a series of small steps, the alternative
146 will always take more time.  The "fast and loose" way will be MORE
147 frustrating than quickly making forward progress!
148
149
150 6. FEEDBACK
151
152   If you have any comments, bug reports, problems, or concerns, please
153 send them to the 'freeradius-users' list (see the URL above).  We will
154 do our best to answer your questions, to fix the problems, and to
155 generally improve the server in any way we can.
156
157   Please do NOT complain that the developers aren't answering your
158 questions quickly enough, or aren't fixing the problems quickly
159 enough.  Please do NOT complain if you're told to go read
160 documentation.  We recognize that the documentation isn't perfect, but
161 it *does* exist, and reading it can solve most common questions.
162
163   FreeRADIUS is the cumulative effort of many years of work by many
164 people, and you've gotten it for free.  No one gets paid to work on
165 FreeRADIUS, and no one is getting paid to answer your questions.  This
166 is free software, and the only way it gets better is if you make a
167 contribution back to the project ($$, code, or documentation).
168
169   We will note that the people who get most upset about any answers to
170 their questions usually do not have any intention of contributing to
171 the project.  We will repeat the comments above: no one is getting
172 paid to answer your questions or to fix your bugs.  If you don't like
173 the responses you are getting, then fix the bug yourself, or pay
174 someone to address your concerns.  Either way, make sure that any fix
175 is contributed back to the project so that no one else runs into the
176 same issue.
177
178   Support is available.  See the "support" link at the top of the main
179 web page:
180
181         http://freeradius.org
182
183   Please submit bug reports, suggestions, or patches.  That feedback
184 gives the developers a guide as to where they should focus their work.
185 If you like the server, feel free to mail the list and say so.