نصب FreeRADIUS بر روی CentOS و Ubuntu

FreeRADIUS یک ماژول با کارایی بالا است که تحت مجوز عمومی GNU در نسخه دوم خود توسعه و توزیع شده است. این یک ابزار رایگان و متن باز است. مجموعه ی FreeRADIUS شامل : RADIUS Server , RADIUS Client library , PAM library و APACHE Module و امکانات اضافی دیگر است.
ویژگی های FreeRADIUS :
FreeRADIUS محبوب ترین سرور RADIUS متن باز وگسترده ترین سرور RADIUS مستقر در جهان است. این نرم افزار تمامی پروتکل های احراز هویت را پشتیبانی می کند و سرور آن با یک ابزار مدیریت کاربر مبتنی بر وب PHP به نام dialupadmin مدیریت می شود.
ماژول های همراه با سرور آن LDAP ، PostgreSQL ، Oracle ، MySQL و بسیاری از پایگاه داده های دیگر را پشتیبانی می نمایند. این نرم افزار تمامی انواع احراز هویت عمومی EAP ، از جمله PEAP و EAP-TTLS را شامل می شود.
FreeRADIUS همچنین تنها سرور RADIUS متن باز برای پشتیبانی از سرور های مجازی می باشد. استفاده از سرور های مجازی بدان معنی است که پیاده سازی پیچیده را ساده می کند و پشتیبانی و نگهداری پر هزینه را برای مدیران شبکه تا حد زیادی کاهش می دهد.
این آموزش به شما نشان می دهد که چگونه آن را بر روی CentOS و Ubuntu نصب و راه اندازی کنید.
نصب FreeRADIUS :
گام اول
برای ۵ CentOS :
1 |
yum install freeradius2 freeradius2-mysql freeradius2-utils mysql-server –y |
برای CentOS 6 :
1 |
yum install freeradius freeradius-mysql freeradius-utils mysql-server -y |
برای Ubuntu :
1 |
apt-get install freeradius freeradius-mysql freeradius-utils mysql-server |
گام دوم
سپس MYSQL را با دستورات زیر راه اندازی میکنیم :
برای CentOS :
1 |
service mysqld start |
برای Ubuntu :
1 |
service mysql start |
برای تنظیم یک پسورد جدید و تنظیمات امنیتی از دستور زیر استفاده می کنیم :
1 |
/usr/bin/mysql_secure_installation |
برای ساخت پایگاه داده RADIUS :
1 |
mysql |
یا
1 |
mysql -uroot -p |
بعد از اینکه از شما root password خواسته می شود ، آن را وارد کنید و برای ساخت پایگاه داده از دستورات زبر پیروی کنید :
1 |
CREATE DATABASE radius; |
1 |
GRANT ALL PRIVILEGES ON radius.* TO radius@localhost IDENTIFIED BY "radpass"; |
1 |
flush privileges; |
گام سوم
برای استفاده از جداول پایگاه داده از دستور زیر استفاده می کنیم :
1 |
mysql> use radius; |
برای CentOS :
1 |
SOURCE /etc/raddb/sql/mysql/schema.sql |
برای Ubuntu :
1 |
SOURCE /etc/freeradius/sql/mysql/schema.sql |
و فراموش نکنید از این قسمت خارج شوید :
1 |
exit |
گام چهارم
اکنون برای استفاده از تنظیمات به مسیر زیر بروید :
برای CentOS :
1 |
/etc/raddb/sql.conf |
برای Ubuntu :
1 |
/etc/freeradius/sql.conf |
اکنون شما باید وارد پایگاه داده ساخته شده خود شوید و جزییات آن را مشاهده کنید ، برای نمونه :
1 2 3 4 5 6 7 |
# Connection info: server = "localhost" #port = 3306 login = "radius" password = "mypassword" # Database table configuration for everything except Oracle radius_db = "radius" |
به مسیر etc/raddb/clients.conf/ رفته و پسورد خود را تغییر دهید :
1 |
secret = behrouzvar1920 |
گام پنچم
سپس RADIUS را یک بار ریست کنید و دوباره عملکرد آن را چک کنید.
برای CentOS :
1 |
service radiusd restart |
1 |
service radiusd stop |
برای Ubuntu :
1 |
service freeradius restart |
1 |
service freeradius stop |
گام ششم
برای اضافه کردن کاربران ( VPN سرورهای خارجی) از دستورات زیر پیروی کنید :
برای CentOS :
1 |
/etc/raddb/clients.conf |
برای Ubuntu :
1 |
/etc/freeradius/clients.conf |
در ادامه آن :
1 2 |
# coa_server = coa } |
برای اضافه کردن :
1 2 3 4 5 |
client VPN_SERVER_IP { secret = YOUR SECRET shortname = yourVPN nastype = other } |
برای دسترسی به احراز هویت سرورهای خارجی بر روی سرور FreeRADIUS باید در ادامه کارهای زیر را دنبال کنید. برای اضافه کردن کاربر و تغییر تنظیمات اینگونه عمل کنید.
برای CentOS :
1 |
service radiusd restart |
برای Ubuntu :
1 |
service freeradius restart |
سپس با دستور زیر به پایگاه داده وارد شوید :
1 |
mysql -uroot –pyourrootpass |
و سپس با تغییر پایگاه داده با دستور زیر از RADIUS استفاده کنید:
1 |
use radius; |
سپس ،
1 |
mysql> INSERT INTO `radcheck` (`id`, `username`, `attribute`, `op`, `value`) VALUE |
بعد از آن می توانید کاربر را تست کنید :
1 |
radtest test test 127.0.0.1 0 mysecret |
با دیدن “rad_recv: Access-Accept” می توانید مطمئن شوید نصب به درستی صورت گرفته است.
در پایان با باز کردن فایل etc/raddb/sql.conf/ برای CentOS و etc/freeradius/sql.conf/ برای Ubuntu و وارد کردن دستورات زیر کار تکمیل می شود:
1 |
#readclients = yes |
به
1 |
readclients = yes |