hiep03
Intern
Cấu hình VPN Remote cho phép người dùng kết nối vào hệ thống nội bộ sử dụng AD (Active Directory) kết hợp với MFA
Mục lục:I. Mở đầu
II. Lý thuyết
A. Xác thực đa yếu tố (Multi-Factor Authentication – MFA)
1. Khái niệm xác thực đa yếu tố
2. Các loại phương pháp xác thực MFA chính
B. Giao thức RADIUS
1. Khái niệm RADIUS
2. Chức năng của RADIUS
3. Mô hình hoạt động của RADIUS
3.1. RADIUS Client / NAS
3.2. RADIUS Server
3.3. User Database / Identity Store
III. Triển khai
A. Mô hình triển khai
B. Luồng xác thực MFA
C. Cấu hình
1. Cấu hình Firewall Palo Alto
2. Cấu hình RADIUS Server
IV. Kiểm tra
V. Tổng kết
I. Mở đầu
Tiếp tục sau bài trước Remote Access VPN sử dụng AD và User Local mình đã sử dụng tài khoản và mật khẩu cấp phát cho remote user để đăng nhập. Tuy nhiên để tăng cường bảo mật người ta thường triển khai xác thực đa yếu tố (Multi-Factor Authentication – MFA) nhằm bổ sung thêm một lớp bảo vệ thứ hai cho người dùng truy cập từ xa. Palo Alto NGFW hỗ trợ nhiều giải pháp MFA khác nhau như Azure AD kết hợp SAML, RADIUS Server, hoặc các hệ thống xác thực bên thứ ba.Trong bài viết này, mình sẽ hướng dẫn triển khai MFA cho Remote Access VPN trên Palo Alto NGFW bằng cách tích hợp RADIUS Server sử dụng FreeRADIUS kết hợp OTP, giúp nâng cao tính bảo mật cho người dùng Remote Access VPN.
II. Lý thuyết
A. Xác thực đa yếu tố- Xác thực đa yếu tố - Multi-factor Authentication (MFA) là gì ?
Ví dụ: sau khi đăng nhập bằng mật khẩu người dùng có thể được yêu cầu nhập mã qua mail, OTP, từ ứng dụng Authenticator, từ điện thoại, câu hỏi bí mật, quét vân tay,...
2. Các loại phương pháp xác thực MFA chính
Hầu hết các phương pháp xác thực MFA cần xác thực ít nhất 2 trong 3 loại sau:- Thứ người dùng biết (Something you know): người dùng phải chứng minh danh tính của họ bằng cách tiết lộ những thông tin mà không một ai khác biết. Chẳng hạn như mật khẩu, câu hỏi xác minh, OTP.
- Thứ người dùng có (Something you have): người dùng chứng minh danh tính của mình bằng một thứ chỉ riêng họ sở hữu. Ví dụ: Điện thoại di động, Smart Card (Thẻ bảo mật), ID Card (Thẻ định danh), Hardware key fobs (Chuỗi khóa phần cứng), Security keys (Khóa bảo mật), các tài sản kỹ thuật số như tài khoản email và ứng dụng trình xác thực (Authenticator).
- Thứ vốn thuộc về người dùng (Something you are): Xác minh danh tính bằng các đặc điểm sinh trắc học của người dùng. Sau đây là một số ví dụ về các yếu tố xác thực như vậy:
- Quét vân tay
- Quét võng mạc
- Nhận dạng giọng nói
- Nhận dạng khuôn mặt
1. Khái niệm
Remote Authentication Dial-In User Service (RADIUS) là một giao thức mạng có chức năng xác thực (authentication) và phân quyền (authorization) cho người dùng truy cập vào mạng từ xa. Giao thức (protocol) về cơ bản là một tập hợp các quy tắc điều khiển cách thức giao tiếp và vận hành của hệ thống.
RADIUS được sử dụng để tạo kết nối giữa các máy tính và cung cấp:
- Authentication (xác thực)
- Authorization (phân quyền)
- Accounting (ghi nhật ký sử dụng tài nguyên)
2. Chức năng
3 chức năng chính của RADIUS:
- Authentication – xác thực người dùng/thiết bị trước khi truy cập mạng.
- Authorization – phân quyền dịch vụ, thời gian truy cập, địa chỉ IP…
- Accounting – ghi nhận thời gian sử dụng, số byte trao đổi, gói tin…
RADIUS sử dụng mô hình RADIUS client/NAS → RADIUS server, hoạt động tương tự LDAP và có thể lưu trữ thông tin người dùng cục bộ. Về bảo mật, RADIUS có độ an toàn tương đương TCP. Nó thường dùng cổng 1812 (auth) và 1813 (accounting).
3.1 RADIUS client/NAS (Network Access Server)
Thiết bị trung gian nhận yêu cầu từ người dùng và gửi lên RADIUS server. Được gọi là Radius Client mặc dù không phải là người dùng cuối (end user)
Ví dụ:
- Wireless Controller / Access Point
- VPN Gateway
- Firewall
- Dial-up Server
- Switch cấp access (802.1X)
3.2 RADIUS Server
RADIUS server dựa trên giao thức UDP chạy trên Linux hoặc Windows như một daemon (tiến trình nền). Server lưu trữ thông tin người dùng và phản hồi NAS khi có yêu cầu.
RADIUS server:
- Nhận thông tin xác thực từ NAS
- Kiểm tra chứng thực
- Trả lại thông tin cấu hình để NAS cấp quyền truy cập.
Nguồn thông tin người dùng để server so sánh:Local user DB Active Directory / LDAP, MySQL, SQLToken server, PKI Certificate Authority,...
RADIUS server không nhất thiết tự lưu tất cả user, nó có thể query ra nơi khác.
II. Triển khai
A. Mô hình triển khai
Để xác thực từ xa cho người dùng Remote Access VPN mình sẽ triển khai mô hình như trên bao gồm các thành phần chính như sau
- Win Remote làm End User Remote Access
- Palo Alto NGFW (PAN 9.1) làm RADIUS Client
- AD Server Window (Win Server 2019) chứa thông tin xác thực user
- RADIUS Server (Ubuntu Desktop 18.04) làm trung gian và xác thực MFA
B. Luồng xác thực
Luồng xác thực sẽ như sau:- Remote User đăng nhập tài khoản được cấp trong AD
- Firewall nhận thông tin đăng nhập và chuyển thông tin tới RADIUS Server theo phương thức PAP
- RADIUS Server chuyển yêu cầu tới AD Server thông qua LDAP để xác thực người dùng
- Nếu thành công gửi challenge về lại Firewall hỏi mã OTP
- Người dùng sử dụng App Authenticator trong điện thoại và nhập mã.
- Nếu đúng sẽ đăng nhập thành công.
C. Cấu hình
1. Firewall Palo Altoa. Tạo RADIUS Profile
Device > Server Profile > RADIUS
Ghi nhớ secret để cấu hình radius server
b. Chuyển giao thức Radius sang cổng e1/3
c. Tạo Authentication Profile
d. Gán Authen Profile vào Portal và Gateway
Vào phần authentication và Add thêm Profile
2. RADIUS Server
a. Tải các gói tin cần thiết
sudo apt install freeradius freeradius-ldap libpam-google-authenticator realmd adcli krb5-user samba-common-bin
b. Join Domain vào AD
Cấu hình để thấy AD
Kiểm tra
Join Domain
sudo realm join poptech.vn -U administrator -v
c. Chỉnh NTP
Vì Authenticator sinh mã dựa theo thời gian nên cần đồng bộ thời gian chuẩn cho server. Tránh lệch thời gian gây lỗi xác thực
sudo timedatectl set-timezone Asia/Ho_Chi_Minh
sudo timedatectl set-ntp no
sudo ntpdate -u pool.ntp.org
sudo timedatectl set-ntp yes
d. Cấu hình LDAP cho freeradius để xác thực user
sudo ln -s /etc/freeradius/3.0/mods-available/ldap /etc/freeradius/3.0/mods-enabled/
sudo nano /etc/freeradius/3.0/mods-enabled/ldap
Trỏ về máy AD
e. Cấu hình PAM (Pluggable Authentication Modules) để xác thực user bằng OTP
Cấu hình sử dụng module Google Authenticator PAM
Và thư mục chứa Secret của User
- Tạo thư mục chứa secret của user
sudo chown freerad:freerad /etc/freeradius/3.0/otp
sudo chmod 750 /etc/freeradius/3.0/otp
- Tạo secret cho user tvro
Mở App Authenticator scan mã
sudo chown freerad:freerad /etc/freeradius/3.0/otp/tvro
sudo chmod 600 /etc/freeradius/3.0/otp/tvro
Tạo thêm cho user lvbao
sudo google-authenticator -t -d -f -r 3 -R 30 -w 3 -l "lvbao@poptech.vn" -i "Poptech-Radius" -s /etc/freeradius/3.0/otp/lvbao
sudo chown freerad:freerad /etc/freeradius/3.0/otp/lvbao
sudo chmod 600 /etc/freeradius/3.0/otp/lvbao
f. Cấu hình để xác thực MFA
Sudo nano /etc/freeradius/3.0/sites-enabled/dedault
authorize {
if (!&request:State) {
update control {
Auth-Type := LDAP
}
}
# lop hai user vua nhap otp xong
else {
update control {
Auth-Type := PAM
}
}
}
authenticate {
authenticate {
Auth-Type LDAP {
ldap
if (ok || updated) {
update reply {
Reply-Message := "Vui lòng nhập mã OTP Google Authenticator của bạn:"
State := "%{randstr:aaaaaaaaaaaaaaaa}"
}
noop
challenge
}
}
Auth-Type PAM {
pam
}
}
g. Chạy service RADIUS
sudo systemctl enable freeradius
sudo systemctl start freeradius
sudo systemctl enable freeradius
III. Kiểm tra
Tiến hành đăng nhập bằng tài khoản tvro
Sau khi đăng nhập đúng nhập mã OTP
Sau khi thành công
Thử với user lvbao
IV. Tổng kết
Trong bài viết này, giải pháp Remote Access VPN sử dụng Active Directory kết hợp MFA đã được triển khai thành công trên Palo Alto NGFW thông qua việc tích hợp RADIUS Server sử dụng FreeRADIUS và OTP. Mô hình cho phép tăng cường bảo mật bằng cách bổ sung lớp xác thực thứ hai bên cạnh cơ chế username/password truyền thống.Việc triển khai RADIUS đóng vai trò trung gian giúp tách biệt rõ ràng giữa firewall và hệ thống xác thực, đồng thời tăng khả năng mở rộng và quản lý tập trung.
Qua mô hình này có thể thấy, việc kết hợp Remote VPN + AD + MFA là một giải pháp phù hợp và thực tế cho các hệ thống doanh nghiệp hiện nay, đặc biệt trong bối cảnh làm việc từ xa ngày càng phổ biến. Giải pháp không chỉ nâng cao mức độ bảo mật mà còn linh hoạt, dễ mở rộng và có thể tích hợp thêm các phương thức xác thực khác trong tương lai.
Đính kèm
Sửa lần cuối:
Bài viết liên quan
Được quan tâm
Bài viết mới