مقدمه

Freeradius از بهترین سرویس های RADIUS دنیا می باشد و در اکثر مناطق به عنوان تنها گزینه استفاده می شود. در این مقاله قصد داریم به نحوه نصب پیکربندی و یک روش ساده برای استفاده مفید از آن بپردازیم.

مرحله اول: نصب Freeradius

ایتدا به آدرس زیر رفته و Freradius را کامپایل و نصب می کنیم.

/usr/ports/net/freeradius2
make install clean
نکته:
از دیتابیس mysql استفاده کنید.

در اینجا ساده‌ترین مرحله را انجام دادیم و بعد از نصب کامل به مرحله بعدی و پیکربندی می رسیم.

مرحله دوم: پیکربندی Freeradius

توجه داشته باشید که این مقاله برای دیتابیس mysql نوشته شده است و در صورت استفاده شما از دیتابیس دیگری باید دستورات را به تناسب تغییر دهید. از آنجایی که ما از mysql به عنوان دیتابیس استفاده می کنیم باید یکسری کارها در mysql انجام دهیم و دیتابیس ها برای استفاده Freeradius بسازیم. برای این منظور به ترتیب دستورات زیر را وارد می کنیم.

ابتدا وارد کنسول mysql می شویم

Mysql -uroot -p

بعد از آن در کنسول mysql به ترتیب دستورات زیر را وارد می کنیم

mysql> CREATE DATABASE radius;
mysql> GRANT ALL  ON radius.* TO radius@localhost IDENTIFIED BY “radius@123”;
mysql> flush privileges;
mysql> exit
نکته:
در خط دوم دستورات بالا ما یک یوزر به اسم radius با پسورد radius@123 درست کردیم. شما می توانید اطلاعات خودتان را جایگزین کنید. (در صورت جایگزینی اطلاعات دستورات بعد را به تناسب تغییر دهید.)

بعد از انجام کارهای فوق ما باید یک schema در دیتابیس radius بریزیم که خود freeradius آن را از قبل آماده دارد و ما برای انتقال آن اطلاعات به دیتابیس خودمان فقط دستور زیر را اجرا می کنیم.

Mysql -uradius -p radius < /usr/local/etc/raddb/sql/mysql/schema.sql

بعد از اجرای دستور بالا به مسیر /usr/local/etc/raddb رفته و به ترتیب فایل‌های زیر را ویرایش می کنیم.

فایل sql.conf را به صورت زیر جهت تنظیم نحوه اتصال به دیتابیس ویرایش می کنیم.

# Connection info:
server = “localhost”
port = 3306
login = “radius”
password = “radius@123”
radius_db = “radius”

فایل radiusd.conf را جهت اینکه به Freeradius بفهمانیم از sql استفاده کنید ویرایش می کنیم و خط شماره ۷۰۰ این فایل را از حالت توضیحات خارج می کنیم.

$INCLUDE sql.conf

سپس به مسیر /usr/local/etc/raddb/sites-available رفته و فایل‌های زیر را ویرایش می کنیم.

فایل default را ویرایش کرده و در خط‌های شماره ۱۷۷ و ۴۰۶ و ۴۵۴ که حاوی کلمه sql می باشد از حالت توضیحات در می آوریم

سپس فایل inner-tunnel را ویرایش کرده و خطوط شماره ۱۳۳ و ۲۵۵ را که حاوی کلمه sql می باشد از حالت توضیحات در می آوریم

بعد از انجام تنظیمات بالا به مسیر /usr/local/etc/raddb رفته و فایل clients.conf را جهت اضافه کردن کلاینت ها رفته و مانند نمونه کلاینت های خود را اضافه می کنیم.

Client 192٫۱۶۸٫۱٫۱ {
secret = 123456789
nastype = other
}
نکته:
شما می توانید در این نمونه nastype را بکار نبرید.

حال تنظیمات مربوط به Freeradius را انجام دادیم و در اینجا برای آنکه تنظیمات اعمال شوند آن را restart می کنیم.

/usr/local/etc/rc.d/radiusd restart

بعد از ریستارت کردن سرویس به مرحله بعدی جهت نصب یک frontend برای سادگی کار می‌رویم

مرحله سوم: نصب frontend

از آنجایی که امروزه اکثر کارها خیلی ساده شده و اکثر مدیرهای سیستم‌ هم به دنبال یک راهکار ساده جهت مدیریت radius سرور خود هستند ما نیز به این عمل می پردازیم و یکی از frontend های معروف به اسم daloradius را برای این منظور نصب می کنیم.

نکته:
برای نصب daloradius احتیاج دارید که یک وب سرور مانند apache داشته باشید.
نکته:
برای اجرای صحیح daloradius احتیاج به نصب بسته php-db می باشد برای این منظور دستور زیر را اجرا کنید.
/usr/ports/devel/pear
make install clean

حال می‌رویم برای نصب daloradius. ابتدا باید آن را دانلود کنیم. برای این کار دستور زیر را وارد می کنیم.

بعد از اتمام دانلود فایل ابتدا آن را از حالت فشرده خارج می کنیم.

tar zxvf daloradius-0.9-9.tar.gz

و سپس دیتابیس خود را جهت استفاده daloradius آماده کرده برای این منظور دستور زیر را وارد می کنیم.

mysql -uradius -p radius < daloradius-0.9-9/contrib/db/fr2-mysql-daloradius-and-freeradius.sql

سپس فایل daloradius.conf.php را جهت تنظیمات اتصال بین daloradius و Freeradius به صورت زیر ویرایش می کنیم.

$configValues['DALORADIUS_VERSION'] = '0.9-9';
$configValues['FREERADIUS_VERSION'] = '2';
$configValues['CONFIG_DB_ENGINE'] = 'mysql';
$configValues['CONFIG_DB_HOST'] = 'localhost';
$configValues['CONFIG_DB_USER'] = 'radius';
$configValues['CONFIG_DB_PASS'] = 'radius@123';
$configValues['CONFIG_DB_NAME'] = 'radius';

کار تنظیمات daloradius هم تمام شد.

حال باید دایرکتوری daloradius را به document root وب سرور خود انتقال دهیم. پس از انتقال می توانیم به صورت زیر به آن دسترسی داشته باشیم.

در آخر جهت ورود به daloradius از اطلاعات زیر استفاده کنید.

Username: administrator
password: radius