1. 程式人生 > >linux搭建freeradius服務器

linux搭建freeradius服務器

freeradius dolaradius

相關網站

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服務器