Introduction
Components involved
Installation
Replication of production setup
packages: shorewall
New stuff
FreeRADIUS
packages: freeradius
Certificates
MySQL
Python module / script_launcher.py script
Shorewall
sudo
packages: sudo
shwl_add / shwl_del scripts
packages: arp-scan
apt-get install arp-scan # Install the scripts in /usr/local/sbin/, and configure settings in each of them chown root:freerad /usr/local/sbin/shwl_* chmod 750 /usr/local/sbin/shwl_*
Add the following line to freerad's crontab
*/1 * * * * /usr/local/sbin/shwl_del.sh # @#$dy # @@@ figure out optimal interval
MySQL
pam_to_mysql_update.sh script
Pre-requisites from above steps: sudo, shwl_add / shwl_del scripts MySQL config, FreeRADIUS MySQL config
apt-get install libpam-script sshpass mkdir /usr/share/libpam-script/pam-script.d/pam_to_mysql_update cd /usr/share/libpam-script/pam-script.d/pam_to_mysql_update # Put the script in here, and configure MySQL settings inside ln -s pam_to_mysql_update.sh pam_script_auth ln -s pam_to_mysql_update.sh pam_script_passwd
Add the following line at the end of /etc/pam.d/common-auth or as may be appropriate to the PAM configuration of the system:
/etc/pam.d/common-auth
... auth required pam_script.so onerr=fail dir=/usr/share/libpam-script/pam-script.d/pam_to_mysql_update/
Add the following line at the end of /etc/pam.d/common-password or as may be appropriate to the PAM configuration of the system:
/etc/pam.d/common-password
... password required pam_script.so onerr=fail dir=/usr/share/libpam-script/pam-script.d/pam_to_mysql_update/