Ngày càng có nhiều máy chủ mail, bao gồm Google và Microsoft, áp dụng cơ chế xác thực bảo mật tiên tiến OAuth 2.0 để xác thực các mail client. Khác với phương thức xác thực truyền thống bằng username/password, OAuth yêu cầu xác minh danh tính thông qua một ứng dụng của bên thứ ba. Vigor Router hỗ trợ cơ chế này, cho phép gửi email thông báo thông qua các máy chủ mail như Microsoft 365. 

Quy trình hoạt động của OAuth 2.0

  1. User Authorization (Chuyển hướng đến Authorization Server)

Vigor Router chuyển hướng người dùng đến Authorization Server (ví dụ: Microsoft) để đăng nhập và cấp quyền truy cập.

  1. User Logs In và Grants Permission

Người dùng đăng nhập vào tài khoản Microsoft và cấp quyền cho ứng dụng truy cập các scope được yêu cầu.

  1. Authorization Code trả về Client / Vigor Router

Authorization Server chuyển hướng trở lại Vigor Router kèm theo Authorization Code.

  1. Vigor Router gửi yêu cầu Access Token Using Authorization Code

Vigor Router sử dụng Authorization Code để yêu cầu Access Token từ Authorization Server.

  1. Authorization Server trả Access Token (và Refresh Token nếu có)

Authorization Server trả về Access Token , nếu được hỗ trợ, cả Refresh Token.

Bài viết này giới thiệu cách cấu hình Vigor Router sử dụng OAuth 2.0 để gửi email thông báo thông qua máy chủ mail của Microsoft.

Model hỗ trợ và Firmware Versions

  • Vigor3912 / Vigor3910 / Vigor2962: Firmware 4.4.6.1
  • Vigor2927: Firmware 4.5.3*

Thực hiện

1. Cấu hình Dynamic DNS

Vào Applications >> Dynamic DNS Setup >> Dynamic DNS Account Setup

Trong ví dụ này sử dụng DrayDDNS. Tên DDNS này sẽ được sử dụng ở bước sau làm Redirect URI trên Microsoft Server.

Tham khảo hướng dẫn cấu hình DrayDDNS: 

https://www.anphat.vn/quan-ly-thiet-bi-system-maintenance/huong-dan-kich-hoat-va-su-dung-drayddns 

2. Kích hoạt HTTPS from WAN

Vào System Maintenance >> Management

Vigor Router hoạt động như OAuth Client, vì vậy trước khi gửi email, router cần yêu cầu Access Token từ Microsoft Authorization Server.

Để OAuth 2.0 hoạt động, cổng quản trị HTTPS phải được đặt là 443.

3. Cấu hình Microsoft Entra ID

Để Vigor Router có thể sử dụng xác thực Microsoft OAuth 2.0, cần tạo một ứng dụng trên Microsoft Azure Portal / Microsoft Entra Admin Center.

3.1 Tạo App Registration

Đăng nhập Microsoft Entra Admin Center.

Vào Identity → Applications → App registrations → New registration

Cấu hình đề xuất:

Item

Value

Name

Router SMTP OAuth

Supported account types

Single tenant

Redirect URI

Để trống ở bước này

 

Sau khi tạo ứng dụng, ghi lại các thông tin sau:

  • Application (Client) ID
  • Directory (Tenant) ID

3.2 Tạo Client Secret

Vào Certificates & secrets → New client secret

Tạo một Client Secret mới.

Lưu ý: Hãy lưu ngay Client Secret VALUE sau khi tạo vì giá trị này sẽ không được hiển thị lại sau đó.

3.3 Thêm SMTP OAuth Permissions

Vào API permissions → Add permission

Chọn:

  • Office 365 Exchange Online
  • Delegated permissions

Thêm các quyền sau:

  • SMTP.Send
  • offline_access
  • openid
  • email
  • profile

Đối với các triển khai trên Router / IoT, Microsoft khuyến nghị sử dụng Delegated permissions kết hợp với Refresh Token.

3.4 Cấp quyền Grant Admin Consent

Vào API permissions → Grant admin consent

Nhấn Grant admin consent

Lưu ý: Đây là bước bắt buộc. Nếu không thực hiện, quá trình yêu cầu Token có thể thất bại.

3.5 Cấu hình Redirect URI

Vào Applications → App registrations → Your App → Authentication

Trong mục Redirect URIs, thêm URL của router.

Ví dụ https://oauth2.drayddns.com/doc/mailOAuth.htm 

Lưu ý: Redirect URI được cấu hình trong Microsoft Entra ID phải khớp hoàn toàn với URI mà Vigor Router sử dụng trong quá trình OAuth, bao gồm:

  • Protocol (HTTP / HTTPS)
  • Hostname hoặc IP address
  • Port number
  • Path
  • Dấu "/" ở cuối (Trailing slash), nếu có

Nếu không khớp hoàn toàn, Microsoft sẽ từ chối xác thực với lỗi Redirect URI mismatch.

4. Cấu hình Mail Service on Vigor Router

Truy cập Vigor Router bằng địa chỉ HTTPS DDNS đã tạo ở Bước 1.

Vào Objects Setting >> SMS/Mail Service Object

Chọn một Profile và cấu hình:

  • Nhập Profile Name
  • Chọn WAN Interface
  • Chọn OAuth2.0 tại Authentication Type
  • Chọn Microsoft tại Service Provider
  • Dán Tenant ID
  • Dán Client ID
  • Dán Client Secret
  • Chọn DDNS Profile làm Redirect URI
  • Nhấn Get Token

Một cửa sổ đăng nhập Microsoft sẽ xuất hiện.

Chọn tài khoản Microsoft và tiếp tục quá trình xác thực.

Sau đó nhấn Accept để cấp quyền cho router sử dụng Microsoft API.

Sau khi hoàn tất, Vigor Router sẽ lấy thành công OAuth Token từ máy chủ Microsoft.

 

5. Gửi Send a Test Email

Sử dụng chức năng Send a Test E-mail để xác nhận Vigor Router có thể gửi email thông qua máy chủ Microsoft bằng xác thực OAuth 2.0.

6. Cấu hình Notification Objects

Sau khi xác nhận đã nhận được email thử nghiệm thành công, tiếp tục cấu hình:

  • Notification Objects
  • Mail Service

Tham khảo hướng dẫn (phần B, mục 2,3)

https://www.anphat.vn/quan-ly-thiet-bi-system-maintenance/drayos-cau-hinh-mail-alert/-goi-mail-thong-bao-tren-draytek 

Sau khi hoàn tất, Vigor Router sẽ có thể gửi email thông báo thông qua Microsoft 365 bằng OAuth 2.0.

 

7. Disable HTTPS from WAN

Vào System Maintenance >> Management

Tắt HTTPS from WAN sau khi hoàn tất việc lấy OAuth Token.

Quá trình xác thực OAuth ban đầu yêu cầu tạm thời bật HTTPS from WAN, vì router cần nhận OAuth callback thông qua tên miền (DDNS) đã cấu hình.

Sau khi đã lấy được Token, Vigor Router sẽ lưu Token cục bộ và sử dụng Token đó cho các yêu cầu HTTPS gửi trực tiếp đến máy chủ Microsoft.

Các kết nối này sẽ tiếp tục được kiểm tra và xử lý theo Access List như bình thường.