linux搭建freeradius服務器
相關網站
Freeradius下載鏈接 https://github.com/FreeRADIUS/freeradius-server/tree/v3.0.x
系統版本: CentOS Linux release 7.3.1611 (Core)
freeradius:https://github.com/FreeRADIUS/freeradius-server/archive/v3.0.x.zip
我的系統上面什麽都沒有安裝,這裏要下載一些需要的包,這裏說明下,我使用yum安裝php RPM包的時候會自動安裝apache服務,所以這裏我就不安裝apache了,如果你們的php RPM包中沒有Apache就用yum install -y httpd安裝下。
yum install -y php php-gd wget gcc gcc-c++ unzip php-mysql libtalloc-devel freeradius-mysql
daloRADIUS管理界面需要用到php-pear-DB,但是centos默認的yum源中沒有這個包,所以這裏使用go-pear來進行安裝。
wget http://pear.php.net/go-pear.phar
php go-pear.phar
這裏我們選擇路徑安裝,直接回車安裝在默認路徑就可以了
vi /etc/profile 在最後一行添加下面的配置(在vi視圖中使用大寫的GG可以直接到最後一行)
export PATH=/usr/bin/pear:$PATH
pear的系統環境就添加好了,保存退出
source /etc/profile
重新加載系統環境
pear install db
這樣php-pear-DB包就安裝好了
這裏詢問要修改/etc/php.ini文件,這裏我們選擇y,讓其修改php配置文件
在防火墻上面放行我們需要用到的端口,freeradius需要用到1812和1813端口,1812端口用來認證,1813端口用來計費
還需要放行80端口或443端口
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --permanent --zone=public --add-port=1812/tcp
firewall-cmd --permanent --zone=public --add-port=1813/tcp
firewall-cmd --reload
firewall-cmd --state
可以用來查看防火墻是否是啟用的
下面安裝mysql數據庫
wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
yum install mysql-community-server mysql-devel
service mysqld start
啟動mysql數據庫
/usr/bin/mysqladmin -u root password "123456"
用來設置mysql初始密碼
到此LAMP平臺和freeradius和dalofreeradius管理平臺所需要的包都安裝完成了,接下來就開始安裝freeradius和dalofreeradius。
wget https://github.com/FreeRADIUS/freeradius-server/archive/v3.0.x.zip
unzip v3.0.x.zip
cd freeradius-server-3.0.x/
./configure --with-openssl=no && make && make install
cd /usr/local/etc/raddb/
vi /usr/local/etc/raddb/users
將箭頭處的#去掉。然後保存退出。
運行 radiusd -X 調試freeradius ,在開一個窗口
radtest steve testing localhost 1812 testing123
運行上面的命令,如果看到上圖的中的提示,說明freeradius搭建成功了。
這樣用文件來管理設備,會十分的復雜和難以管理,所以這裏我們使用一個web圖形化管理和用mysql數據庫來存儲數據
由於dalofreeradius圖形化管理有點問題,所以這裏要修改下freeradius的數據庫
vi /usr/local/etc/raddb/mods-config/sql/ippool/mysql/schema.sql
為所有字段加上默認值。
cd /usr/local/etc/raddb/mods-config/sql/main/mysql
mysql -uroot -p
mysql> cerate database radius;
mysql> use radius;
mysql> source /usr/local/etc/raddb/mods-config/sql/main/mysql/schema.sql;
freeradius 數據庫就添加完了,接下來要設置freeradius關聯mysql數據庫
vi /usr/local/etc/raddb/sites-enabled/default
編輯default文件,利用vi文字搜索將所有files和radutmp在前面加#號註釋掉,在搜索sql文本,將sql文本全部取消註釋,取消#號就可以了。
將rlm_sql_null修改為rlm_sql_mysql
將數據庫設置註釋(#)取消掉,然後在添加數據庫信息
將註釋(#)取消,如果註釋該配置,表示從clients文件中讀取nas數據,取消該註釋,表示從mysql數據庫中讀取nas數據
ln -s /usr/local/etc/raddb/mods-available/sql /usr/local/etc/raddb/mods-enabled/sql
由於freeradius需要讀取mods-enabled目錄下的sql文件,而mods-enabled沒有這個sql文件,所以這裏從mods-available中把sql做一個鏈接,也可以在復制sql文件到mods-enabled,但是如果需要修改sql文件,就需要修改兩個目錄中的sql文件,所以這裏我用了一個鏈接,只需要修改一個sql文件即可
cp /usr/local/sbin/rc.radiusd /etc/init.d/radiusd
將freeradius啟動文件復制到/etc/init.d/目錄中
到此freeradius就安裝完成了,下面來安裝daloradius 管理界面
cd /var/www/html
wget https://nchc.dl.sourceforge.net/project/daloradius/daloradius/daloradius0.9-9/daloradius-0.9-9.tar.gz
tar zxvf daloradius-0.9-9.tar.gz
mv daloradius-0.9-9 dalor
vi /var/www/html/daloradius/library/daloradius.conf.php
添加數據庫信息
第一處標記出來的是proxy.conf文件目錄,該文件在freeradius服務的根目錄中
第二處標記出來的是dolaradius安裝目錄,我將dolaradius放在了/var/www/html目錄中
看到dolaradius有報錯,但是用戶還是添加成功了,這是因為dolaradius非常的老了,已經好久沒更新,mysql數據庫有某些地方改動增加安全性,所以這裏要對mysql數據庫進行一些修改
vi /etc/my.cnf
將STRICT_TRANS_TABLES配置刪除即可。
重啟mysql數據庫
service mysqld restart
現在在新建用戶就不會出現錯誤了
到此dolaradius也安裝完成了
本文出自 “技術交流” 博客,轉載請與作者聯系!
linux搭建freeradius服務器