* Change log_badlogins to use the mysql binary instead of the DBI module. That way...
[freeradius.git] / dialup_admin / README
1 dialup_admin is a web based administration interface for the freeradius radius server.
2 It is modular and right now it assumes that user information is stored in an ldap server
3 or an sql database and accounting in an sql server.
4
5 There are also a few more things included:
6
7 * sql/badusers.sql: It will create a table named badusers which can be used to hold the
8   history for badusers (date,action)
9 * sql/userinfo.sql: It will create a table named userinfo which contains personal information
10   for users stored in the sql database. This can be used if a sql database is used to store user profiles
11   (not ldap).
12 * bin/log_badlogins: It will constantly check the radiusd.log file and add all login-incorrect,
13   invalid-user, outside of allowed login time  and multiple-login cases to the radacct table with
14   acctstarttime=acctstoptime, acctsessiontime=0 and acctterminatecause containing the reason.
15   If the failing module sent back a module message then it will also appear in the terminate cause.
16   You will need to setup the $mysql and $tmpfile variables to suite your mysql installation and needs.
17   Perl module Date::Manip is needed by the script.
18 * bin/clean_radacct: It will delete all entries in the radacct table with a starttime > 1 day and
19   stoptime = 0. It will not do an harm even if it deletes valid entries since radiusd will fall
20   back to insert if update fails.
21
22 The structure of the tree is:
23
24 conf:: Contains various configuration files.
25 conf::admin.conf=>
26         The main configuration file. The directives used should be easily
27         understood
28 conf::config.php3=>
29         Just a helper php4 for reading the admin.conf file. Just make sure that it
30         opens the correct admin.conf file
31 conf::default.vals=>
32         Contains the default values for check and reply items. If you also use the users
33         file except for the ldap/sql databases fill in the default values you have inserted
34         for the users.Else comment them out.
35 conf::sql.attrs=>
36         Contains inmformation about the sql attributes. This is used by the accounting
37         report generator (accounting.php3).
38 conf::user_edit.attrs=>
39         Contains the attributes that user_edit.php3 will show. Just uncomment those
40         which you want to be displayed.
41 conf::extra.ldap-attrmap=>
42         Contains a few items not included in ldap.attrmap which are used only by dialup_admin
43         Things like User-Password and Dialup-Lock-Msg. Use none for attributes that are not known
44         by the radius or ldap server.
45 conf::sql.attrmap=>
46         Contains the Attribute map for the sql database. Use none for attributes that are not known by
47         the radius server.
48 conf::auth.request=>
49         Contains value pairs sent in the test packets which are sent from the test user/server pages.
50
51 htdocs:: Contains the basic php files
52 htdocs::index.html=>
53         The main index file. Just contains the frames tags
54 htdocs::content.html=>
55         Change this file to include the greeting of your choise
56 htdocs::buttons.html=>
57         The buttons html page
58 htdocs::style.css=>
59         CSS style file. Change it to match your preferences
60 htdocs:: user_state.php3 =>
61         It can be used by outside pages to get a quick
62         overview of the status of a user. It will return the following fields
63         separated by new lines:
64         account_status(active or inactive),lock message,weekly limit,daily limit,
65         weekly used,weekly connections,daily used,daily connections
66
67 html:: Contains the html code for a few pages 
68 html::user_admin.html.php3 =>
69         html code for the user_admin page
70 html::stats.html.php3 =>
71         html code for the stats page
72 html::user_toolbar.html.php3 =>
73         the user toolbar (show,edit,accounting...) which appears in almost all pages
74
75 lib::   Contains the library items
76 lib::ldap=>
77         The ldap files
78 lib::lang=>
79         Allow for multiple languages to be supported
80 lib::crypt=>
81         Allow for multiple encryption schemes (for user passwords)
82 lib::sql=>
83         Contains the sql library files. There is also a directory drivers
84         which contains functions for various sql databases (mysql and
85         postgresql for the time being).
86
87 The rest: The rest are the php4 files. Normally, you should not need to change anything in them.