NỘI DUNG

Banner blog lễ 30.4 và 1.5

Hướng dẫn cài đặt FreeRADIUS và daloRADIUS trên Ubuntu 20.04/22.04/24.04

Hưng Nguyễn

Đã kiểm duyệt nội dung

Ngày đăng:08/05/2025
Lượt xem

Đánh giá

Cài đặt FreeRADIUS và daloRADIUS trên Ubuntu là bước quan trọng để triển khai hệ thống xác thực mạng linh hoạt, bảo mật và dễ quản lý. Trong bài viết này, bạn sẽ được tìm hiểu rõ RADIUS là gì, cách FreeRADIUS và daloRADIUS hoạt động, cũng như vai trò của từng thành phần trong hệ thống. Mình sẽ hướng dẫn bạn từng bước từ cập nhật hệ thống, cài Apache, PHP, MariaDB, cho đến cấu hình giao diện quản trị daloRADIUS. Bài viết cũng cung cấp cách xử lý các lỗi thường gặp và gợi ý giải pháp hosting hiệu suất cao từ Vietnix giúp hệ thống vận hành ổn định hơn.

Điểm chính cần nắm

  • RADIUS là gì?: Giới thiệu khái niệm RADIUS và vai trò trong hệ thống xác thực người dùng.
  • FreeRADIUS là gì?: Trình bày chức năng và đặc điểm nổi bật của phần mềm FreeRADIUS.
  • daloRADIUS là gì?: Giải thích daloRADIUS là gì và lý do nên dùng giao diện này để quản lý FreeRADIUS.
  • 6 bước cài đặt FreeRADIUS và daloRADIUS trên Ubuntu: Hướng dẫn chi tiết từng bước cài đặt và cấu hình hai công cụ trên Ubuntu.
  • Một số lỗi thường gặp và cách khắc phục: Tổng hợp các lỗi phổ biến khi cài đặt và cách xử lý nhanh chóng.
  • Vietnix – Giải pháp lưu trữ hiệu suất cao cho website của bạn: Giới thiệu dịch vụ lưu trữ tối ưu từ Vietnix hỗ trợ hệ thống chạy ổn định.
  • FAQ: Trả lời các câu hỏi thường gặp liên quan đến cài đặt và sử dụng FreeRADIUS với daloRADIUS.

RADIUS là gì?

RADIUS (Remote Authentication Dial-In User Service) là giao thức mạng dùng để xác thực, phân quyền và ghi nhận thông tin truy cập từ xa. Nó cung cấp ba chức năng chính, gọi là AAA:

  • Authentication: Xác thực người dùng
  • Authorization: Cấp quyền truy cập
  • Accounting: Ghi nhận và theo dõi hoạt động truy cập

RADIUS thường được sử dụng trong các hệ thống WiFi, VPN, và dịch vụ truy cập từ xa.

RADIUS (Remote Authentication Dial-In User Service)
RADIUS (Remote Authentication Dial-In User Service)

FreeRADIUS là gì?

FreeRADIUS là phần mềm RADIUS mã nguồn mở phổ biến nhất hiện nay, được sử dụng để triển khai AAA trong các hệ thống mạng. FreeRADIUS thường được áp dụng tại:

  • Mạng WiFi công cộng (quán cà phê, khách sạn, sân bay…).
  • Doanh nghiệp cần kiểm soát truy cập nội bộ.
  • Nhà cung cấp dịch vụ Internet (ISP).
FreeRADIUS là phần mềm RADIUS mã nguồn mở
FreeRADIUS là phần mềm RADIUS mã nguồn mở

Ưu điểm nổi bật:

  • Hiệu năng cao, linh hoạt, dễ mở rộng
  • Hỗ trợ nhiều giao thức xác thực: EAP (MD5, TLS, PEAP…), PAP, CHAP…
  • Tích hợp cơ sở dữ liệu: MySQL, PostgreSQL, Oracle, SQLite…
  • Hỗ trợ proxy, cân bằng tải, và dự phòng
  • Tương thích với các thuộc tính RFC 2865, 2866 và VSA của nhiều hãng (Cisco, Juniper, Microsoft, HP…)

FreeRADIUS bao gồm:

  • Máy chủ và trình khách RADIUS.
  • Thư viện phát triển.
  • Các công cụ tiện ích liên quan.

daloRADIUS là gì?

daloRADIUS là giao diện quản lý FreeRADIUS qua web, giúp người dùng cấu hình và theo dõi hệ thống mà không cần thao tác dòng lệnh.

daloRADIUS là giao diện quản lý FreeRADIUS qua web
daloRADIUS là giao diện quản lý FreeRADIUS qua web

Tính năng chính:

  • Quản lý tài khoản người dùng
  • Theo dõi đăng nhập, băng thông và thời gian truy cập
  • Tạo báo cáo thống kê chi tiết
  • Tích hợp Google Maps để hiển thị vị trí đăng nhập
  • Quản lý gói cước, thanh toán và khách hàng

daloRADIUS được viết bằng PHPJavaScript, hỗ trợ nhiều hệ quản trị cơ sở dữ liệu như MySQL, PostgreSQL, SQLite, MSSQL và Oracle.

Bước 1: Cập nhật hệ thống

Trước khi cài đặt, bạn nên cập nhật các gói phần mềm có sẵn trên hệ thống để tránh lỗi không tương thích.

sudo apt update && sudo apt -y upgrade

Sau khi cập nhật xong, nếu hệ thống yêu cầu khởi động lại, bạn có thể dùng lệnh sau:

[ -f /var/run/reboot-required ] && sudo reboot -f

Bước 2: Cài đặt Apache và PHP

daloRADIUS là một ứng dụng web, vì vậy mình cần cài đặt máy chủ web Apache cùng với PHP – ngôn ngữ mà daloRADIUS sử dụng.

sudo apt -y install apache2
sudo apt -y install php libapache2-mod-php php-{gd,common,mail,mail-mime,mysql,pear,db,mbstring,xml,curl,zip}

Bạn có thể kiểm tra phiên bản PHP đã được cài bằng:

php -v

Bước 3: Cài đặt MariaDB và tạo database cho RADIUS

FreeRADIUS sẽ lưu thông tin người dùng và phiên làm việc vào một cơ sở dữ liệu. Ở đây, mình dùng MariaDB, một phiên bản tối ưu của MySQL.

  • Cài đặt MariaDB: sudo apt install mariadb-server
  • Tạo cơ sở dữ liệu và người dùng: sudo mysql -u root -p

Sau đó chạy các lệnh SQL sau trong giao diện MariaDB:

CREATE DATABASE radius;
GRANT ALL ON radius.* TO radius@localhost IDENTIFIED BY "Str0ngR@diusPass";
FLUSH PRIVILEGES;
QUIT;

# Bạn có thể thay đổi "Str0ngR@diusPass" thành một mật khẩu khác mạnh hơn nếu cần.

Bước 4: Cài đặt và cấu hình FreeRADIUS

FreeRADIUS cần được cài đặt và kết nối với cơ sở dữ liệu đã tạo ở bước trên.

sudo apt -y install freeradius freeradius-mysql freeradius-utils

Sau khi cài xong, bạn cần nhập dữ liệu cấu trúc bảng vào cơ sở dữ liệu:

sudo mysql -u root -p radius < /etc/freeradius/*/mods-config/sql/main/mysql/schema.sql

Kích hoạt module SQL:

sudo ln -s /etc/freeradius/*/mods-available/sql /etc/freeradius/*/mods-enabled/

Sau đó, bạn mở file cấu hình SQL để chỉnh sửa kết nối cơ sở dữ liệu:

sudo nano /etc/freeradius/*/mods-enabled/sql

Tìm và cập nhật các dòng sau:

driver = "rlm_sql_mysql"
dialect = "mysql"
server = "localhost"
login = "radius"
password = "Str0ngR@diusPass"
radius_db = "radius"
read_clients = yes
client_table = "nas"

Sau đó cấp quyền đọc cho FreeRADIUS:

sudo chgrp -h freerad /etc/freeradius/*/mods-available/sql
sudo chown -R freerad:freerad /etc/freeradius/*/mods-enabled/sql

Khởi động lại dịch vụ để áp dụng thay đổi:

sudo systemctl restart freeradius.service

Bước 5: Cài đặt và cấu hình daloRADIUS

  • Tải daloRADIUS từ GitHub
sudo apt -y install git
git clone https://github.com/lirantal/daloradius.git
cd daloradius
  • Nhập dữ liệu mẫu
sudo mysql -u root -p radius < contrib/db/fr3-mariadb-freeradius.sql
sudo mysql -u root -p radius < contrib/db/mariadb-daloradius.sql
  • Chuyển thư mục ứng dụng
sudo mv daloradius /var/www/
  • Cấu hình file kết nối database
cd /var/www/daloradius/app/common/includes/
sudo cp daloradius.conf.php.sample daloradius.conf.php
sudo chown www-data:www-data daloradius.conf.php
sudo nano daloradius.conf.php

Cập nhật các dòng sau:

$configValues['CONFIG_DB_HOST'] = 'localhost';
$configValues['CONFIG_DB_PORT'] = '3306';
$configValues['CONFIG_DB_USER'] = 'radius';
$configValues['CONFIG_DB_PASS'] = 'Str0ngR@diusPass';
$configValues['CONFIG_DB_NAME'] = 'radius';

Tạo thư mục log và backup cho ứng dụng

cd /var/www/daloradius/
sudo mkdir -p var/{log,backup}
sudo chown -R www-data:www-data var

Bước 6: Cấu hình Apache để truy cập daloRADIUS

Bạn có thể cấu hình Apache để chia ra 2 giao diện truy cập:

  • Một cho quản trị viên
  • Một cho người dùng
  • Tạo cấu hình port quản trị (8000)
sudo nano /etc/apache2/sites-available/operators.conf

Nội dung:

<VirtualHost *:8000>
    ServerAdmin operators@localhost
    DocumentRoot /var/www/daloradius/app/operators

    <Directory /var/www/daloradius/app/operators>
        Options -Indexes +FollowSymLinks
        AllowOverride None
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/daloradius/operators/error.log
    CustomLog ${APACHE_LOG_DIR}/daloradius/operators/access.log combined
</VirtualHost>
  • Tạo cấu hình port người dùng (80)
sudo nano /etc/apache2/sites-available/users.conf

Nội dung:

<VirtualHost *:80>
    ServerAdmin users@localhost
    DocumentRoot /var/www/daloradius/app/users

    <Directory /var/www/daloradius/app/users>
        Options -Indexes +FollowSymLinks
        AllowOverride None
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/daloradius/users/error.log
    CustomLog ${APACHE_LOG_DIR}/daloradius/users/access.log combined
</VirtualHost>
  • Kích hoạt các site và khởi động lại Apache
sudo a2ensite users.conf operators.conf
sudo a2dissite 000-default.conf
sudo systemctl restart apache2 freeradius

Bước 7: Truy cập giao diện quản lý RADIUS và thay đổi mật khẩu mặc định

Sau khi cấu hình xong, bạn có thể truy cập daloRADIUS qua trình duyệt:

  • Giao diện quản trị viên: http://<IP-của-bạn>:8000/
  • Giao diện người dùng: http://<IP-của-bạn>/
Truy cập giao diện quản lý RADIUS
Truy cập giao diện quản lý RADIUS (Nguồn: Internet)

Tài khoản mặc định:

  • Tên đăng nhập: administrator
  • Mật khẩu: radius

iconLưu ý

Mình khuyên bạn nên thay đổi mật khẩu này ngay sau khi đăng nhập để đảm bảo an toàn.

Thay đổi mật khẩu mặc định sau khi cài đặt FreeRADIUS và daloRADIUS trên Ubuntu
Thay đổi mật khẩu mặc định sau khi cài đặt FreeRADIUS và daloRADIUS trên Ubuntu (Nguồn: Internet)

Một số lỗi thường gặp và cách khắc phục

Dưới đây là một số lỗi thường gặp khi cài đặt FreeRADIUS và daloRADIUS trên Ubuntu, kèm theo cách khắc phục để bạn dễ xử lý nếu gặp phải:

1. Lỗi kết nối cơ sở dữ liệu

Triệu chứng:

  • Giao diện daloRADIUS hiển thị lỗi không kết nối được database.
  • FreeRADIUS báo lỗi không tìm thấy bảng hoặc không truy cập được cơ sở dữ liệu.

Nguyên nhân phổ biến:

  • Sai thông tin username, password, database name trong file cấu hình.
  • Module SQL chưa được kích hoạt hoặc cấu hình sai.
  • Cơ sở dữ liệu chưa được import đầy đủ các bảng.

Cách khắc phục:

  • Kiểm tra và sửa lại file daloradius.conf.php và file cấu hình SQL trong FreeRADIUS (/etc/freeradius/*/mods-enabled/sql).
  • Đảm bảo đã import đúng các tệp .sql vào database: sudo mysql -u root -p radius < /path/to/schema.sql
  • Đảm bảo dịch vụ MariaDB đang chạy: sudo systemctl status mariadb

2. FreeRADIUS không khởi động được

Triệu chứng:

  • Chạy systemctl start freeradius báo lỗi hoặc không hoạt động.
  • Dùng freeradius -X để chạy chế độ debug thấy lỗi cấu hình.

Nguyên nhân phổ biến:

  • Lỗi cú pháp trong file cấu hình (như thiếu dấu {, }).
  • Module SQL chưa được kích hoạt hoặc file cấu hình sai đường dẫn.

Cách khắc phục:

  • Luôn kiểm tra bằng chế độ debug: sudo freeradius -X
  • Đọc kỹ lỗi hiển thị để biết dòng nào sai và sửa lại file tương ứng.
  • Nếu cần, bạn có thể khôi phục về cấu hình mặc định và cấu hình lại từng bước.

3. Không truy cập được daloRADIUS từ trình duyệt

Triệu chứng:

  • Truy cập http://<IP>:8000 hoặc http://<IP>/ báo lỗi 403, 404 hoặc trắng trang.

Nguyên nhân phổ biến:

  • Apache chưa bật virtual host tương ứng.
  • Cấu hình DocumentRoot sai đường dẫn.
  • File chưa được cấp quyền cho Apache (www-data).

Cách khắc phục:

  • Kiểm tra cấu hình Apache: sudo apache2ctl configtest
  • Đảm bảo các site đã được bật:
sudo a2ensite users.conf operators.conf
sudo systemctl restart apache2
  • Kiểm tra quyền thư mục: sudo chown -R www-data:www-data /var/www/daloradius

4. Người dùng không xác thực được

Triệu chứng:

  • Người dùng đăng nhập sai dù đã thêm đúng tài khoản.
  • FreeRADIUS không ghi nhận thông tin đăng nhập.

Nguyên nhân phổ biến:

  • Người dùng chưa được thêm đúng vào bảng radcheck.
  • FreeRADIUS không kết nối được database hoặc không đọc bảng NAS.

Cách khắc phục:

  • Kiểm tra bảng radcheck và thêm người dùng nếu chưa có: INSERT INTO radcheck (username, attribute, op, value) VALUES (‘testuser’, ‘Cleartext-Password’, ‘:=’, ‘password123’);
  • Kiểm tra bảng nas đã có thiết bị truy cập hay chưa.
  • Kiểm tra log xác thực bằng: sudo freeradius -X

5. Lỗi thiếu module hoặc gói PHP

Triệu chứng:

  • Truy cập daloRADIUS báo lỗi liên quan đến thư viện PHP thiếu.

Nguyên nhân:

  • Thiếu một số module như php-mysql, php-mbstring, php-xml.

Cách khắc phục:

  • Cài đầy đủ các gói liên quan:
sudo apt install php libapache2-mod-php php-{gd,common,mail,mail-mime,mysql,pear,db,mbstring,xml,curl,zip}
sudo systemctl restart apache2

Vietnix – Giải pháp lưu trữ hiệu suất cao cho website của bạn

Vietnix cung cấp dịch vụ VPShosting tốc độ cao, được tối ưu để mang lại hiệu suất ổn định, khả năng bảo mật vượt trội và trải nghiệm truy cập nhanh chóng cho người dùng. Với hệ thống máy chủ hiện đại, đặt tại datacenter đạt chuẩn quốc tế, cùng đội ngũ kỹ thuật chuyên môn cao luôn sẵn sàng hỗ trợ 24/7, Vietnix giúp website của bạn hoạt động mượt mà và an toàn ngay cả trong thời điểm tải cao. Nếu bạn đang tìm kiếm một giải pháp lưu trữ mạnh mẽ và đáng tin cậy để phát triển dự án web, Vietnix là lựa chọn lý tưởng.

Thông tin liên hệ:

  • Website: https://vietnix.vn/
  • Hotline: 1800 1093
  • Email: sales@vietnix.com.vn
  • Địa chỉ: 265 Hồng Lạc, Phường 10, Quận Tân Bình, TP HCM.

Câu hỏi thường gặp

Có thể dùng daloRADIUS để giới hạn thời gian truy cập của người dùng không?

, bạn có thể cấu hình giới hạn theo session time, idle time, hoặc giới hạn số giờ truy cập mỗi ngày bằng cách điều chỉnh các trường radcheck hoặc radgroupcheck.

Có thể tích hợp FreeRADIUS với LDAP không?

Có thể, chỉ cần bật module LDAP và khai báo đúng thông tin LDAP server trong các file mods-enabled/ldap.

Có thể chạy FreeRADIUS trong Docker không?

Được, tuy nhiên cần cấu hình volume phù hợp để lưu data, và cấu hình mạng cho phép nhận request từ bên ngoài container.

FreeRADIUS có hỗ trợ multi-tenant (nhiều khách hàng trên cùng hệ thống) không?

Không hỗ trợ hoàn chỉnh theo mô hình SaaS, nhưng có thể giả lập qua group, realm, hoặc cài nhiều instance riêng biệt.

Có thể tạo script tự động thêm người dùng từ file CSV không?

Có thể viết shell script để parse file CSV và thêm từng dòng vào bảng radcheck bằng câu lệnh SQL tự động.

Lời kết

Việc cài đặt thành công FreeRADIUS và daloRADIUS trên Ubuntu giúp bạn xây dựng một hệ thống xác thực mạng mạnh mẽ, dễ quản lý và phù hợp cho cả môi trường doanh nghiệp lẫn cá nhân. Nếu bạn gặp bất kỳ khó khăn nào trong quá trình thực hiện, đừng ngần ngại để lại bình luận hoặc liên hệ để được hỗ trợ. Bạn cũng có thể tìm đến các giải pháp lưu trữ tối ưu như Vietnix để đảm bảo hiệu suất hệ thống luôn ổn định. Đừng quên lưu lại bài viết để tham khảo khi cần!

Mọi người cũng xem:

THEO DÕI VÀ CẬP NHẬT CHỦ ĐỀ BẠN QUAN TÂM

Đăng ký ngay để nhận những thông tin mới nhất từ blog của chúng tôi. Đừng bỏ lỡ cơ hội truy cập kiến thức và tin tức hàng ngày

Đánh giá mức độ hữu ích của bài viết

icon 1 sao

Thất vọng

icon 2 sao

Chưa hữu ích

icon 3 sao

Bình thường

icon 4 sao

Hữu ích

icon 5 sao

Rất hữu ích

Hưng Nguyễn

Co-Founder
tại

Kết nối với mình qua

Kết nối với mình qua

Theo dõi
Thông báo của
guest
0 Comments
Phản hồi nội tuyến
Xem tất cả bình luận

Tăng tốc độ website - Nâng tầm giá trị thương hiệu

Banner group
Tăng tốc tải trang

95 điểm

Nâng cao trải nghiệm người dùng

Tăng 8% tỷ lệ chuyển đổi

Thúc đẩy SEO, Google Ads hiệu quả

Tăng tốc ngay

SẢN PHẨM NỔI BẬT

Icon tab

MAXSPEED HOSTING

TĂNG TỐC WEBSITE TOÀN DIỆN

CÔNG NGHỆ ĐỘC QUYỀN

Vector

PHẦN CỨNG MẠNH MẼ

Vector

HỖ TRỢ 24/7

Vector
ĐĂNG KÝ NGAYGroup icon
khuyến mãi 30 tháng 4
Khi mua Hosting/VPS
16/04/2025 - 16/05/2025
Pattern

7 NGÀY DÙNG THỬ HOSTING

NẮM BẮT CƠ HỘI, THÀNH CÔNG DẪN LỐI

Cùng trải nghiệm dịch vụ hosting tốc độ cao được hơn 100,000 khách hàng sử dụng

icon popup single post

CẢM ƠN BẠN ĐÃ ĐÁNH GIÁ BÀI VIẾT

Vietnix sẽ luôn cố gắng cải thiện chất lượng dịch vụ mỗi ngày

ĐÓNG

Đánh giá mức độ hữu ích của bài viết

icon 1 sao

Thất vọng

icon 2 sao

Chưa hữu ích

icon 3 sao

Bình thường

icon 4 sao

Hữu ích

icon 5 sao

Rất hữu ích

Icon
ĐĂNG KÝ NHẬN TÀI LIỆU THÀNH CÔNG
Cảm ơn bạn đã đăng ký nhận tài liệu mới nhất từ Vietnix!
ĐÓNG

ĐĂNG KÝ DÙNG THỬ HOSTING

Asset

7 NGÀY MIỄN PHÍ

Asset 1

ĐĂNG KÝ DÙNG THỬ HOSTING

Asset

7 NGÀY MIỄN PHÍ

Asset 1
Icon
XÁC NHẬN ĐĂNG KÝ DÙNG THỬ THÀNH CÔNG
Cảm ơn bạn đã đăng ký thông tin thành công. Đội ngũ CSKH sẽ liên hệ trực tiếp để kích hoạt dịch vụ cho bạn nhanh nhất!
ĐÓNG