- SSID = redes
- IP = 192.168.1.1/24
- SECURITY MODE = WPA2 Enterprise
- RADIUS SERVER = 192.168.1.254
- RADIUS PORT = 1812
- SHARED SECRET = 12345678
-
Install freeradius package
$ apt-get install freeradius
-
Add end of file /etc/network/interface
allow-hotplug eth0 iface eth0 inet static address 192.168.1.254 netmask 255.255.255.0 gateway 192.168.1.1
-
Make a files copy.
$ cp /etc/freeradius/clients.conf /etc/freeradius/clients.conf.bak $ cp /etc/freeradius/users /etc/freeradius/users.bak
-
Add end of flie /etc/freeradius/clients.conf
client 192.168.1.1 { secret = 12345678 shortname = redes }
-
Add end of file /etc/freeradius/users
mcortes Cleartext-Password := "123" apadilla Cleartext-Password := "123" rcordero Cleartext-Password := "123" vmora Cleartext-Password := "123"
Check the double password quotes
-
Restart freeradius service
$ /etc/init.d/freeradius restart
-
Test already created users
radtest mcortes 123 localhost 1812 testing123
-
Install mysql server package.
$ apt-get install mysql-server
-
Install freeradius packages.
$ apt-get install freeradius freeradius-mysql
Root mysql password = root
-
Create radius database.
$ mysql -uroot -proot mysql> create database radius; mysql> exit
-
Import schema.sql script to database recently created.
$ mysql -uroot -proot radius < /etc/freeradius/sql/mysql/schema.sql
-
Create db users.
$ mysql -uroot -proot mysql> use radius; mysql> INSERT INTO radcheck (username, attribute, value) VALUES ('user01', 'password', 'password01'); mysql> INSERT INTO radcheck (username, attribute, value) VALUES ('user02’, 'password', 'password02’); mysql> exit;
-
Import nas.sql script to database recently created.
$ mysql -uroot -proot radius < /etc/freeradius/sql/mysql/nas.sql
-
Create db clients (AP/ROUTER)
$ mysql -uroot -proot mysql> use radius; mysql> INSERT INTO nas (nasname, shortname, type, ports, secret) VALUES ('192.168.1.1', 'redes', 'cisco', 1812,'12345678'); mysql> exit;
-
Stop freeradius service
$ /etc/init.d/freeradius stop
-
Make a files copy.
$ cp /etc/freeradius/sql.conf /etc/freeradius/sql.conf.bak $ cp /etc/freeradius/sites-available/default /etc/freeradius/sites-available/default.bak $ cp /etc/freeradius/sites-available/inner-tunnel /etc/freeradius/sites-available/inner-tunnel.bak $ cp radiusd.conf radiusd.conf.bak
-
Edit file /etc/freeradius/sql.conf
# Connection info: server = "localhost" #port = 3306 login = "root" password = "root" readclients = yes
-
Uncomment all sql apparition in file /etc/freeradius/sites-available/default
-
Uncomment all sql apparition in file /etc/freeradius/sites-available/inner-tunnel
-
Comment $INCLUDE clients.conf line in file /etc/freeradius/radiusd.conf
-
Uncomment $INCLUDE sql.conf line in file /etc/freeradius/radiusd.conf
-
Restart freeradius service
$ /etc/init.d/freeradius start
-
Reboot Virtual Machine.
$ reboot
-
Install OpenLDAP server package.
$ apt-get install slapd ldap-utils ldapscripts
-
Install freeradius packages.
$ apt-get install freeradius freeradius-ldap
-
Reconfigure slapd package
dpkg-reconfigure -plow
-
Omit OpenLDAP server configuration?
No
-
DNS domain name?
redes.com
-
Organization name?
TEC
-
Administrator password?
root
-
Database backend?
HDB
-
Remove the database when slapd is purged?
No
-
Move old database?
Yes
-
Allow LDAPv2 protocol?
No
-
-
Install phpLDAPadmin to Manage LDAP with a Web Interface
$ apt-get install phpldapadmin
-
Configure phpLDAPadmin
nano /etc/phpldapadmin/config.php
-
Edit and set the next values
$servers->setValue('server','host','127.0.0.1'); $servers->setValue('server','base',array('dc=redes,dc=com')); $servers->setValue('login','bind_id','cn=admin,dc=redes,dc=com'); $config->custom->appearance['hide_template_warning'] = true;
-
Login phpldapadmin interface with password: root
-
Create LDAP entities
- Create a child entry under dc=redes, dc=com called Generic: Posix group, its name should be users. This will create a new group entity called cn=users
- Create a child entry under cn=users called Generic: User Account, its password encrypt method must be clear. Fill the other fields with whatever you want.
-
Edit file /etc/freeradius/modules/ldap
server = "localhost" identity = "cn=admin,dc=redes,dc=com" password = root basedn = "dc=redes,dc=com"
-
Edit file /etc/freeradius/sites-available/default
# Uncomment ldap lines autorize { ldap }
-
Edit file /etc/freeradius/sites-available/inner-tunnel
# Uncomment ldap lines autorize { ldap } authenticate { Auth-Type LDAP { ldap } }
-
Reboot Virtual Machine.
$ reboot