首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

實戰筆記:在 RedHat 7.2 上架設 FreeRADIUS + MySQL 認證伺服器

     編輯:MySQL 資料庫相關知識

環境與版本

  • 作業系統:RedHat Linux 7.2
  • MySQL:光盤附屬 RPM(3.23.41)
  • OpenSSL:光盤 RPM(0.9.5a/0.9.6)
  • FreeRADIUS:0.8.1(官網下載原始碼編譯)

第一階段:安裝與設定 MySQL

# rpm -ivh MySQL-3.23.41-1.i386.rpm
# rpm -ivh MySQL-devel-3.23.41-1.i386.rpm
# rpm -ivh MySQL-server-3.23.41-1.i386.rpm
# rpm -ivh MySQL-client-3.23.41-1.i386.rpm

# service mysqld start
# mysql -u root -p
mysql> CREATE DATABASE radius;
mysql> USE mysql;
mysql> UPDATE user SET password=PASSWORD('your_root_pwd') WHERE user='root';
mysql> UPDATE user SET host='%' WHERE user='root';  -- 允許遠端連線
mysql> FLUSH PRIVILEGES;
mysql> QUIT
# service mysqld restart

第二階段:安裝 OpenSSL

# rpm -ivh openssl-0.9.5a-11.i386.rpm
# rpm -ivh openssl-0.9.6-6.i386.rpm

第三階段:編譯安裝 FreeRADIUS

# tar xvfz freeradius-0.8.1.tar.gz
# cd freeradius-0.8.1
# ./configure
# make && make install

第四階段:建立 RADIUS 資料庫結構

# cd src/modules/rlm_sql/drivers/rlm_sql_mysql
# mysql -u root -p radius < db_mysql.sql

第五階段:修改 FreeRADIUS 設定檔

1. radiusd.conf - 啟用 SQL 模組

authorize {
    preprocess
    chap
    mschap
    suffix
    sql
}
accounting {
    ...
    sql
    ...
}

2. sql.conf - 資料庫連線參數

server = "localhost"
login = "root"
password = "mysql_root_password"
radius_db = "radius"

3. clients.conf - 設定 NAS 客戶端共享密鑰

依實際 NAS 設備填寫 IP、secret 等資訊。

第六階段:匯入測試帳號與群組

# mysql -u root -p radius
mysql> INSERT INTO radgroupreply (groupname, attribute, op, value) VALUES
('user', 'Auth-Type', ':=', 'Local'),
('user', 'Service-Type', ':=', 'Framed-User'),
('user', 'Framed-IP-Address', ':=', '255.255.255.254'),
('user', 'Framed-IP-Netmask', ':=', '255.255.255.0');

mysql> INSERT INTO radcheck (username, attribute, op, value) VALUES
('testuser', 'User-Password', ':=', 'testpass');
mysql> INSERT INTO radusergroup (username, groupname) VALUES ('testuser', 'user');

驗證測試

# radtest testuser testpass localhost 0 testing123

若回傳 Access-Accept 即代表架設成功。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved