Radius + MySQL Authentification and Accounting

Download Report

Transcript Radius + MySQL Authentification and Accounting

Radius + MySQL
Authentication and Accounting
AFNOG 2000
Cape Town, South Africa
1
Goal
• Use of Database
– Authentication
• Fast research
• Easy request on users
– Accounting
• statistics
• billing
2
MySQL
• A SQL Database
– (SQL) Structured Query Language
– multi-user, multi-thearded SQL database server
– Free on Unix need a license after a trial of 30
days for Microsoft
– www.mysql.com
– Current version 3.22.32
3
MySQL Installation
•
•
•
•
•
•
Read INSTALL-SOURCE
Need cc compiler and lost of memory
Might have to use
./configure --with-low-memory
make
make install
4
MySQL Installation (2)
• To start MySQL
• Create the 1st databases
– scripts/mysql_install_db
• To run mysql
– bin/safe_mysqld &
5
Perl Modules
• Get them from www.cpan.org
• http://www.cpan.org/modules/01modules.index.html
• Order of compilation, installation is important
– Data-Dumper
– DBI
– Data-ShowTable
– Msql-Mysql modules
• Installation : perl Makefile.PL, make, make test, make
install
• Might need some extra modules also
6
ICRadius
• Cistron based radius server with MySQL support and web
interface
• Cistron Radius or FreeRadius
• www.freeradius.org
• www.miquels.cistron.nl/radius
• radius.innercite.com
• Current version icradius-0.14
7
Installation on FreeBSD
• Library libmysqlclient.so.6
– In /etc/defaults/rc.conf,
– add path to libmysqlclient.so.6, ldconfig_paths variable,
/usr/local/lib/mysql
• copy Makefile.BSD to Makefile
– add -I/usr/local/include
– add in radiusd.h
• #include <time.h>
• #include <sys/time.h>
– then make, make install
8
ICRadius (2)
• Copy files to /etc/raddb, radius.conf
• Create database with
– create database radius
• then tables with
– mysql radius < radius.db
– a user
•
•
•
INSERT INTO radcheck
VALUES ("","username","Password","yourpassword");
INSERT INTO radcheck VALUES ("","username","Radius-Operator","Yes");
9
Web access
• Copy the file script file radius.cgi and
usage.cgi to your cgi-bin directory
• Configure usage.cgi and radius.cgi to your
own environment (user and password to
access database, directories)
10
Demonstrations
• ICRadius, web
• Billing
11