Trang chủ Về chúng tôi Giải pháp Dịch vụ Cloud Server Blog Liên hệ ngay
Next Step

Portal Next Step Cloud tại portal.next-step.vn là nơi bạn quản lý toàn bộ hạ tầng Cloud Server — tạo máy chủ, quản lý ổ cứng, cấu hình mạng, phân quyền team và theo dõi chi phí theo thời gian thực, tất cả chỉ trong một giao diện duy nhất. Bài viết này gộp toàn bộ kiến thức sử dụng portal — từ thao tác cơ bản nhất đến các chi tiết kỹ thuật chuyên sâu.

📖 Mục lục nhanh


1. Dashboard & khái niệm cốt lõi

Sau khi đăng nhập, bạn sẽ thấy ngay màn hình Dashboard với 6 chỉ số quan trọng:

Phía dưới là phần My Instances — danh sách toàn bộ máy chủ của bạn và trạng thái từng máy.

Next Step Cloud Portal portal.next-step.vn 🏠 Dashboard ⚡ Instances 💾 Volumes 🖼 Images 🌐 Networks 🔒 Security Groups 📊 Usage Instances 6 4 running · 2 stopped vCPU Used 14 of 32 cores RAM Used 28 GB of 64 GB Volume Used 480 GB total Backup Used 60 GB snapshots Public IP 5 IPs in use My Instances Name Status Flavor IP Address prod-api-01 Running 2C · 4G 103.xx.xx.10 db-server-01 Stopped 4C · 8G —

Trước khi thao tác sâu hơn, nắm 5 khái niệm cốt lõi sau sẽ giúp bạn hiểu toàn bộ portal nhanh hơn:

Khái niệm Ý nghĩa
Instance Máy chủ ảo — có vCPU, RAM, 1 OS volume, có thể thêm data volume và network interface.
Volume Ổ đĩa lưu trữ bền vững. OS volume để khởi động instance; data volume lưu dữ liệu ứng dụng tách riêng.
Storage class / IOPS tier Storage class quyết định ổ đĩa lưu ở đâu; IOPS tier quyết định hiệu năng/giá trong storage class đó.
Security Group Chính sách firewall áp cho instance — kiểm soát traffic vào như SSH, RDP, HTTP, database.
Snapshot / Image Snapshot là điểm khôi phục của volume; Image là nguồn khởi động tái sử dụng tạo từ snapshot; Machine Image sao lưu toàn bộ máy chủ.

2. Tạo Cloud Server (Instance) mới

Vào menu Instances → bấm nút + Create instance góc phải. Nhìn tổng quan, form tạo máy chủ gồm 4 nhóm chính:

① Identification — Đặt tên và mật khẩu

Nhập tên máy chủ (chỉ dùng chữ, số, gạch ngang, bắt đầu bằng chữ cái, 3–50 ký tự — ví dụ tốt: prod-api-01, jump-host-01, tránh tên mơ hồ như server1) và mật khẩu root (tối thiểu 8 ký tự, có chữ hoa và số).

② Choose an Image — Chọn hệ điều hành

Chọn từ System Template (Ubuntu, CentOS, Debian, Rocky Linux, Windows… — lựa chọn mặc định an toàn nhất), From my Image (Image cá nhân đã lưu từ snapshot trước đó), hoặc From Machine Image (khôi phục toàn bộ layout máy chủ khác).

③ Instance Type — Chọn cấu hình CPU & RAM

5 lựa chọn: Small (1 vCPU / 2 GB), Medium (2 vCPU / 4 GB), Large (4 vCPU / 8 GB), XLarge (8 vCPU / 16 GB), hoặc Custom tự nhập tuỳ ý.

④ Storage & Volumes — Chọn ổ đĩa

Chọn loại SSD: Standard (3.000 IOPS) hoặc Enterprise (8.000 IOPS, tốt hơn cho database). Có thể thêm volume dữ liệu riêng biệt.

Cột Summary bên phải tự động tính chi phí ước tính theo giờ và theo tháng ngay khi bạn chọn cấu hình.

Đi sâu vào form tạo Instance — 9 bước chi tiết

Nếu đây là lần đầu bạn tạo instance, hoặc muốn hiểu rõ từng trường trên form, đây là quy trình đầy đủ theo đúng thứ tự xuất hiện trên portal:

Quy trình tạo Instance — 9 bước1 2 3 4 5 6 7 8 9 Tên Nguồn Setup Type Storage Network Sec. Group Review Create

③ Hoàn tất thiết lập ban đầu (Initial setup)

Linux hỗ trợ password injection: nhập root password ≥ 8 ký tự, có ít nhất 1 chữ hoa và 1 chữ số — không dùng lại mật khẩu từ hệ thống khác.

Windows hoặc custom OS: trường mật khẩu bị ẩn — sau khi tạo, mở VNC Console để hoàn tất setup và đặt Administrator password trực tiếp trong console.

⑥ Cấu hình Networking

Public NIC: bật khi instance cần kết nối internet trực tiếp — public web server, bastion/jump host. Dùng Auto-allocate trừ khi đã có IP reserved.

Private NIC: bật khi instance cần giao tiếp nội bộ — app-to-database, internal API, backend không nên lộ ra internet.

⑦ Chọn hoặc tạo Security Group

Bắt buộc phải có ít nhất 1 Security Group. Có thể chọn nhóm có sẵn hoặc bấm Create new ngay trên form tạo instance mà không cần rời trang.

⑧ Xem lại Summary & chi phí ước tính

Kiểm tra vCPU, RAM, OS volume, extra volume, network, security group, và chi phí ước tính theo giờ/tháng (dựa trên 720 giờ/tháng, billing thực tế tính theo giờ chạy thực). Nếu chi phí cao hơn dự kiến, giảm vCPU/RAM/disk size/public IP trước khi tạo.

⑨ Bấm Create Instance

Nút bị disable nếu thiếu trường bắt buộc (tên, image, mật khẩu hợp lệ, storage class, security group) hoặc vượt quota. Sau khi tạo, instance chuyển qua trạng thái pending/creating/starting trong vài phút.

Chọn kích thước Instance sao cho hợp lý

Nguyên tắc: bắt đầu với size nhỏ nhất chạy ổn workload, resize sau nếu cần — đừng ước lượng quá tay ngay từ đầu.

So sánh nhanh Instance TypeSmall Medium Large XLarge Custom 1 vCPU/2GB → 2/4 → 4/8 → 8/16 → tuỳ chỉnh theo nhu cầu thực tế Windows yêu cầu tối thiểu 2 vCPU / 4 GB RAM
Loại workload Điểm khởi đầu gợi ý
Linux jump host Small
Static site / API nhỏ Small hoặc Medium
App Node.js/Python Medium
Database nhỏ Large + storage tier phù hợp
Windows Server Medium trở lên
CI/build runner Large hoặc Custom

💡 Lưu ý quan trọng: Nếu database chậm, log/import mất nhiều thời gian hơn dự kiến trong khi CPU và RAM vẫn bình thường — nút thắt thường nằm ở storage, không phải CPU. Kiểm tra storage class/IOPS tier trước khi vội tăng vCPU.

Quản lý Instance — bảng thao tác nhanh

Bấm vào tên Instance để mở trang chi tiết. Tại đây bạn có đầy đủ các nút thao tác vòng đời máy chủ chỉ trong 1 click:

prod-api-01 2C · 4G · Ubuntu 22.04 103.xx.xx.10 ▶ Start ⏹ Stop 🔄 Reboot 📷 Snapshot 🔑 Reset PW ↕ Resize Flavor 🖥 Console: Truy cập trực tiếp qua giao diện web khi không SSH được 🔌 Attach/Detach Volume · Security Groups

Các thao tác cơ bản

  • Start / Stop / Reboot: Khởi động, dừng, khởi động lại máy chủ
  • Hard Reboot: Buộc khởi động lại khi máy không phản hồi lệnh reboot thông thường
  • Console: Truy cập giao diện terminal/VNC qua trình duyệt
  • Delete: Xoá vĩnh viễn Instance — không thể hoàn tác

Thao tác nâng cao

  • Snapshot: Chụp nhanh trạng thái ổ đĩa hiện tại
  • Reset Password: Đổi mật khẩu root không cần đăng nhập vào máy
  • Resize Flavor: Nâng/hạ cấu hình CPU & RAM
  • Attach/Detach Volume: Gắn hoặc gỡ thêm ổ đĩa mà không cần tắt máy

3. Vòng đời của một Instance

Hiểu các trạng thái giúp tránh downtime và mất dữ liệu ngoài ý muốn:

Creating Running Stopped Deleting Failed/error có thể xảy ra ở bất kỳ bước chuyển trạng thái nào
Trạng thái Ý nghĩa
Creating Nền tảng đang khởi tạo VM và ổ đĩa.
Running Instance đang bật.
Stopped Đã tắt nhưng tài nguyên vẫn tồn tại.
Starting/stopping/rebooting Đang thực hiện một hành động vòng đời.
Deleting Đang xoá instance và tài nguyên không giữ lại.
Failed/error Hành động gần nhất không hoàn tất.

Start / Stop / Reboot

Dùng Start để bật lại máy đang Stopped. Stop khi bảo trì, tiết kiệm chi phí hoặc chuẩn bị resize an toàn. Reboot sau khi update OS hoặc service cần khởi động lại sạch. Nếu reboot không khôi phục được truy cập, mở Web console.

Resize

Trước khi resize, xác định workload đang bị giới hạn bởi CPU, RAM hay disk. Nếu là disk latency, đổi storage class/IOPS tier thường hiệu quả hơn tăng CPU.

Xoá an toàn

Trước khi xoá, kiểm tra data volume, snapshot, backup, log và cờ Keep on instance delete. Volume không đánh dấu giữ lại có thể bị xoá theo instance.

Bảo toàn dữ liệu

Dùng Snapshot làm điểm khôi phục cho volume, và Image/Machine Image để lưu nguồn khởi động hoặc toàn bộ layout máy chủ có thể tái sử dụng.


4. Kết nối vào máy chủ

4.1 Kết nối qua SSH

Cần: instance đang chạy, IP public/private truy cập được, security group mở TCP 22 cho đúng nguồn, và username/phương thức xác thực chính xác.

Máy tính bạn 💻 SSH port 22 Security Group Allow TCP 22 chỉ từ IP tin cậy 🛡️ Instance 🖥️
ssh root@<public-ip>

Nhập root password đã đặt lúc tạo instance.

ssh -i ~/.ssh/<key-file> <username>@<public-ip>

Username phổ biến: root, ubuntu, debian, rocky, centos tuỳ theo image.

Checklist sau khi login lần đầu: cập nhật package, thêm SSH key, tạo user non-root nếu cần, kiểm tra lại firewall rule, mount các data volume đã gắn.

Triệu chứng Nguyên nhân thường gặp
Timeout Security group, sai IP, không có route, guest firewall chặn
Connection refused Service SSH chưa chạy hoặc guest firewall chặn
Permission denied Sai username, password hoặc key
Host key changed Instance đã rebuild hoặc IP bị dùng lại

4.2 Dùng Web Console khi SSH không hoạt động

Console cho phép truy cập màn hình/bàn phím của instance qua trình duyệt — dùng khi SSH/RDP lỗi, instance chưa có public IP, security group chưa sẵn sàng, hoặc OS đang chờ setup lần đầu (đặc biệt với Windows).

Instance detail page Console / VNC console Click vào console + nhấn Enter nếu màn hình trống $ ip addr $ ip route $ systemctl status ssh $ journalctl -u ssh -n 50

Các bước mở console: mở Instances → chọn instance → mở trang chi tiết → bấm Console hoặc VNC console → chờ phiên kết nối.

⚠️ Coi console access như quyền quản trị: không dán secret vào phiên console dùng chung, logout khi xong, đóng tab console sau khi hoàn tất.

4.3 Reset password

Dùng khi mất quyền truy cập hoặc cần xoay vòng credential định kỳ. Mật khẩu mới cần ≥ 8 ký tự, có chữ hoa và số — nên lưu vào password manager.

  1. Mở Instances → chọn instance mục tiêu
  2. Mở action reset password
  3. Nhập mật khẩu mới → xác nhận → chờ hoàn tất

Khi nào dùng Console thay vì reset qua portal: Windows lần đầu setup, custom image không hỗ trợ password injection, hoặc guest OS không hỗ trợ reset qua portal.

Sau khi reset: xác nhận service vẫn chạy, cân nhắc thêm/đổi SSH key, xoá credential tạm, rà lại security group.


5. Volumes — Storage, Snapshot & Schedule

Menu Volumes hiển thị tất cả ổ đĩa của bạn gồm 3 tab:

Volumes Loại, size, IOPS tier attached/available Snapshots Bản chụp nhanh backup hoặc tạo image Schedules Lịch tự động snapshot định kỳ

Bấm + Create Volume để thêm ổ đĩa mới và gắn vào Instance đang chạy mà không cần tắt máy.

Storage class & IOPS tier

Loại storage class Phù hợp Tránh dùng cho
Standard (~3.000 IOPS) Web app, database nhỏ, log, dev Database I/O rất cao
Enterprise (~8.000 IOPS) Database, search index, queue, CI runner Archive, dữ liệu lạnh
Capacity/archive File lớn, backup, export ít truy cập Boot disk, database nóng
Backup-only Backup nội bộ do nền tảng quản lý Volume do người dùng tạo trực tiếp
Standard 3.000 IOPS 💽 Enterprise 8.000 IOPS ⚡ Capacity/Archive IOPS thấp, giá rẻ 🗄️

Tạo volume mới: Volumes → Create Volume → đặt tên → chọn storage class → chọn IOPS tier (nếu có) → đặt size GB → xem chi phí ước tính (giá tier × GB × 720 giờ) → tuỳ chọn gắn ngay vào instance đang running/stopped → Create Volume.

Chuẩn bị volume mới trong Linux (sau khi attach):

lsblk
sudo mkfs.ext4 /dev/sdb
sudo mkdir -p /data
sudo mount /dev/sdb /data
sudo blkid /dev/sdb # lấy UUID để thêm vào /etc/fstab

⚠️ Cẩn thận trước khi format — format nhầm ổ đĩa có thể mất dữ liệu. Kiểm tra kỹ dung lượng và xem ổ đã có partition hay chưa trước khi chạy mkfs.

Với Windows: mở Disk Management → đưa disk online nếu đang offline → Initialize disk → Create new volume → format NTFS → gán ổ đĩa. Không format nếu disk chứa dữ liệu từ instance trước.

Snapshots

Snapshot là điểm khôi phục tại một thời điểm cho volume — tạo trước khi nâng cấp ứng dụng, migrate database, đổi filesystem, resize hay gỡ volume quan trọng. Snapshot có thể là crash-consistent, application-aware, hoặc cold tuỳ nền tảng và guest OS hỗ trợ — luôn chọn chế độ an toàn nhất cho dữ liệu production.

  1. Volumes → chọn volume mục tiêu → mở action menu
  2. Chọn Create snapshot → đặt tên rõ ràng (ví dụ before-db-migration-2026-07-17 thay vì snapshot1)
  3. Chọn consistency mode nếu được hỏi → xác nhận

6. Images & Machine Images — Lưu & tái sử dụng cấu hình

Image Chụp OS disk / base OS Tốt cho “golden image” 💿 Machine Image Toàn bộ layout: OS + data disk Dùng để clone/khôi phục full server 🗃️

Images (Snapshot → Image)

Chuyển một snapshot thành Image để dùng làm template khởi tạo Instance mới nhanh hơn. Phù hợp khi bạn đã cài đặt môi trường sẵn và muốn nhân bản.

Machine Images (toàn bộ Instance)

Sao lưu toàn bộ máy chủ bao gồm tất cả ổ đĩa. Khôi phục sẽ tạo ra một Instance hoàn toàn mới với đầy đủ dữ liệu — đây là giải pháp backup an toàn nhất.

Trước khi tạo image tái sử dụng: xoá file tạm, secret, credential riêng của môi trường, và lịch sử shell; cập nhật OS rồi mới tạo snapshot để chụp.

Sau khi có Image/Machine Image, quay lại Create instance → chọn From my Image hoặc From Machine Image → xem lại disk size/storage class → tạo instance mới.


7. Networks — Quản lý IP và mạng

Vào Networks để xem và quản lý địa chỉ IP:

Public IP Gắn với Instance Trạng thái: in use / reserved 🌐 Reserve IP Giữ IP cố định Tránh đổi IP khi tạo lại máy 📌 Private IP IP nội bộ Giao tiếp giữa các máy chủ 🔒

Chọn layout Public/Private NIC theo workload

Workload Public NIC Private NIC Ghi chú
Public web server Có Tuỳ chọn Chỉ mở HTTP/HTTPS
Database Không Có Giữ nội bộ
Jump host Có Có SSH từ IP tin cậy, truy cập backend nội bộ
Internal worker Không Có Không cho inbound trực tiếp từ ngoài

⚠️ Có public IP không đồng nghĩa mở toàn bộ port — Security Group vẫn là lớp kiểm soát inbound access chính.

Đổi Public IP

Trước khi đổi IP, kiểm tra bản ghi DNS, allowlist bên ngoài, cấu hình ứng dụng, hệ thống monitoring, chứng chỉ TLS và user nào đang truy cập trực tiếp bằng IP.

Quy trình: mở trang chi tiết instance → xem IP hiện tại → mở action network/IP → chọn auto-allocate hoặc reserved IP → xác nhận → cập nhật lại DNS/hệ thống liên quan → xác minh SSH/HTTP/HTTPS hoạt động lại với IP mới.


8. Security Groups — Firewall Layer 4

Security Groups là bộ quy tắc Firewall kiểm soát traffic vào/ra máy chủ. Mặc định: Inbound DROP ALL (chặn tất cả kết nối vào) và Outbound ALLOW ALL (cho phép tất cả ra).

Inbound Mặc định: DROP ALL + TCP 22, 80, 443 🚫→✅ Outbound Mặc định: ALLOW ALL ✅ Instance 🖥️

Ví dụ group allow-web-traffic mở 3 cổng inbound:

Mỗi group hỗ trợ tối đa 50 rule inbound + 50 rule outbound. Có thể gắn nhiều Security Group vào một Instance.

Workload Port Nguồn khuyến nghị
SSH 22 IP văn phòng, VPN, hoặc jump host
RDP 3389 Chỉ IP tin cậy
HTTP 80 Internet nếu là site công khai
HTTPS 443 Internet nếu là site công khai
Database 5432/3306… Chỉ app instance hoặc private subnet

⚠️ Tránh: mở SSH/RDP từ 0.0.0.0/0, mở port database ra internet, dùng dải port quá rộng, hoặc để lại rule tạm sau khi debug xong.


9. Tài khoản, team & chi phí (Usage)

9.1 Bảo mật tài khoản

9.2 Mời thành viên team

Trước khi mời: xác nhận người này thực sự cần quyền truy cập, email chính xác, và role phù hợp công việc họ làm.

Mời: vào khu vực account/team → bấm Invite/Add member → nhập email → chọn role → gửi lời mời.

Chọn access level theo nguyên tắc least privilege: Developer thường cần quyền dev/test; Operator cần quyền vận hành production; người phụ trách billing cần quyền xem chi phí; quyền Owner/Admin chỉ nên giao cho người thực sự tin cậy.

Sau khi mời, hướng dẫn thành viên mới đặt mật khẩu mạnh và tham khảo hướng dẫn Tạo instance đầu tiên cùng Security Groups.

Khi thành viên rời nhóm hoặc không còn cần quyền, gỡ truy cập ngay — luôn đảm bảo còn ít nhất 1 Owner/Admin trước khi gỡ quyền của một Owner.

9.3 Usage — Theo dõi chi phí thực tế

Menu Usage là nơi xem chi phí tiêu thụ theo thời gian thực với 2 tab: Cost Explorer (biểu đồ chi phí phân theo ngày/tuần/tháng — breakdown theo loại tài nguyên như Instance Compute, Volume, Public IP) và Quota (giới hạn tài nguyên tối đa của tài khoản).

Cost Explorer — chi phí theo tuầnT2T3T4 T5T6T7CN
Tài nguyên Yếu tố ảnh hưởng chi phí
vCPU Số lượng vCPU × thời gian chạy
RAM Số GB RAM × thời gian chạy
Public IP Có cấp phát public IP hay không
OS/data volume Kích thước và storage tier
Snapshot Kích thước snapshot và thời gian lưu giữ

Ước tính chi phí hàng tháng thường tính theo công thức giá theo giờ × 720 giờ; billing thực tế được tính theo tỷ lệ giờ chạy thực (prorated).

Lưu ý: Chi phí hiển thị chưa bao gồm VAT — VAT sẽ xuất hiện trên hoá đơn hàng tháng.

💡 Cách giảm chi phí không cần thiết


10. Xử lý sự cố thường gặp

Không kết nối được vào instance

  1. Xác nhận instance đang chạy — nếu đang Stopped, hãy Start; nếu bị kẹt, xem phần “Instance không khởi động được” bên dưới.
  2. Xác nhận địa chỉ IP — dùng public IP nếu truy cập từ internet, private IP chỉ khi mạng nội bộ có thể tới được.
  3. Kiểm tra Security Group — SSH cần mở TCP 22 từ đúng nguồn, RDP cần mở TCP 3389 chỉ từ IP tin cậy.
  4. Kiểm tra guest OS — mở Web console, chạy ip addr, ip route, systemctl status ssh.
  5. Kiểm tra credential — nếu kết nối được nhưng login fail, xác minh lại username/password/SSH key và quyền file key; nếu cần, reset password.

Instance không khởi động được


11. Câu hỏi thường gặp (FAQ)

Nên bắt đầu từ hướng dẫn nào?

Bắt đầu với phần “Tạo Cloud Server mới” ở mục 2 để có instance đầu tiên chạy được nhanh nhất.

Instance và Volume khác nhau thế nào?

Instance là máy chủ ảo. Volume là ổ đĩa lưu trữ bền vững. OS volume dùng để khởi động instance; data volume tách riêng lưu dữ liệu ứng dụng.

Nên chọn storage class nào?

Dùng Standard cho workload thông thường, Enterprise cho database và ứng dụng ghi nhiều, capacity/archive cho dữ liệu lạnh ít truy cập.

Vì sao không tạo được instance?

Nguyên nhân thường gặp: tên không hợp lệ, thiếu image/template, chưa có storage class, thiếu security group, mật khẩu chưa đạt yêu cầu, hoặc cấu hình vượt quota tài khoản.

Có nên lưu dữ liệu ứng dụng ngay trên OS disk?

Với production, nên dùng data volume riêng — giúp snapshot, khôi phục, di chuyển và thay thế máy chủ dễ dàng hơn nhiều so với gộp chung OS disk.

Làm sao kiểm soát chi phí hàng tháng?

Theo dõi đều đặn vCPU, RAM, public IP, dung lượng và tier storage, cùng số lượng snapshot đang lưu — tất cả đều hiển thị chi tiết tại mục Usage.


💡 Mẹo sử dụng hiệu quả

Cần hỗ trợ?

Liên hệ đội kỹ thuật Next Step 24/7: (+84) 933 810 688 hoặc email [email protected]

AI không còn là thứ công nghệ xa xỉ dành cho các tập đoàn lớn. Qua Agents Week 2026, Cloudflare đã chứng minh rằng AI Agent — những hệ thống có khả năng tự nhận thức, lập kế hoạch và thực thi nhiệm vụ phức tạp — đang trở thành hạ tầng thiết yếu cho mọi doanh nghiệp.


🧠 AI Agent là gì và tại sao quan trọng?

Khác với chatbot truyền thống chỉ phản hồi theo kịch bản, AI Agent chủ động sử dụng công cụ (API, phần mềm) để hoàn thành mục tiêu mà không cần con người giám sát từng bước. Chúng có thể duyệt web, viết và chạy code, quản lý dữ liệu — tất cả tự động.


🔑 22 tính năng nổi bật từ Agents Week

1. Agent Cloud — Bộ nhớ bền vững cho AI

Durable Objects cung cấp bộ nhớ trạng thái riêng cho từng Agent, đảm bảo AI ghi nhớ ngữ cảnh dù hệ thống bị gián đoạn. Sandboxes cho phép chạy code an toàn trong môi trường cô lập hoàn toàn.

2. Cloudflare Mesh — Mạng riêng tư Zero Trust cho Agent

Thay vì để Agent giao tiếp qua Internet công cộng đầy rủi ro, Mesh tạo mạng overlay riêng mã hóa bằng WireGuard — mọi node đều phải xác thực, không có ngoại lệ.

3. Shadow AI Detection với Wiz

Cloudflare tích hợp Wiz Security Graph để phát hiện các mô hình AI đang chạy “lén” trong hạ tầng doanh nghiệp — phân tích luồng dữ liệu để đảm bảo không có thông tin nhạy cảm bị rò rỉ đến AI chưa được cấp phép.

4. Project Think — Kiến trúc “Reasoning Loop” cho AI

Không đơn thuần là thư viện, Project Think là framework giúp AI tự đặt câu hỏi kiểm chứng kết quả của chính mình theo vòng lặp: Suy nghĩ → Hành động → Quan sát → Điều chỉnh — biến AI từ máy thực thi thành cộng tác viên thực thụ.

5. Agent Lee — SRE ảo vận hành 24/7

Agent Lee đọc hiểu toàn bộ ngăn xếp công nghệ của doanh nghiệp, tự sửa lỗi website trong môi trường sandbox trước khi áp dụng thực tế — đóng vai trò kỹ sư vận hành hệ thống không ngủ.

6. Browser Run — AI tự lướt web

Headless Browser với Live View và Session Recording cho phép quan sát trực tiếp hành động của AI trên trình duyệt — kiểm tra Agent đang làm đúng không và phát hiện tác tác phẩm không mong muốn.

7. Voice SDK — Giao tiếp giọng nói thời gian thực

WebSockets hỗ trợ STT/TTS liên tục, Agent có thể ngắt lời hoặc phản hồi ngay khi người dùng chưa nói xong — nền tảng cho tổng đài AI thực sự tự nhiên.

8. Registrar API — Tự động hóa đăng ký tên miền

Agent giờ đây có thể kiểm tra và mua tên miền theo lệnh code — tự động hóa hoàn toàn việc triển khai dự án mới từ đầu đến cuối.

9. Artifacts — Kho lưu trữ code tương thích Git

Khi Agent viết code, cần nơi lưu trữ có thể audit. Artifacts tương thích hoàn toàn với Git, cho phép tạo hàng triệu repository — con người vẫn kiểm soát được sản phẩm AI tạo ra.

10. AI Search — Tìm kiếm lai (Hybrid Search)

Kết hợp Vector Search (ngữ nghĩa) và BM25 (từ khóa), AI Search tự động hóa toàn bộ pipeline từ xử lý dữ liệu đến lập chỉ mục — Agent tìm được thông tin chính xác mà không cần quản lý hạ tầng phức tạp.

11. Email Service & Voice SDK mở rộng giao tiếp

Agent không còn bị giới hạn trong chat. Email Service (Public Beta) cho phép Agent nhận và gửi email như nhân viên thực thụ — kết hợp với Voice SDK tạo ra kênh giao tiếp đa chiều.

12. AI Code Review — “Senior Developer” ảo

Không chỉ kiểm tra cú pháp, AI Code Review hiểu ngữ cảnh toàn bộ dự án, phát hiện lỗ hổng bảo mật và đề xuất tối ưu hóa — nhận xét ngay trên Pull Request như một thành viên team.

13. Agent Readiness — Framework 3 trụ cột

Doanh nghiệp cần 3 yếu tố: Quan sát (biết Agent đang làm gì), Kiểm soát truy cập (giới hạn phạm vi hành động), và Hạ tầng dữ liệu (thông tin chính xác). AI Gateway ghi log và kiểm soát chi phí gọi AI.

14. AI Redirects — Xử lý 404 bằng trí tuệ nhân tạo

Khi cấu trúc website thay đổi, AI Redirects phân tích ý định người dùng từ URL cũ và tự động chuyển hướng đến trang phù hợp nhất — không cần thiết lập redirect thủ công.

15. Flagship — Quản lý feature flags cho AI

Dựa trên OpenFeature chuẩn mở, Flagship chạy trực tiếp trên Edge với độ trễ gần bằng 0. Cho phép thử nghiệm tính năng mới trên 1%, 5% hoặc 50% người dùng trước khi phát hành toàn bộ.

16. Unweight — Nén tensor giảm chi phí AI

Kỹ thuật nén mô hình AI mới giữ nguyên độ chính xác nhưng giảm dung lượng đáng kể — tối ưu cách dữ liệu lưu trữ và truy xuất trong GPU, Agent phản hồi nhanh hơn với chi phí thấp hơn.

17. Cloudflare Workers + PlanetScale Postgres

Hợp tác chiến lược cho phép chạy Postgres trực tiếp trên Workers — Agent truy vấn cơ sở dữ liệu với độ trễ cực thấp trên phạm vi toàn cầu thông qua giao thức siêu nhanh của PlanetScale.

18. Hiệu năng mạng tối ưu cho Agent

Đặt Agent tại các điểm truy cập mạng vùng biên giảm đáng kể “Time to First Token” — thời gian phản hồi đầu tiên của AI. Agent gần người dùng hơn, cảm giác “tức thì” hơn trong tương tác thực tế.

19. Managed OAuth cho Cloudflare Access

Agent không thể đăng nhập bằng mật khẩu như con người. Managed OAuth thiết lập luồng xác thực tự động, quản lý vòng đời token và đảm bảo mọi hành động của Agent đều được định danh rõ ràng.

20. Bảo mật nâng cao cho Developer

Công cụ tự động quét và phát hiện “bí mật” (API key, mật khẩu) bị quên trong mã nguồn — tích hợp sâu vào CI/CD, ngăn chặn triển khai code không an toàn trước khi lên production.

21. Enterprise MCP — Cầu nối Agent với dữ liệu nội bộ

Model Context Protocol chuẩn mở giúp Agent kết nối an toàn với Google Drive, Slack, GitHub nội bộ — đóng vai trò “phiên dịch viên” đảm bảo Agent chỉ truy cập đúng phạm vi được phép.

22. Cloudflare CLI & Local Explorer

Giao diện quản trị chạy trên localhost (Local Explorer) cho phép xem, chỉnh sửa D1 Database và KV Storage offline. CLI nâng cấp hỗ trợ khởi tạo Sandbox, quản lý Durable Objects và theo dõi luồng suy nghĩ của Agent theo thời gian thực.

Bonus: Workflows v2 — Điều phối hàng ngàn Agent song song

Kiến trúc lại toàn bộ Control Plane hỗ trợ High Concurrency — hàng ngàn Agent chạy đồng thời mà không mất dữ liệu. Tăng giới hạn concurrency và tốc độ xử lý, phù hợp workload quy mô doanh nghiệp lớn.


🎯 Ý nghĩa với doanh nghiệp Việt Nam

Agents Week 2026 không phải là showcase công nghệ xa vời. Đây là tín hiệu rõ ràng rằng hạ tầng để triển khai AI Agent trong doanh nghiệp — bảo mật, quan sát được, kiểm soát được — đã sẵn sàng.

Next Step, với vai trò đối tác Cloudflare tại Việt Nam, sẵn sàng tư vấn và triển khai các giải pháp từ Agents Week phù hợp với đặc thù và quy mô của từng doanh nghiệp.

Khi chuyển sang mô hình Cloudflare Full DNS, Cloudflare không chỉ đứng trước website của bạn để lọc traffic — mà trở thành nhà cung cấp DNS chính, quản lý toàn bộ bản ghi domain. Đây là bước thiết lập nền tảng quan trọng trước khi triển khai các tính năng bảo mật và tối ưu hiệu năng khác.


🌐 Cloudflare hoạt động như thế nào?

Hình dung Cloudflare đứng giữa người dùng và server gốc (origin server) của bạn — đóng vai trò một reverse proxy thông minh. Mọi request từ người dùng sẽ “chạm” Cloudflare trước, được xử lý, rồi mới chuyển tiếp đến server thật.

👤 👤 👤 Cloudflare ☁️ Origin Server Origin Server Cloudflare đứng giữa người dùng và server gốc

Với vị trí trung gian này, Cloudflare có thể đảm nhiệm đồng thời:


⚡ Vì sao nên dùng Cloudflare DNS?

🚀 Hiệu suất hàng đầu

Tốc độ tra cứu DNS trung bình chỉ khoảng 11ms — website của bạn phản hồi gần như ngay lập tức.

🌍 Độ tin cậy vượt trội

Mạng lưới phân giải DNS có mặt tại hơn 330 thành phố trên toàn cầu, dự phòng đa tầng.

🛡️ Chống tấn công DNS

Tích hợp sẵn DNSSEC và bảo vệ DDoS — chỉ cần một cú click để kích hoạt.

🎛️ Dễ quản lý

Toàn bộ bản ghi DNS quản lý qua giao diện trực quan hoặc API, import/export dễ dàng.


📋 Quy trình cấu hình Full DNS — 5 bước

Bước 1 — Chuẩn bị domain

Trước khi bắt đầu, đảm bảo bạn đã sở hữu một domain hợp lệ (ví dụ: your-domain.com). Nếu chưa có, có thể đăng ký trực tiếp qua Cloudflare Registrar.

Lưu ý quan trọng: tắt DNSSEC tại nhà cung cấp domain hiện tại trước khi chuyển nameserver — nếu không tắt, việc chuyển đổi có thể gây gián đoạn truy cập tạm thời.

Bước 2 — Thêm website vào Cloudflare

Đăng nhập dash.cloudflare.com → bấm Add site → nhập tên domain của bạn → Continue.

Cloudflare sẽ yêu cầu chọn gói dịch vụ (Free, Pro, Business hoặc Enterprise) phù hợp với quy mô website.

Bước 3 — Quét và kiểm tra bản ghi DNS

Cloudflare tự động quét các bản ghi DNS hiện có (A, CNAME, MX, TXT…) và import vào DNS Zone. Hãy kiểm tra kỹ:

  • Proxy status: Bản ghi nào nên “Proxied” (đi qua Cloudflare, hưởng CDN/bảo mật) và bản ghi nào chỉ cần “DNS only”
  • TTL: Thời gian cache bản ghi — ảnh hưởng tốc độ cập nhật khi có thay đổi
  • Nếu thiếu bản ghi nào, thêm thủ công bằng nút Add record

Bước 4 — Cập nhật Nameservers

Đây là bước quan trọng nhất — Cloudflare sẽ cấp cho bạn 2 nameserver riêng (ví dụ: xxx.ns.cloudflare.com). Bạn cần:

  1. Đăng nhập vào nơi đăng ký domain hiện tại (registrar)
  2. Xóa nameserver cũ đang sử dụng
  3. Thay bằng 2 nameserver Cloudflare đã được cấp
  4. Lưu lại thay đổi

⚠️ Quá trình cập nhật nameserver có thể mất tới 24 giờ để DNS lan truyền toàn cầu. Cloudflare sẽ gửi email xác nhận khi domain hoạt động.

Bước 5 — Kích hoạt lại DNSSEC

Sau khi nameserver hoạt động ổn định, kích hoạt lại DNSSEC để bảo vệ domain khỏi tấn công giả mạo:

  • Vào DNS → Settings trên Cloudflare → bấm Enable DNSSEC
  • Cloudflare hiển thị bản ghi DS Record (gồm Digest, Algorithm, Key Tag…)
  • Copy thông tin này, quay lại registrar → mục DNSSEC → thêm DS Record tương ứng

Sau bước này, toàn bộ cấu hình Full DNS trên Cloudflare đã hoàn tất.


💡 Lưu ý từ Next Step

Cần hỗ trợ cấu hình Cloudflare?

Next Step là đối tác triển khai Cloudflare tại Việt Nam — liên hệ (+84) 933 810 688 hoặc [email protected] để được tư vấn cấu hình DNS, bảo mật và tối ưu hiệu năng phù hợp với hệ thống của bạn.

Rất nhiều doanh nghiệp đang sử dụng dịch vụ DNS uỷ quyền (ví dụ AWS Route 53, hoặc DNS của nhà cung cấp hosting) cho hàng chục bản ghi MX, TXT, các subdomain nội bộ… và không muốn xáo trộn toàn bộ hệ thống chỉ để bật Cloudflare cho một subdomain duy nhất. Đây chính là lúc Partial (CNAME) Setup phát huy tác dụng.


🔍 Partial Setup là gì?

Thay vì đổi toàn bộ 2 nameserver của domain sang Cloudflare (Full Setup), Partial Setup chỉ yêu cầu bạn thêm một bản ghi CNAME tại nhà cung cấp DNS hiện tại, trỏ subdomain cần dùng đến một địa chỉ đặc biệt dạng {ten-mien-cua-ban}.cdn.cloudflare.net. Nhà cung cấp DNS gốc (authoritative DNS) vẫn giữ quyền quản lý toàn bộ domain — Cloudflare chỉ “tiếp nhận” riêng phần traffic của subdomain đó.

👤 Người dùng truy cập foo.example.com Authoritative DNS CNAME record: foo.example.com → Cloudflare A record: 203.0.113.1 ….cdn.cloudflare.net Domain vẫn được quản lý tại DNS gốc — Cloudflare chỉ phục vụ subdomain đã cấu hình

🤔 Khi nào nên chọn Partial Setup?

✅ Phù hợp khi

  • Chỉ muốn bật CDN/bảo mật cho 1-2 subdomain (ví dụ: www, shop, app)
  • Hệ thống email (MX), VPN hoặc các dịch vụ khác đang cấu hình phức tạp tại DNS hiện tại và không muốn di chuyển
  • Cần giữ nguyên nhà cung cấp DNS vì lý do nội bộ, hợp đồng, hoặc quy trình vận hành

⚠️ Cần lưu ý

  • Chỉ áp dụng được với gói Business hoặc Enterprise của Cloudflare
  • Không tận dụng được tốc độ và khả năng chống chịu của hệ thống Anycast DNS toàn cầu của Cloudflare cho toàn domain
  • Cần thao tác đồng thời trên 2 hệ thống: Cloudflare dashboard và DNS uỷ quyền hiện tại

📋 Quy trình cấu hình Partial Setup — 4 bước

Bước 1 — Thêm domain vào Cloudflare và chọn kiểu Partial

Đăng nhập dash.cloudflare.com → Add site → nhập tên domain. Khi chọn gói dịch vụ, chỉ Business hoặc Enterprise mới hỗ trợ cấu hình CNAME setup.

Sau khi thêm site, vào Overview, kéo xuống mục Advanced Actions và chọn Convert to CNAME DNS Setup. Một hộp thoại xác nhận sẽ hiện ra — bấm Convert để tiếp tục.

Overview Page Avoid DNS resolution issues (DNSSEC) Update your nameservers Convert to CNAME DNS Setup Convert to CNAME Setup Cloudflare nameservers sẽ không còn authoritative Cancel Convert

Bước 2 — Xác minh quyền sở hữu domain bằng TXT record

Sau khi convert, Cloudflare hiển thị một Verification TXT Record (dạng cloudflare-verify.your-domain.com với nội dung là một chuỗi mã ngẫu nhiên). Hãy lưu lại thông tin này — bạn luôn có thể xem lại tại DNS → Records → Verification TXT Record nếu cần.

Truy cập giao diện quản trị DNS của nhà cung cấp DNS uỷ quyền hiện tại (ví dụ AWS Route 53), tạo một bản ghi mới: Type = TXT, Name = cloudflare-verify, Value = chuỗi mã được cấp.

Tại Route 53 — Create Record Record name cloudflare-verifyRecord type TXT Value 561598982-803506423 Create record

Bước 3 — Đồng bộ DNS record sang Cloudflare và kích hoạt

Quan trọng: các bản ghi tại Cloudflare cho subdomain dùng Partial Setup phải khớp với bản ghi đang có tại DNS uỷ quyền. Trên Cloudflare → DNS → Records → Add record, tạo lại các record (A, AAAA, CNAME…) tương ứng và bật Proxy status = Proxied (icon mây màu cam) cho những record muốn đi qua Cloudflare.

Một số trường cần chú ý khi tạo record:

  • Proxy status: Bật “Proxied” để traffic được CDN, WAF, Argo, DDoS protection của Cloudflare bảo vệ; chọn “DNS only” nếu chỉ muốn Cloudflare phân giải mà không proxy
  • TTL: Thời gian cache của bản ghi, ảnh hưởng tốc độ cập nhật khi thay đổi
  • Comment/Tag: Ghi chú để dễ quản lý sau này

Sau khi tạo record, quay lại nhà cung cấp DNS uỷ quyền → xác nhận lại bản ghi TXT đã propagate xong → trên Cloudflare bấm Re-activate và chờ vài phút để hệ thống xác thực.

Bước 4 — Trỏ CNAME tại DNS uỷ quyền về Cloudflare

Đây là bước cuối, hoàn thiện đường dẫn traffic. Tại DNS uỷ quyền:

  1. Xoá toàn bộ record cũ (A, AAAA hoặc CNAME) của subdomain muốn proxy qua Cloudflare
  2. Trên Cloudflare dashboard → DNS → Records, kéo xuống mục Partial Zone Suffix → bấm Copy để lấy chuỗi dạng {ten-mien}.cdn.cloudflare.net
  3. Tại DNS uỷ quyền, tạo bản ghi CNAME mới: Name = subdomain (ví dụ www), Value = chuỗi vừa copy
Route 53 — Create CNAME record Record name www Record type CNAME Value www.example.com.cdn.cloudflare.net

Ví dụ minh hoạ: Bản ghi cuối cùng tại DNS uỷ quyền sẽ có dạng www.example.com CNAME www.example.com.cdn.cloudflare.net

Lặp lại cách làm tương tự cho từng subdomain khác mà bạn muốn proxy qua Cloudflare.


💡 Lưu ý từ Next Step

Cần hỗ trợ cấu hình Partial Setup?

Đội ngũ Next Step sẵn sàng hỗ trợ cấu hình Cloudflare Partial (CNAME) Setup cho hệ thống của bạn — liên hệ (+84) 933 810 688 hoặc [email protected].

Cloudflare SSL/TLS đóng vai trò mã hoá toàn bộ dữ liệu truyền giữa người dùng và website của bạn. Nhưng điều ít người để ý là Cloudflare thực chất quản lý hai kết nối riêng biệt — và việc chọn sai chế độ mã hoá có thể khiến website của bạn “có khoá xanh” nhưng vẫn truyền dữ liệu dạng văn bản thuần (plain text) ở phía sau.


🔐 Hai kết nối mà Cloudflare đang quản lý

Khi một website đặt sau Cloudflare, có 2 đoạn kết nối hoàn toàn tách biệt: kết nối từ người dùng đến Cloudflare, và kết nối từ Cloudflare đến server gốc (Origin server) của bạn. Chế độ mã hoá SSL/TLS quyết định mỗi đoạn này dùng HTTP hay HTTPS.

Browser 🌐 Cloudflare ☁️ Origin Server 🖥️ Kết nối 1 Kết nối 2Chế độ mã hoá quyết định mỗi kết nối là HTTP hay HTTPS

⚙️ 5 chế độ mã hoá của Cloudflare

🔴 Off (no encryption) — Không khuyến nghị

Mọi yêu cầu HTTPS đều bị chuyển hướng về HTTP thuần. Toàn bộ dữ liệu — bao gồm mật khẩu, thông tin thanh toán — truyền đi không được mã hoá. Chế độ này gần như không nên xuất hiện trên môi trường production.

🟠 Flexible — Bảo mật một phần

Kết nối 1 (Browser ↔ Cloudflare) dùng HTTPS, nhưng kết nối 2 (Cloudflare ↔ Origin) luôn là HTTP — dù người dùng truy cập bằng http hay https. Vì vậy origin server không cần chứng chỉ SSL. Tuy nhiên đoạn đường giữa Cloudflare và server gốc vẫn là văn bản thuần, dễ bị nghe lén nếu hạ tầng trung gian không an toàn.

🔵 Full — Mã hoá hai chiều, không kiểm tra chứng chỉ

Cả 2 kết nối đều dùng HTTPS. Cloudflare kết nối tới origin theo đúng scheme mà client yêu cầu (http hoặc https), và chấp nhận cả chứng chỉ self-signed ở phía origin — nghĩa là không xác thực CA của chứng chỉ gốc.

🟢 Full (strict) — Khuyến nghị cho hầu hết website

Giống Full, nhưng Cloudflare bắt buộc chứng chỉ tại origin phải hợp lệ — được cấp bởi CA công khai đáng tin cậy hoặc Cloudflare Origin CA, còn hạn sử dụng, và Common Name/SAN khớp với hostname. Đây là chế độ Cloudflare khuyến nghị mặc định.

🟢 Strict (SSL-Only Origin Pull) — Cao nhất, dành cho Enterprise

Mọi kết nối đến origin luôn bắt buộc mã hoá TLS. Có thể bổ sung Authenticated Origin Pulls — yêu cầu mọi request đến origin phải được xác thực trước khi nhận phản hồi. Tính năng này chỉ khả dụng cho gói Enterprise.

💡 Khuyến nghị: Nếu origin server của bạn đã có chứng chỉ SSL hợp lệ (hoặc dùng Cloudflare Origin CA), hãy chọn Full (strict) để vừa mã hoá toàn trình, vừa ngăn chặn các kết nối giả mạo đến server gốc.


📋 Các bước cấu hình SSL/TLS trên Cloudflare

Bước 1 — Kiểm tra điều kiện trước khi cấu hình

Trước khi đổi chế độ mã hoá, hãy chắc chắn 2 điều sau:

  • Vào DNS → Records, kiểm tra các bản ghi A/AAAA/CNAME cần bảo vệ đang ở trạng thái Proxied (icon mây màu cam)
  • Vào SSL/TLS → Edge Certificates, kiểm tra cột Status của chứng chỉ đang là Active

Nếu muốn chọn Full hoặc Full (strict), origin server cần có chứng chỉ SSL hợp lệ — được cấp bởi CA công khai hoặc Cloudflare Origin CA, còn hạn, và Common Name/SAN khớp với hostname.

Bước 2 — Chọn chế độ mã hoá

Đăng nhập Cloudflare dashboard → chọn domain → SSL/TLS → Overview → chọn chế độ mã hoá Full (strict).

Dashboard sẽ hiển thị trực quan sơ đồ Browser → Cloudflare → Origin Server kèm biểu tượng khoá ở từng đoạn, giúp bạn xác nhận đúng chế độ vừa chọn.

Browser 🔒 Cloudflare 🔒 Origin Server Your SSL/TLS encryption mode is Full (strict)

Bước 3 — Bật Always Use HTTPS

Vào SSL/TLS → Edge Certificates, tìm mục Always Use HTTPS và chuyển nút gạt sang bật. Cài đặt này tự động redirect mọi request có scheme http sang https cho toàn bộ zone — đảm bảo người dùng không bao giờ vô tình truy cập bản HTTP không mã hoá.

Always Use HTTPS Redirect all requests with scheme “http” to “https” for the zone

📜 3 loại Edge Certificate — Chọn loại nào cho phù hợp?

1️⃣ Universal SSL

Chứng chỉ miễn phí, Cloudflare tự cấp và tự gia hạn cho mọi domain kích hoạt. Loại Domain Validated (DV), bao phủ cả zone apex và các subdomain cấp một.

  • Full DNS Setup: tự động cấp trong 15 phút – 24 giờ
  • Partial DNS Setup: chỉ cấp khi record được Proxied, hoặc xác thực ngay nếu thêm DCV record vào DNS gốc

2️⃣ Custom Certificate

Chỉ dành cho gói Business và Enterprise. Áp dụng khi doanh nghiệp muốn dùng chứng chỉ SSL riêng đã mua từ một CA khác (thay vì chứng chỉ do Cloudflare cấp).

Lưu ý: Cloudflare không tự gia hạn — bạn phải tự theo dõi và thay mới trước khi hết hạn để tránh downtime.

3️⃣ Advanced Certificate

Lựa chọn linh hoạt hơn Universal SSL nhưng vẫn được Cloudflare cấp và gia hạn tự động. Yêu cầu mua thêm gói Advanced Certificate Manager Add-on.

Phù hợp khi cần tuỳ chỉnh nhiều hostname, validation method hoặc certificate authority cụ thể.


🔧 Hướng dẫn nhanh: Tải lên Custom Certificate

Vào Cloudflare dashboard → chọn Account → chọn domain → SSL/TLS → Edge Certificates → Upload Custom SSL Certificate. Dán nội dung SSL Certificate và Private Key vào 2 ô tương ứng (định dạng PEM, bắt đầu bằng -----BEGIN CERTIFICATE-----).

Upload custom SSL certificate and keySSL Certificate —–BEGIN CERTIFICATE—– —–END CERTIFICATE—– Bundle Method Compatible (recommended) Private key —–BEGIN PRIVATE KEY—– ●●●●●●●●●● —–END PRIVATE KEY—–

Ở Bundle Method, chọn một trong 3 tuỳ chọn:

  • Compatible (recommended): tương thích với hầu hết trình duyệt và thiết bị, bao gồm cả thiết bị cũ
  • Modern: chỉ tương thích các thiết bị/trình duyệt hiện đại, bảo mật cao hơn
  • User Defined: tự định nghĩa chuỗi chứng chỉ trung gian theo yêu cầu riêng

Nếu gặp lỗi liên quan đến key không khớp với chứng chỉ, hãy liên hệ CA đã cấp chứng chỉ để kiểm tra lại cặp key/certificate.

🔄 Cập nhật Custom Certificate đã tồn tại

Vào SSL/TLS → Edge Certificates, tìm chứng chỉ cần thay → bấm icon cờ lê → chọn Replace SSL certificate and key → thực hiện lại các bước upload như trên.


⚠️ Khi nào nên tắt Universal SSL?

Chỉ tắt Universal SSL khi doanh nghiệp đã có Custom Certificate được tải lên thành công, hoặc đã mua Advanced Certificate Manager. Nếu tắt mà không có chứng chỉ thay thế hợp lệ, khách truy cập sẽ không thể vào website qua HTTPS.

Thao tác: SSL/TLS → Edge Certificates → Disable Universal SSL → đọc kỹ cảnh báo tại mục Acknowledgement (ảnh hưởng đến HSTS, Always Use HTTPS, Opportunistic Encryption, Page Rules redirect HTTPS) → tick I understand → Confirm.


🛠️ Đặt mua và tạo Advanced Certificate

Advanced Certificate phù hợp khi bạn cần nhiều quyền tuỳ chỉnh hơn Universal SSL nhưng vẫn muốn Cloudflare tự động cấp và gia hạn. Trước tiên cần mua thêm tiện ích Advanced Certificate Manager Add-on, sau đó vào SSL/TLS → Edge Certificates → Order Advanced Certificate.

Nếu thông tin thanh toán của tài khoản chưa có sẵn trên hệ thống Cloudflare, bạn sẽ cần nhập bổ sung trước khi tiếp tục.

Create an Advanced Certificate Certificate Authority Google Trust Services Certificate Hostnames sonic.com.vn, *.sonic.com.vn Certificate validation method TXT validation (chỉ phương thức hỗ trợ wildcard) 3 months — tự gia hạn 33 ngày trước hết hạn

Bạn cần điền 4 thông tin: Certificate Authority (CA cấp chứng chỉ), Certificate Hostnames (tối đa 50 hostname/wildcard), Validation method (chỉ TXT validation hỗ trợ wildcard và CA đã chọn) và Certificate Validity Period (3 tháng hoặc 1 tháng, tự gia hạn trước khi hết hạn). Sau khi điền đủ, bấm Save để hoàn tất.


🗑️ Xoá một chứng thư số khỏi Cloudflare

Vào Cloudflare dashboard → chọn Account → chọn domain → SSL/TLS → Edge Certificates. Tại danh sách chứng thư hiện có (hiển thị Hosts, Type, Status, Expires on), chọn chứng thư cần xoá → bấm Delete Certificate. Hành động này không thể hoàn tác, nên cần chắc chắn không còn dịch vụ nào phụ thuộc vào chứng thư đó trước khi xoá.


🏗️ Origin Certificate Authority (CA) — Mã hoá chặng Cloudflare ↔ Origin

Nếu các chế độ Full (strict) hoặc Strict yêu cầu origin phải có chứng chỉ hợp lệ, thì Origin CA chính là cách nhanh nhất để có chứng chỉ đó miễn phí — do Cloudflare tự ký, chỉ dùng riêng cho việc mã hoá giữa Cloudflare và server gốc, giúp giảm tải băng thông xử lý mã hoá tại origin.

Bước 1 — Tạo Origin Certificate

Đăng nhập Cloudflare dashboard → chọn domain → SSL/TLS → Origin Server → Create Certificate.

Chọn 1 trong 2 cách tạo private key/CSR: để Cloudflare tự sinh (chọn loại key RSA hoặc ECC), hoặc dán CSR tự tạo nếu bạn đã có sẵn.

Origin Certificate Installation Generate private key and CSR with Cloudflare RSA (2048) Use my private key and CSR

Bước 2 — Khai báo hostname và thời hạn

Liệt kê các hostname (kể cả wildcard) mà chứng chỉ cần bảo vệ — mặc định đã bao gồm zone apex và wildcard *.example.com. Thêm thủ công các hostname con không nằm trong wildcard nếu cần.

Chọn thời hạn hiệu lực (mặc định 15 năm, có thể giảm xuống 7 ngày, 30 ngày, 90 ngày, 1-3 năm…) rồi bấm Create.

Bước 3 — Chọn Key Format và lưu lại Certificate/Private Key

Chọn định dạng key phù hợp với hệ điều hành máy chủ:

  • PEM: dùng cho máy chủ chạy OpenSSL như Apache, Nginx (cũng tương thích file DER nhị phân)
  • PKCS#7 (.p7b): dùng cho Windows và Apache Tomcat
  • DER: định dạng nhị phân thay thế cho PEM

Sao chép nội dung Origin Certificate và Private Key ra 2 file riêng biệt và lưu lại ngay — vì lý do an toàn, Cloudflare sẽ không lưu trữ và không hiển thị lại Private Key sau khi bạn thoát khỏi màn hình này.

Bấm OK để hoàn tất tạo chứng chỉ.


🖥️ Cài đặt Origin CA Certificate trên Windows IIS

Sau khi có file chứng chỉ .cer, tiến hành cài lên Windows Server (ví dụ IIS 10) theo các bước sau:

Mở Internet Information Services (IIS) Manager từ Windows Start menu → tại cây Connections, click vào tên server → ở trang Homepage, mục IIS, double-click Server Certificates → tại khung Actions bên phải, chọn Complete Certificate Request.

Specify Certificate Authority Response File name containing the response C:\Users\Administrator\Desktop\certs\your_domain.cer … Friendly name yourdomain.com Certificate store: Web Hosting OK

Khai báo lần lượt: File name containing the certification authority’s response (đường dẫn tới file .cer) → Friendly name (tên gợi nhớ cho chứng chỉ) → Select a certificate store chọn Web Hosting → bấm OK.

🔗 Gán chứng chỉ vào website (Assign SSL Certificate)

Tại IIS Manager, mở rộng Sites → chọn website cần bảo mật → ở khung Actions bên phải, mục Edit Site, click Bindings… → trong cửa sổ Site Bindings, bấm Add.

Add Site Binding Type https IP address All Unassigned Port 443 SSL certificate yourdomain.com OK

Trong cửa sổ Add Site Binding, cấu hình: Type = https, IP address chọn IP cụ thể hoặc All Unassigned, Port = 443 (cổng chuẩn cho HTTPS), SSL certificate chọn chứng chỉ vừa cài (ví dụ yourdomain.com) → bấm OK.

Sau bước này, danh sách Site Bindings sẽ hiển thị thêm dòng https — 443 bên cạnh dòng http — 80 có sẵn, nghĩa là website đã được cấu hình chấp nhận kết nối an toàn.


🔄 Cập nhật chế độ mã hoá sau khi cài Origin CA

Sau khi origin server đã được bảo vệ bởi chứng chỉ Origin CA (hoặc chứng chỉ được tin cậy công khai), quay lại Cloudflare dashboard → SSL/TLS và chuyển chế độ mã hoá sang Full (strict) để tận dụng tối đa lớp bảo vệ end-to-end vừa thiết lập.


🚫 Thu hồi một chứng chỉ Origin CA

Nếu thất lạc private key hoặc không còn muốn một chứng chỉ Origin CA nào đó được tin cậy nữa, bạn có thể thu hồi (revoke) nó — nhưng không thể hoàn tác hành động này.

Quan trọng: trước khi thu hồi, hãy chuyển chế độ mã hoá SSL/TLS sang Full hoặc Flexible (toàn zone, hoặc riêng hostname đó qua Page Rule) — để tránh khách truy cập gặp cảnh báo chứng chỉ không an toàn ngay sau khi thu hồi.

Thao tác: vào SSL/TLS → Origin Server, tại mục Origin Certificates, chọn chứng chỉ cần thu hồi → bấm Revoke.


💡 Tổng kết nhanh từ Next Step

Cần hỗ trợ cấu hình SSL/TLS?

Đội ngũ Next Step hỗ trợ cấu hình chế độ mã hoá, chứng chỉ Edge và Origin phù hợp với hạ tầng của bạn — liên hệ (+84) 933 810 688 hoặc [email protected].

Web Application Firewall (WAF) là lớp lọc đứng giữa Internet và ứng dụng web của bạn, kiểm tra từng request trước khi cho phép nó chạm tới server gốc. Với WAF Managed Rules, Cloudflare đóng vai trò “đội ngũ bảo mật thuê ngoài” — liên tục cập nhật các bộ quy tắc chống lại những kiểu tấn công mới nhất, mà bạn không cần tự viết hay duy trì.


🛡️ WAF hoạt động như thế nào?

Cloudflare WAF lọc và giám sát toàn bộ traffic đi vào ứng dụng, dựa trên threat intelligence và machine learning từ lượng dữ liệu khổng lồ mà Cloudflare xử lý mỗi ngày trên toàn cầu. Mục tiêu là đảm bảo chỉ những request hợp lệ mới được phép chạm tới ứng dụng — qua đó tự động chặn các mối đe doạ mới nhất, bao gồm cả lỗ hổng zero-day chưa từng được công bố.

Traffic đến 📥 WAF Managed Rules SQLi · XSS · Zero-day Stolen credentials check 🖥️ Origin Server request độc hại Block / Challenge

📦 WAF Managed Rules bảo vệ trước những gì?

🆕 Zero-day vulnerabilities

Các lỗ hổng chưa được công bố chính thức — managed ruleset được Cloudflare cập nhật định kỳ ngay khi phát hiện kiểu tấn công mới.

🎯 Top-10 attack techniques

Các phương thức tấn công phổ biến nhất theo OWASP, bao gồm SQL injection, Cross-Site Scripting (XSS) và nhiều kỹ thuật khác.

🔑 Stolen/exposed credentials

Phát hiện việc sử dụng thông tin đăng nhập đã bị đánh cắp hoặc lộ ra ngoài, đối chiếu với cơ sở dữ liệu thông tin bị rò rỉ.

📤 Extraction of sensitive data

Ngăn chặn hành vi trích xuất dữ liệu nhạy cảm như thông tin giấy tờ tuỳ thân, thông tin thẻ ngân hàng từ ứng dụng.

Các bộ quy tắc managed ruleset được Cloudflare cập nhật định kỳ — bạn không cần tự theo dõi hay viết lại rule khi có kiểu tấn công mới xuất hiện.


📋 Bước 1 — Triển khai một Managed Ruleset

Đăng nhập Cloudflare dashboard → chọn tài khoản → chọn domain cần cấu hình → vào Security → WAF → Managed rules.

Tại đây, hai ruleset mặc định thường đã có sẵn ở trạng thái Execute: Cloudflare Managed Ruleset và Cloudflare OWASP Core Ruleset. Để triển khai thêm ruleset khác (ví dụ Exposed Credentials Check Ruleset), kéo xuống mục Managed Rulesets và bấm Deploy bên cạnh ruleset mong muốn.

Security → WAF → Managed rules 1. Execute — Cloudflare Managed Ruleset (Global) 2. Execute — Cloudflare OWASP Core Ruleset (Global) Managed Rulesets Cloudflare Exposed Credentials Check Ruleset Deploy

Sau khi bấm Deploy, ruleset mới sẽ xuất hiện trong danh sách với hành động Execute — nghĩa là quy tắc đã được kích hoạt và áp dụng ngay cho toàn bộ traffic của zone.

🔘 Bật/tắt một Managed Ruleset

Tại Security → WAF → Managed rules, mỗi ruleset có cột Enabled riêng — chỉ cần gạt nút toggle bên cạnh ruleset muốn bật hoặc tắt. Đây là cách nhanh nhất để tạm ngưng một ruleset cụ thể mà không cần xoá hẳn cấu hình đã thiết lập.


⚙️ Bước 2 — Cấu hình chi tiết bên trong một Managed Ruleset

Cấu hình một managed ruleset cho phép bạn định nghĩa hành động riêng cho từng quy tắc, tắt một số quy tắc cụ thể, hoặc giới hạn phạm vi áp dụng cho một tập con request bằng biểu thức lọc tuỳ chỉnh.

2.1 — Mở giao diện Configure deployment

Tại Managed rules, bấm vào tên ruleset (ví dụ Cloudflare Managed Ruleset) để mở trang Configure deployment. Trang này hiển thị phạm vi áp dụng (Execution scope — ví dụ “All incoming requests to domain.com”) và 2 lựa chọn cấu hình tổng quát: Ruleset action và Ruleset status, mặc định cả hai đều ở mức Default (giữ hành động gốc do Cloudflare định nghĩa cho từng rule).

Cloudflare Managed Ruleset will execute ↳ All incoming requests to sonic.com.vnRuleset action Default Ruleset status Default

2.2 — Tìm và chỉnh sửa từng quy tắc cụ thể

Dùng ô Search Rules để tìm theo mô tả, Rule ID hoặc lọc theo Tags (ví dụ: sqli, xss, wordpress, code-injection). Với mỗi rule trong kết quả, bạn có thể đổi Action qua dropdown — các lựa chọn thường gồm: Log (chỉ ghi nhận, không chặn), Block, Managed Challenge, JS Challenge, Interactive Challenge — hoặc bật/tắt toggle Status riêng cho rule đó.

Nếu lỡ đổi nhầm, mỗi rule có sẵn liên kết Reset to default để quay lại hành động gốc do Cloudflare định nghĩa.

vBulletin – SQLi – CVE-2020-12720 – beta sqli Log ▾ ✓ Đổi action: Managed Challenge / Block / JS Challenge / Interactive Challenge / Log

2.3 — Custom filter expression (tuỳ chọn)

Nếu muốn các quy tắc trong ruleset chỉ áp dụng cho một tập con request — thay vì toàn bộ traffic — hãy check vào Custom filter expression và khai báo điều kiện lọc. Sau khi cấu hình xong, bấm Save để lưu lại.


🔍 Bước 3 — Duyệt danh sách quy tắc trong một Managed Ruleset (Browse Rules)

Tại trang Configure deployment của một ruleset, kéo xuống mục Rule configuration và bấm Browse rules ở dưới cùng — toàn bộ danh sách rule nằm trong ruleset đó sẽ hiển thị, kèm bộ lọc theo mô tả, Rule ID hoặc tag. Đây là cách hữu ích để khám phá ruleset đang bảo vệ những gì trước khi quyết định tinh chỉnh.


📊 Bước 4 — Cấu hình hàng loạt nhiều quy tắc cùng lúc

Khi cần áp dụng cùng một hành động cho nhiều rule (ví dụ toàn bộ rule liên quan đến WordPress), việc sửa từng dòng sẽ rất mất thời gian. Cloudflare hỗ trợ chọn hàng loạt:

  • Lọc rule theo tag (ví dụ “wordpress”) hoặc từ khoá tìm kiếm
  • Tick checkbox ở từng dòng, hoặc tick checkbox tại header để chọn toàn bộ rule trên trang hiện tại
  • Bấm Select all <TOTAL> rules để chọn toàn bộ rule khớp điều kiện trên tất cả các trang
15 rules selected (of 30 filtered rules) Select all 30 rules Clear selection Set action Set status

Sau khi chọn xong, bấm Set action hoặc Set status để cập nhật đồng loạt cho tất cả rule đã chọn — các tuỳ chọn action gồm Managed Challenge, Block, JS Challenge, Interactive Challenge, Log, Default; status gồm Enabled, Disabled, Default. Bấm Next để xem lại danh sách, sau đó Save để áp dụng.

Lưu ý: nếu bạn lọc rule theo một tag cụ thể, hệ thống có thể hỏi liệu các rule mới được thêm vào tag đó trong tương lai (do Cloudflare cập nhật ruleset) có nên tự động áp dụng cùng cấu hình hay không.


🚧 Bước 5 — Xử lý False Positive

False positive xảy ra khi WAF chặn nhầm một request hợp lệ. Khi gặp tình huống này, Cloudflare gợi ý 3 hướng giải quyết theo thứ tự ưu tiên:

1️⃣ Thêm một Exception (khuyến nghị)

Exception cho phép bỏ qua việc thực thi WAF managed ruleset hoặc một số quy tắc cụ thể của ruleset, chỉ áp dụng cho những request thoả điều kiện nhất định — giải pháp tinh gọn nhất, không ảnh hưởng đến phần còn lại của hệ thống bảo vệ.

2️⃣ Điều chỉnh OWASP Managed Ruleset

Nếu request bị chặn do rule liên quan đến Inbound Anomaly Score Exceeded (mô tả 949110), bạn có thể tinh chỉnh ngưỡng điểm bất thường (anomaly score threshold) theo tài liệu cấu hình OWASP managed ruleset của Cloudflare.

3️⃣ Disable rule/ruleset tương ứng (chỉ khi cần)

Tắt hoàn toàn rule gây ra false positive sẽ giải quyết được vấn đề ngay, nhưng đồng thời làm giảm mức độ bảo mật tổng thể của website — chỉ nên dùng khi 2 phương án trên không khả thi.

➕ Hướng dẫn tạo một Exception

5.1 — Mở giao diện Add exception

Vào Security → WAF → Managed rules → bấm nút Add exception ở góc trên bên phải. Form gồm 3 phần: Exception name (đặt tên gợi nhớ), When incoming requests match… (điều kiện áp dụng) và Then… (hành động bỏ qua).

Add exception Exception name VGS(SONIC)_OWASP_Ex_IE_XSS_vgsholding.com When incoming requests match… Hostname contains sonic.com.vn Then… Skip specific rules from a Managed Ruleset Select ruleset

5.2 — Khai báo điều kiện khớp request

Tại mục Field / Operator / Value, chọn trường cần lọc (ví dụ Hostname, URI, IP Source Address…) và điều kiện so khớp (contains, equals…). Có thể nối nhiều điều kiện bằng And/Or. Khung Expression Preview sẽ hiển thị biểu thức tương ứng dưới dạng Rules language, ví dụ: (http.host contains "vgsholding.com") or (http.host contains "sonic.com.vn").

5.3 — Chọn loại exception tại mục “Then…”

Hai lựa chọn chính, sắp theo mức ưu tiên giảm dần:

  • Skip all remaining rules: bỏ qua toàn bộ rule còn lại của các bộ WAF managed ruleset cho request khớp điều kiện
  • Skip specific rules from a Managed Ruleset: chỉ bỏ qua một hoặc nhiều rule cụ thể mà bạn chọn từ một ruleset nhất định — bấm Select ruleset rồi Select rules để tìm và tick chọn rule cần bỏ qua (tìm theo mô tả, Rule ID, hoặc tag, ví dụ tìm “920460” để ra rule 920460: Abnormal character escapes in request)

5.4 — Cấu hình Log matching requests và triển khai

Gạt toggle Log matching requests nếu muốn tắt việc ghi nhận log cho các request khớp với exception (khi tắt, request khớp sẽ không hiển thị tại Security overview). Sau khi hoàn tất, bấm Deploy để áp dụng ngay, hoặc Save as Draft nếu chưa muốn triển khai.


📝 Bước 6 — Ghi nhận Log payload của các quy tắc bị kích hoạt

Chỉ tài khoản có quyền Super Administrator mới được phép bật cấu hình ghi log và giải mã payload trực tiếp trên dashboard. Thành viên khác trong team vẫn có thể giải mã được, miễn là họ có quyền xem log sự kiện và được giao giữ private key tương ứng.

WAF cho phép ghi lại nội dung request đã làm kích hoạt một quy tắc cụ thể trong managed ruleset — gọi là payload. Thông tin này đặc biệt hữu ích khi cần chẩn đoán vì sao một rule bị trigger, hoặc xác minh request đó có thực sự là tấn công hay chỉ là false positive.

6.1 — Mở danh sách Managed rules

Vào Security → WAF → Managed rules, tìm đúng ruleset đang chứa rule mà bạn muốn ghi lại payload (ví dụ Cloudflare Managed Ruleset hoặc OWASP Core Ruleset) rồi bấm vào tên ruleset đó để mở trang chi tiết.

6.2 — Xác định rule muốn theo dõi

Trang chi tiết hiển thị toàn bộ rule con bên trong ruleset (ví dụ các rule dạng Anomaly:Header:User-Agent – Missing hay Anomaly:Method – Unknown HTTP Method) cùng action và trạng thái Enabled. Việc ghi log payload không cấu hình riêng cho từng rule mà áp dụng cho cả deployment hiện tại của ruleset.

Configure deployment — danh sách rule con 920100 — Invalid HTTP request line Log ✓920120 — Multiple URL Encoding Detected Log ✓ 1 to 15 of 125 items Delete deployment Configure payload logging Cancel Save

6.3 — Mở liên kết Configure payload logging

Kéo xuống cuối trang cấu hình deployment, bấm Configure payload logging — liên kết này nằm cùng khu vực với các nút Delete deployment, Cancel và Save.

6.4 — Chọn cách tạo cặp khoá mã hoá

Hệ thống sẽ nhắc bạn đọc kỹ hậu quả của việc bật ghi log payload trước khi tiếp tục. Sau đó chọn một trong hai phương án:

  • Generate key pair using your web browser: trình duyệt tự sinh cặp khoá public/private ngay tại máy bạn — private key không bao giờ được gửi lên Cloudflare
  • Use my own public key: sử dụng public key được tạo sẵn từ công cụ dòng lệnh matched-data-cli, phù hợp khi team đã có quy trình quản lý khoá riêng
🌐 Trình duyệt của bạn 🔑 Public key Gửi lên Cloudflare để mã hoá log 🔐 Private key Chỉ hiện 1 lần — tự lưu giữ ☁️ Cloudflare 🚫 Không gửi lên server

6.5 — Lưu lại Private key

Nếu chọn tạo khoá trong trình duyệt, hệ thống hiển thị cùng lúc Public key và Private key — copy và cất Private key vào nơi an toàn (password manager, vault nội bộ của công ty…) vì nó chỉ hiện đúng một lần. Bấm Next rồi Done để hoàn tất bước này.

⚠️ Lưu ý: làm mất Private key đồng nghĩa bạn sẽ không bao giờ giải mã được những payload đã ghi nhận trước đó — Cloudflare không lưu trữ và cũng không thể khôi phục lại khoá này giúp bạn.

6.6 — Triển khai cấu hình

Bấm Deploy nếu đây là lần đầu bạn triển khai ruleset kèm cấu hình payload logging, hoặc Save nếu đang cập nhật cấu hình cho một ruleset đã được triển khai từ trước đó.


🔓 Bước 7 — Giải mã và xem nội dung Payload trên dashboard

Khi một rule đã bật payload logging bị kích hoạt, bạn có thể tra lại đúng phần request gây ra cảnh báo — rất hữu ích khi điều tra sự cố hoặc xác minh xem đó có thực sự là false positive hay không.

7.1 — Mở Security → Events

Tại Activity log, tìm sự kiện được kích hoạt bởi rule cần kiểm tra và bấm vào để mở rộng chi tiết — các thông tin như Ray ID, Method, Host, Path, Query string, IP address, ASN, Country, Action taken… đều hiển thị đầy đủ tại đây.

7.2 — Tìm khu vực Payload match

Trong phần chi tiết sự kiện, kéo xuống mục Payload match — Cloudflare ghi rõ rằng phần request gây ra hành động của WAF đã được ghi nhận (ở dạng mã hoá), kèm liên kết Decrypt payload log để xem nội dung gốc.

Security → Events Ray ID: 6039543df84840d1 Action taken: Block 🔒 Payload match (đã mã hoá) 🔑 Private key Decrypt payload log 🔓 Cleartext

7.3 — Nhập Private key để giải mã

Bấm Decrypt payload log, dán Private key đã lưu ở Bước 6.5 vào cửa sổ xuất hiện rồi bấm Decrypt. Nếu khoá đúng, nội dung payload — các tham số trong query string, request headers, body form values… — sẽ hiển thị ngay dưới dạng cleartext, giúp bạn xác định chính xác request đó là tấn công thật hay chỉ là false positive cần bổ sung exception.

💡 Nếu sau khi xem cleartext, bạn xác nhận đây là request hợp lệ bị chặn nhầm, hãy quay lại Bước 5 để tạo Exception thay vì tắt hẳn rule đang bảo vệ những request khác.


💡 Tổng kết nhanh từ Next Step

Cần hỗ trợ cấu hình WAF?

Đội ngũ Next Step hỗ trợ triển khai và tinh chỉnh Cloudflare WAF phù hợp với đặc thù ứng dụng của bạn — liên hệ (+84) 933 810 688 hoặc [email protected].

WAF Managed Rules (đã nói ở bài trước) tự động chặn phần lớn các kiểu tấn công đã biết, kể cả những lỗ hổng zero-day mới phát hiện. Nhưng không bộ lọc nào hoàn hảo tuyệt đối — đôi khi hệ thống “báo động nhầm”, chặn đứng một request hoàn toàn vô hại chỉ vì nó tình cờ trông giống mẫu tấn công. Custom Rules chính là công cụ giúp bạn tự viết thêm luật riêng để xử lý những tình huống đặc thù mà Managed Rules chưa xử lý tốt.


🔔 False Positive — khi chuông báo động kêu nhầm

Hãy hình dung chuông báo trộm trong nhà kêu ầm ĩ giữa đêm nhưng thực ra chẳng có kẻ trộm nào cả — đó chính là false positive. Trong bảo mật ứng dụng web, hiện tượng này xảy ra khi công cụ quét (như WAF) gắn cờ một request là nguy hiểm — ví dụ nghi ngờ SQL Injection — trong khi bản chất request đó hoàn toàn hợp lệ, chỉ là cấu trúc dữ liệu hơi đặc biệt. Nói ngắn gọn: hệ thống “chặn nhầm” thay vì “chặn đúng”.

🚨 Tấn công thật Request chứa payload SQLi WAF chặn → đúng Blocked ✓ 🔔 False Positive Request hợp lệ, chỉ trùng pattern WAF chặn → nhầm Blocked ✗

Vậy làm sao xử lý những trường hợp chặn nhầm mà không cần tắt hẳn cả bộ Managed Rules — vốn vẫn đang bảo vệ rất tốt cho phần traffic còn lại? Câu trả lời nằm ở Custom Rules.


⚙️ Custom Rules là gì?

Custom Rules cho phép bạn tự định nghĩa cách Cloudflare xử lý traffic đổ vào một zone, dựa trên điều kiện do chính bạn đặt ra — thay vì phụ thuộc hoàn toàn vào các ruleset có sẵn. Giống như Managed Rules, Custom Rules cũng chạy trên cùng Ruleset Engine của Cloudflare, gồm 2 thành phần cốt lõi:

Request đến Expression ip.src eq 1.2.3.4 đối chiếu Rules Engine Action: Block …hoặc Skip, Log, Challenge

📋 Quy trình tạo một Custom Rule

Bước 1 — Chọn đúng tài khoản và domain

Đăng nhập dash.cloudflare.com, ở màn hình Accounts chọn tài khoản đang quản lý domain cần cấu hình, sau đó chọn đúng zone (domain) muốn thêm rule.

Bước 2 — Mở Custom rules và tạo mới

Vào Security → WAF → Custom rules → bấm Create rule. Trang Create rule sẽ hiện ra với 3 vùng chính: đặt tên rule, khai báo điều kiện khớp request, và chọn hành động thực hiện.

Create rule Rule name (required) Block crawler ngoài luồng If incoming requests match… Field ▾ Operator ▾ Value And Or Expression Preview Then take action… Deploy

Bước 3 — Khai báo điều kiện (Field / Operator / Value)

Mỗi điều kiện gồm 3 phần: Field là thuộc tính của request (IP Source, Hostname, URI, User Agent, Country, Verified Bot…), Operator là phép so sánh (equals, contains, does not equal, is in list…), Value là giá trị tham chiếu. Có thể nối nhiều điều kiện bằng And/Or.

Tham khảo đầy đủ danh sách field tại Rules language fields và các toán tử so sánh tại Comparison operators.

Bước 4 — Chọn hành động & triển khai

Tại mục Then take action…, chọn hành động phù hợp rồi bấm Deploy để áp dụng ngay, hoặc Save as Draft nếu muốn xem lại trước khi kích hoạt chính thức.


🎯 Các loại Action và cấu hình Custom Response

Phần Choose action cung cấp 6 lựa chọn:

Block

Từ chối hoàn toàn request khớp điều kiện

Managed Challenge

Đưa ra thử thách không tương tác hoặc CAPTCHA tùy ngữ cảnh

JS Challenge / Interactive Challenge

Yêu cầu trình duyệt giải mã JS hoặc tương tác xác minh là người thật

Log

Chỉ ghi nhận, không chặn — phù hợp giai đoạn thử nghiệm rule mới

Skip

Bỏ qua một hoặc nhiều tính năng bảo mật khác cho request khớp

Khi chọn Block, bạn có thể tùy chỉnh thêm nội dung phản hồi trả về cho người dùng thay vì dùng trang mặc định của Cloudflare:

Cấu hình Custom Response With response type Custom HTML ▾ With response code 403 Response body (tối đa 2 KB)

Response type khả dụng

  • Default Cloudflare WAF block page
  • Custom HTML — mime text/html
  • Custom Text — mime text/plain
  • Custom JSON — mime application/json
  • Custom XML — mime text/xml

Lưu ý cấu hình

Response code chỉ nhận giá trị trong khoảng 400–499, mặc định là 403. Response body giới hạn tối đa 2 KB — phù hợp để trả về trang lỗi thương hiệu riêng hoặc JSON báo lỗi cho API.


⏭️ Hành động Skip — bỏ qua bảo vệ có chủ đích

Skip dùng khi bạn muốn một nhóm request nhất định không bị một hoặc nhiều lớp bảo mật khác xử lý — ví dụ traffic từ chính hệ thống nội bộ hoặc bot đã xác minh. Một rule cấu hình với action Skip còn được gọi là skip rule.

WAF components to skip Log matching requests All remaining custom rules All rate limiting rules All managed rules All Super Bot Fight Mode rules ▸ More components to skip Zone Lockdown User Agent Blocking Browser Integrity Check Hotlink Protection · Security Level

Log matching requests: nếu tắt toggle này, các request khớp với skip rule sẽ không xuất hiện trong Security overview — hữu ích khi muốn giữ dashboard sạch khỏi traffic nội bộ đã được whitelist hợp lệ.


🔢 Thứ tự rule quan trọng như thế nào?

Custom Rules được Cloudflare đánh giá tuần tự theo thứ tự (Order) từ trên xuống. Một số action như Block hoặc Skip có thể khiến hệ thống dừng đánh giá các rule phía sau ngay khi khớp — vì vậy luôn đặt các rule “cho phép” (Allow/Skip) lên trên các rule “chặn” để tránh tình huống bot hợp lệ bị chặn nhầm trước khi kịp chạm tới rule whitelist.

1 · Skip — Allow Rule (Verified Bot, User Agent) 2 · Block — Định nghĩa bot xấu 3 · Managed Challenge — Bot khả nghi Đánh giá tuần tự từ trên xuống — kéo thả để sắp xếp lại Order

💡 5 mẹo thực chiến để Custom Rules phát huy tối đa hiệu quả

Mẹo 1 — Whitelist các bot đã xác minh (Google, Meta, Microsoft…)

Các bộ rule kiểm soát bot đôi khi chặn nhầm cả những bot “chính chủ” như Googlebot hay bot của Meta — ảnh hưởng trực tiếp đến SEO. Giải pháp là tạo một rule cho phép (whitelist) đặt lên đầu danh sách:

Tại WAF → Custom rules → Create rule: đặt tên rule, thêm điều kiện Verified Bot equals true. Nếu muốn giới hạn thêm phạm vi (chỉ áp dụng cho một số đường dẫn cụ thể), nối thêm điều kiện bằng Or với field như ASN, URI Path, User Agent hoặc JA3 Fingerprint. Chọn action Skip → tick All remaining custom rules, All managed rules, All Super Bot Fight Mode Rules → Deploy.

Rule name: Allow Rule Verified Bot equals ✓ (cf.bot_management.verified_bot) or (http.user_agent contains “postman”) Action: Skip

Mẹo 2 — Tận dụng Managed IP Lists thay vì tự thống kê IP xấu

Thay vì tự sưu tầm danh sách IP độc hại, Cloudflare cung cấp sẵn các Managed IP Lists được cập nhật liên tục dựa trên threat intelligence toàn cầu:

Open Proxies

IP của Open HTTP/SOCKS5 proxy — thường dùng để tấn công và ẩn danh kẻ tấn công

Anonymizers

Open SOCKS Proxies, VPN, TOR node — dùng để ẩn danh

VPNs

Địa chỉ IP của các máy chủ VPN đã biết

Malware

IP nguồn phát tán mã độc

Botnets, Command and Control Servers

IP của máy chủ điều khiển botnet (C2) đã được xác định

If incoming requests match… IP Source Addr is in list AnonymizersOr — is in list — Botnets, Command and Control Servers Or — is in list — Malware Or — is in list — Open Proxies Or — is in list — VPNs (ip.src in $cf.anonymizer) or (ip.src in $cf.botnetcc) or (ip.src in $cf.malware) or … Managed Challenge

Mẹo 3 — Khai thác WAF Attack Score để bắt cả những biến thể tấn công

Managed Rules hoạt động dựa trên signature — các mẫu vector tấn công đã được định danh sẵn, nên tỷ lệ dương tính giả khá thấp. Nhược điểm là chúng kém nhạy với các biến thể được kẻ tấn công biến đổi nhẹ để né signature, kiểu kỹ thuật fuzzing. WAF Attack Score giải quyết khoảng trống này bằng cách dùng machine learning để chấm điểm khả năng độc hại của từng request, từ 1 đến 99.

Nhãn trên Dashboard Giá trị Field Khoảng điểm
Attack attack 1 – 20
Likely attack likely_attack 21 – 50
Likely clean likely_clean 50 – 80
Clean clean 81 – 99
1–20 21–50 50–80 81–99 Attack Likely attack Likely clean Clean

💡 Để tối đa hóa khả năng bảo vệ, Cloudflare khuyến nghị dùng cả Managed Rules lẫn Attack Score trong Custom Rules — hai lớp bổ trợ cho nhau thay vì thay thế nhau.

Tạo rule với các field WAF Attack Score, WAF RCE Attack Score, WAF SQLi Attack Score, WAF XSS Attack Score — operator less than or equal to, giá trị ví dụ 20, nối với nhau bằng Or:

(cf.waf.score le 20) or (cf.waf.score.rce le 20) or (cf.waf.score.sqli le 20) or (cf.waf.score.xss le 20)

→ Action: Managed Challenge → Deploy.

🌏 Bonus: chặn theo quốc gia cho website phục vụ thị trường riêng biệt

Nếu dịch vụ chỉ phục vụ người dùng tại một quốc gia cụ thể (ví dụ Việt Nam), có thể tạo thêm rule: field Country does not equal Vietnam, action Managed Challenge, đặt Place at → First để ưu tiên đánh giá trước. Lưu ý: chỉ nên áp dụng khi phân tích traffic cho thấy lượng truy cập ngoài quốc gia mục tiêu cao bất thường — không khuyến khích dùng đại trà vì có thể chặn nhầm khách hàng/đối tác hợp lệ ở nước ngoài.

Mẹo 4 — Tinh chỉnh Cloudflare Managed Ruleset bằng traffic thật

Trước khi mạnh tay chuyển Managed Rules sang chế độ Block, nên trải qua một vòng “huấn luyện” dựa trên traffic thực tế để loại bỏ các false positive còn sót lại:

1. Tạo traffic sạch 2. Filter Security Events 3. Soi chi tiết URI / UA / Rule 4. Bypass FP → lặp lại Lặp lại vài vòng cho đến khi traffic sạch hoàn toàn 5. Chuyển Action → Block

4.1–4.2: Cho người dùng thật truy cập website và thao tác đầy đủ các tính năng trong vài ngày để tạo ra mẫu traffic đại diện. Sau đó vào Security → Events, dùng bộ lọc Managed rules để tách riêng những request đã bị bộ Managed Rules đánh dấu.

4.3: Mở từng event để xem chi tiết — Rule ID nào kích hoạt, request đến từ URI/hostname nào, qua HTTP Method gì, User Agent ra sao. Đây là dữ liệu để xác định request đó có thực sự nguy hiểm hay chỉ là hành vi hợp lệ của ứng dụng (ví dụ một API nội bộ dùng method PUT bất thường).

4.4: Với mỗi false positive xác định được, tạo Exception hoặc Custom Rule để bypass đúng rule đó cho đúng URI/hostname liên quan — lặp lại quá trình này nhiều vòng cho đến khi không còn false positive đáng kể.

4.5: Khi traffic đã “sạch”, chọn hàng loạt các rule còn lại trong Managed Ruleset (theo tag hoặc Select all) → Set action → Block để chính thức chuyển từ chế độ quan sát (Log) sang chế độ ngăn chặn thật sự.

Mẹo 5 — Tinh chỉnh OWASP Core Ruleset theo mức độ rủi ro false positive

OWASP Core Ruleset có độ nhạy cao hơn Managed Ruleset thông thường, nên cũng dễ gây false positive hơn. Các rule OWASP được Cloudflare phân loại thành 4 nhóm theo tần suất gây báo động giả:

Hardly any false positive

Gần như không bao giờ chặn nhầm

Few false positives

Thỉnh thoảng mới chặn nhầm

Frequent false positives

Thường xuyên chặn nhầm

Very frequent false positives

Rất hay chặn nhầm — cân nhắc tắt

5.1–5.4: Quy trình tương tự Mẹo 4 — tạo traffic sạch, vào Security → Events nhưng lần này lọc theo Cloudflare OWASP Core Ruleset, rồi mở chi tiết từng event để xem rule nào (ví dụ 949110: Inbound Anomaly Score Exceeded) cùng điểm OWASP score, URI, hostname, User Agent liên quan.

5.5 — Đọc Additional logs để thấy toàn bộ rule con bị kích hoạt

Một request thường kích hoạt cùng lúc nhiều rule OWASP nhỏ (ví dụ phát hiện ký tự bất thường trong header, dấu hiệu SQL injection probing…), mỗi rule cộng dồn một điểm số (+3, +5…) vào tổng Anomaly Score. Mở rộng mục Additional logs để xem đầy đủ danh sách này trước khi quyết định bypass rule nào.

Additional logs (7) ▾ 920274: Invalid character in headers +5 941340: IE XSS Filters – Attack +5 942260: SQL auth bypass attempt 2/3 +5 942420: Restricted SQL char anomaly +3 942490: Classic SQLi probing 3/3 +5 Tổng OWASP score 31 ≥ ngưỡng Anomaly → action thực thi

5.6 — Nguyên tắc khi quyết định bypass rule OWASP

5.7 — Chuyển cấu hình OWASP sang Block sau khi đã tối ưu

Lặp lại các bước trên cho đến khi traffic không còn false positive đáng kể, sau đó cập nhật 3 thông số cấu hình của Cloudflare OWASP Core Ruleset:

5.8 — Kiểm chứng lại khả năng bảo vệ sau khi tối ưu

Sau khi hoàn tất tinh chỉnh, đừng quên kiểm tra lại xem hệ thống còn đủ chặt hay không bằng cách: chạy công cụ dò quét lỗ hổng Web Application, dùng các dịch vụ kiểm thử WAF dạng Security Control Validation, hoặc thử các kỹ thuật bypass WAF/fuzzing được chia sẻ trong cộng đồng security — đảm bảo việc nới lỏng rule không vô tình mở ra lỗ hổng mới.


💡 Tổng kết nhanh từ Next Step

Cần hỗ trợ cấu hình Custom Rules?

Đội ngũ Next Step hỗ trợ thiết kế và tinh chỉnh Custom Rules, Managed Ruleset, OWASP Core Ruleset phù hợp với đặc thù từng ứng dụng — liên hệ (+84) 933 810 688 hoặc [email protected].

Custom Rules và Managed Rules giỏi nhận diện request “có hình dạng” độc hại — payload chứa SQL injection, XSS… Nhưng có một kiểu lạm dụng mà các bộ rule đó không xử lý tốt: request hoàn toàn hợp lệ về nội dung, chỉ có điều bị gửi đi quá nhiều lần trong thời gian quá ngắn. Đó là lúc Rate Limiting Rules phát huy tác dụng.


🚦 Rate Limiting Rules là gì?

Rate Limiting Rules giới hạn số lượng request mà một người dùng, một địa chỉ IP, hoặc một ứng dụng cụ thể được phép gửi đến hệ thống trong một khoảng thời gian nhất định. Mục tiêu cốt lõi là bảo vệ hệ thống khỏi quá tải, ngăn chặn tấn công từ chối dịch vụ (DoS) hoặc brute force, đồng thời đảm bảo tài nguyên được phân bổ công bằng cho tất cả người dùng — không để một vài nguồn bất thường “ăn hết” băng thông xử lý.

🤖 1 nguồn — 500 req/s 🚧 Rate Limit 5 requests mỗi 10 giây Vượt → chặn 🖥️ Origin Người dùng bình thường vẫn truy cập được bình thường

Một rule rate limit có thể được dùng để giới hạn theo nhiều tiêu chí khác nhau:

Khi đạt đến giới hạn đã đặt, hệ thống sẽ từ chối các request tiếp theo hoặc trì hoãn xử lý cho đến khi bộ đếm được reset — thường là sau khi khoảng thời gian quy định kết thúc.


🧩 Các thành phần trong một Rate Limiting Rule

Giống mọi rule khác chạy trên Ruleset Engine của Cloudflare, rate limiting rule vẫn có 2 tham số nền tảng — Expression (điều kiện khớp traffic) và Action (hành động khi đạt ngưỡng). Nhưng vì bản chất là “đếm theo thời gian”, rate limiting rule cần thêm 5 tham số bổ sung:

📊 Characteristics

Bộ tham số xác định Cloudflare sẽ theo dõi tốc độ truy cập theo “thước đo” nào — ví dụ theo IP, theo Header, theo JA3 fingerprint.

⏱️ Period

Khoảng thời gian (tính bằng giây) dùng để đánh giá tốc độ/tần suất truy cập.

🔢 Request per period

Số lượng request tối đa trong khoảng Period đó trước khi rule bị kích hoạt.

⏳ Duration

Khi đã đạt ngưỡng, đây là khoảng thời gian rule sẽ tiếp tục chặn các request tiếp theo.

🎛️ Action behavior

Theo mặc định, Cloudflare áp dụng action cho toàn bộ khoảng Duration đã cấu hình, bất kể tốc độ request trong khoảng thời gian đó như thế nào. Với khách hàng gói doanh nghiệp, có thêm tùy chọn Throttle requests over the maximum configured rate — thay vì chặn cứng cả khoảng thời gian, hệ thống chỉ chặn đúng phần request vượt ngưỡng, các request còn lại trong giới hạn vẫn được phép đi qua.


📋 Quy trình tạo một Rate Limiting Rule

Bước 1-2 — Chọn account và domain

Đăng nhập dash.cloudflare.com, chọn đúng tài khoản, sau đó chọn domain cần áp dụng rate limit.

Bước 3-4 — Mở tab Rate limiting rules và tạo mới

Vào Security → WAF → Rate limiting rules → bấm Create rule. Đây là tab riêng biệt nằm cạnh Custom rules và Managed rules, chuyên dùng cho các quy tắc giới hạn tốc độ truy cập.

Security → WAF Custom rules Rate limiting rules Advanced rate limiting — bảo vệ website và API khỏi traffic độc hại + Create rule

Bước 5 — Đặt tên rule

Nhập tên gợi nhớ vào Rule name. Ví dụ một rule cho phép tối đa 5 lần đăng nhập thất bại trong 10 giây có thể đặt tên kiểu “Login_Fail_5_per_10s”.

Bước 6 — Khai báo điều kiện khớp request

Tại If incoming requests match…, chọn các field HTTP cần đối chiếu — thường gặp nhất là URI (đường dẫn endpoint cần bảo vệ, ví dụ /login) kết hợp And với Hostname để giới hạn đúng zone đang cấu hình.

If incoming requests match… URI equals /login And Hostname equals enterscore.example.com (http.request.uri eq “/login” and http.host eq “enterscore.example.com”)

Bước 7 (tùy chọn) — Cache status

Nếu chỉ muốn tính tốc độ truy cập dựa trên request thực sự chạm tới origin server (bỏ qua những request được phục vụ từ cache), tắt toggle Also apply rate limiting to cached assets.

Bước 8 — With the same characteristics

Đây là bước quyết định Cloudflare sẽ “đếm” theo đơn vị nào. Thêm một hoặc nhiều đặc điểm (ví dụ IP, Header value of…, hoặc field tùy chỉnh) — mỗi tổ hợp giá trị riêng biệt sẽ có một bộ đếm độc lập. Ví dụ chọn IP nghĩa là mỗi địa chỉ IP có một bộ đếm 5 request/10 giây của riêng nó.

Bước 9 (tùy chọn) — Custom counting expression

Nếu muốn chỉ tăng bộ đếm khi một điều kiện cụ thể được đáp ứng (kể cả dựa trên response header trả về), bật Use custom counting expression và khai báo biểu thức riêng tại Increment counter when…. Mặc định, biểu thức đếm sẽ giống hệt biểu thức rule ở Bước 6.

With the same characteristics… Header value of custom ☑ Use custom counting expression Increment counter when: Hostname matches “(www.|blog.).example.com” → chỉ đếm request đến đúng các subdomain này

Bước 10 — When rate exceeds

Định nghĩa số lượng request tối đa (Requests) và khoảng thời gian xem xét (Period). Ví dụ: 5 request trong 10 seconds — nghĩa là một IP gửi quá 5 request trong vòng 10 giây sẽ kích hoạt rule.

When rate exceeds… Requests (required) 5 Period (required) 10 seconds ▾

Bước 11-12 — Then take action + Custom response

Tại Then take action, chọn hành động khi vượt ngưỡng — phổ biến nhất là Block để Cloudflare từ chối thẳng các request thừa. Có thể tùy chỉnh thêm phản hồi trả về: response type Custom Text, response code 429 (mã chuẩn cho “Too Many Requests”), response body ví dụ “Access Denied!”.

Then take action… Block Custom Text 429Response body Access Denied!

Bước 13 — Chọn hành vi chặn (With the following behaviour)

Đây là khoảng thời gian (mitigation timeout) Cloudflare áp dụng action đã chọn sau khi đạt ngưỡng. Có 2 lựa chọn:

  • Block for the selected duration: một khi đạt ngưỡng, WAF chặn toàn bộ request trong suốt thời gian đã chọn (ví dụ 1 phút) trước khi bộ đếm reset
  • Throttle requests over the maximum configured rate (chỉ dành cho gói doanh nghiệp): WAF chỉ chặn đúng phần request vượt rate đã cấu hình, các request còn lại trong giới hạn vẫn được phép đi qua bình thường
Block for selected duration Toàn bộ request bị chặn cứng trong cả khoảng durationThrottle vượt mức cấu hìnhChỉ phần vượt mức bị chặn, phần còn lại vẫn đi qua

Bước 14 — Triển khai

Bấm Deploy để áp dụng rule ngay, hoặc Save as Draft nếu chưa muốn kích hoạt chính thức.


🔍 Tìm một giới hạn tốc độ phù hợp

Đặt ngưỡng rate limit quá thấp sẽ chặn nhầm người dùng thật, đặt quá cao thì gần như vô tác dụng. Cloudflare cung cấp tab Rate limit analysis nằm trong Security → Analytics, hiển thị dữ liệu thực tế về tỷ lệ request khớp với các bộ lọc và khoảng thời gian bạn chọn — giúp xác định con số phù hợp dựa trên hành vi traffic thật, thay vì đoán mò.

Rate limit analysis — Top 50 unique IP Unique IP addresses (giảm dần theo số request) ngưỡng đề xuất

Bước 1 — Xác định phạm vi: vào Security → Analytics, chọn tab Traffic analysis, lọc theo một khoảng thời gian không cao điểm để thấy phân bổ traffic thông thường, sau đó đổi sang khung giờ trùng với đợt nghi ngờ bị tấn công để so sánh — chú ý các chỉ số Mitigated by WAF, Served by Cloudflare, Served by origin.

Bước 2 — Tìm kiếm tỷ lệ phù hợp: chuyển sang tab Rate limit analysis, chọn thuộc tính cần nhóm (Group by top) — IP address, hoặc JA3 fingerprint nếu zone có bật Bot Management — cùng khoảng thời gian (1 phút, 5 phút hoặc 1 giờ). Biểu đồ sẽ hiển thị phân phối số request của 50 IP/JA3 nhiều nhất, sắp theo thứ tự giảm dần.

Bước 3 — Kéo thanh trượt: di chuyển thanh trượt ngang trên biểu đồ lên xuống để xem trực quan tác động của từng mức ngưỡng — bao nhiêu IP sẽ rơi vào diện bị giới hạn nếu chọn mức đó. Có thể thu hẹp thêm bằng bộ lọc theo Path nếu chỉ muốn áp dụng cho một endpoint cụ thể (ví dụ /login).

Bước 4 — Xác minh lại: lặp lại quy trình chọn ngưỡng ở trên, nhưng lần này áp vào đúng phần traffic mà bạn biết có xảy ra tấn công hoặc traffic cao điểm. Ngưỡng đã chọn cần chặn được lưu lượng bất thường trong đợt đó, đồng thời vẫn cho phép traffic ở mức bình thường đi qua trót lọt. Có thể đối chiếu thêm với log mẫu để xác minh dấu vân tay (fingerprint) và bộ lọc đã chọn là chính xác.


💡 2 mẹo thực chiến khi cấu hình Rate Limiting

Mẹo 1 — Tạo rule trực tiếp ngay từ biểu đồ Rate Limit Analysis

Không cần quay lại tab Create rule và gõ lại toàn bộ điều kiện — ngay tại biểu đồ Rate limit analysis, sau khi đã chọn IP/JA3 và kéo thanh trượt đến ngưỡng ưng ý, bấm Create rate limiting rule. Cloudflare sẽ tự động điền sẵn các trường Field, Characteristics và Rate limit dựa trên đúng những gì bạn vừa phân tích trên biểu đồ — bạn chỉ cần rà soát lại và chọn action phù hợp.

Rate limit analysis Create rate limiting rule Create rate limiting rule ✓ Field/Hostname tự điền sẵn ✓ Characteristics tự điền sẵn (IP/JA3) ✓ Requests/Period tự điền theo ngưỡng đã chọn

Mẹo 2 — Hai use case phổ biến nhất khi áp dụng Rate Limiting

Use case 1 — Chống Credential Stuffing cho trang đăng nhập

Endpoint đăng nhập là mục tiêu kinh điển của các cuộc dò mật khẩu hàng loạt. Rule ví dụ: điều kiện Hostname contains “sonic.com.vn” AND URI Path equals “/login” AND Request Method equals “POST”; characteristic IP with NAT Support (đếm chính xác hơn cho các IP dùng chung qua NAT); ngưỡng 5 requests / 10 seconds; action Block; duration 10 seconds.

Credential Stuffing Rate Limit Rule(http.host contains “sonic.com.vn”) and (http.request.uri.path eq “/login”) and (http.request.method eq “POST”) IP with NAT Support 5 req / 10s Block duration 10s

Use case 2 — Giới hạn theo loại thiết bị (Limit by User Agent)

Khi muốn áp ngưỡng khác nhau cho từng loại client — ví dụ ứng dụng di động được phép gọi nhiều hơn trình duyệt desktop. Rule ví dụ: điều kiện User Agent equals “MobileApp”; characteristic IP; ngưỡng 100 requests / 10 minutes; action Managed Challenge trong 10 giây. Có thể tạo thêm một rule riêng với ngưỡng chặt hơn dành cho trình duyệt desktop.

📱 MobileApp User Agent eq “MobileApp” IP 100 req / 10 min Managed Challenge — 10s 🖥️ Desktop browser Tạo rule riêng, ngưỡng chặt hơn tùy nhu cầu thực tế của ứng dụng

💡 Tổng kết nhanh từ Next Step

Cần hỗ trợ cấu hình Rate Limiting?

Đội ngũ Next Step hỗ trợ thiết kế ngưỡng rate limit phù hợp với từng endpoint và mô hình traffic thực tế của doanh nghiệp bạn — liên hệ (+84) 933 810 688 hoặc [email protected].

Nhân sự trong công ty ngày nay có thể tự ý đăng ký hàng chục công cụ SaaS khác nhau — từ lưu trữ file, quản lý công việc đến chat nội bộ — mà bộ phận IT không hề hay biết. Đây chính là “shadow IT”, và nó là một trong những lỗ hổng bảo mật âm thầm nhưng nguy hiểm nhất của doanh nghiệp hiện đại.


🔎 Cloudflare CASB là gì?

CASB (Cloud Access Security Broker) là lớp trung gian bảo mật giữa người dùng và các ứng dụng đám mây mà doanh nghiệp đang sử dụng. Thay vì phải tự rà soát thủ công từng ứng dụng, Cloudflare CASB tự động kết nối qua API tới các nền tảng SaaS phổ biến, quét toàn bộ cấu hình, quyền truy cập và dữ liệu lưu trữ để phát hiện sớm những rủi ro tiềm ẩn — mà không cần cài đặt bất kỳ agent nào trên thiết bị.

User / Client Device 💻 Cloudflare CASB Phát hiện Shadow IT Quét lỗ hổng cấu hình Kiểm soát quyền truy cập API — read-only Data at rest & in transit Apps SaaS Google Workspace Microsoft 365 Slack, GitHub… CASB kết nối qua API — không cần cài agent trên thiết bị người dùng

💡 Toàn bộ quyền tích hợp của CASB với ứng dụng bên thứ 3 chỉ ở mức read-only và tuân theo nguyên tắc đặc quyền tối thiểu — nghĩa là Cloudflare chỉ được cấp đúng phạm vi quyền cần thiết để thực hiện quét, không có khả năng chỉnh sửa hay xoá dữ liệu của bạn.


🎯 4 nhóm chức năng chính của CASB

1. Phát hiện & giám sát ứng dụng đám mây

Tự động quét và liệt kê toàn bộ ứng dụng SaaS đang được nhân viên sử dụng — kể cả những ứng dụng chưa được bộ phận IT phê duyệt chính thức (shadow IT).

2. Bảo mật dữ liệu

Hỗ trợ mã hoá, kiểm soát quyền truy cập file/thư mục và đảm bảo tuân thủ chính sách bảo mật nội bộ nhằm hạn chế rò rỉ dữ liệu nhạy cảm.

3. Kiểm soát truy cập & thực thi chính sách

Thiết lập quy tắc rõ ràng về việc ai được truy cập dữ liệu nào, vào lúc nào và từ thiết bị nào — đảm bảo mỗi người dùng chỉ chạm được đúng phần dữ liệu được cấp phép.

4. Phát hiện mối đe doạ

Phân tích hành vi người dùng để nhận diện các điểm bất thường, từ đó cảnh báo sớm hoặc chủ động chặn các truy cập có dấu hiệu độc hại.


🧩 Cloudflare CASB hỗ trợ tích hợp những SaaS nào?

Danh sách các ứng dụng và nền tảng đám mây mà CASB có thể kết nối trực tiếp ngày càng được mở rộng, bao gồm:

AWS S3
Atlassian Confluence
Atlassian Jira
Bitbucket Cloud
Box
Dropbox
GitHub
Google Workspace (Drive, Gmail, Admin, Calendar)
Microsoft 365 (Admin Center, OneDrive, SharePoint, Outlook)
Salesforce
ServiceNow
Slack

📋 Hướng dẫn tích hợp Google Workspace vào Cloudflare CASB

Ví dụ minh hoạ dưới đây sẽ đi qua toàn bộ quy trình thiết lập tích hợp CASB với Google Workspace (GGWS) — một trong những ứng dụng SaaS phổ biến nhất tại doanh nghiệp.

Bước 1 — Mở CASB Integrations trên Zero Trust dashboard

Từ Zero Trust dashboard, truy cập tab CASB → chọn Add an integration → chọn Google Workspace trong danh sách ứng dụng hỗ trợ.

Zero Trust → CASB → Add an integration 🔷 Atlassian Bitbucket CASB 🟢 Google Workspace CASB — đang chọn 🟦 Microsoft CASB 💬 Slack CASB

Bước 2 — Tạo Service Account trên Google Cloud Platform

Đặt tên cho tích hợp → Next → chọn Create a Service Account in your GCP Project. Khi tạo service account mới trên GCP:

  • Nhập tên, mô tả và ID cho service account — ghi nhớ các giá trị này vì sẽ cần dùng lại sau
  • Không gán bất kỳ role hay quyền truy cập nào cho account này ở bước tạo
  • Không cấp quyền truy cập người dùng cho service account

Bước 3 — Tạo và tải JSON Key

Tại danh sách service account vừa tạo, mở menu (…) → chọn Manage keys → Add Key → Create new key → chọn định dạng JSON → Create. Trình duyệt sẽ tự động tải file khoá riêng tư về máy — hãy lưu trữ file này an toàn vì không thể khôi phục lại nếu làm mất.

Quay lại Cloudflare Zero Trust, upload đúng file JSON vừa tải về vào form Upload JSON Key.

Service Account 👤 Không role, không quyền Create Key JSON Key 🔑 Tải về máy tính Upload Cloudflare ☁️ Zero Trust

Bước 4 — Kích hoạt các Google Workspace API cần thiết

Cloudflare cung cấp sẵn danh sách liên kết để bật từng API bắt buộc: Google Calendar API, Google Drive API, Google Admin SDK API, Gmail API. Mở lần lượt từng liên kết (khuyến nghị mở bằng tab mới) và bấm Enable cho từng API trên giao diện Google Cloud Console.

Lưu ý chuyển đúng sang tài khoản Google Cloud thuộc về tổ chức Workspace của bạn trước khi kích hoạt, tránh bật nhầm trên project cá nhân.

Bước 5 — Domain-Wide Delegation từ Admin Console

Đăng nhập vào Google Workspace Admin Console bằng tài khoản quản trị. Tại trang quản lý domain-wide delegation, Cloudflare sẽ hiển thị sẵn Client ID và danh sách Scopes cần copy chính xác — bao gồm các quyền đọc (readonly) đối với domain, user, calendar, drive và cấu hình cơ bản của Gmail. Cloudflare Zero Trust luôn áp dụng nguyên tắc cấp quyền tối thiểu cho các scope này.

Google Admin Console — Add a new client ID Client ID 100739088919182916911 OAuth scopes (comma-delimited) …/admin.directory.domain.readonly, …/admin.directory.user.readonly, …/calendar, …/cloud-platform.read-only, …/drive.readonly, …/gmail.settings.basic Authorize

Bước 6 — Xác nhận email quản trị và thêm DLP profile

Nhập chính xác địa chỉ email của tài khoản Google Workspace Administrator — email này phải khớp tuyệt đối với tài khoản admin thật, nếu không tích hợp sẽ không hoạt động.

Bước cuối (tuỳ chọn): chọn các DLP profile có sẵn như Credentials and Secrets, Financial Information, Health Information, Source Code… để CASB tự động quét toàn bộ file mới và file cũ tìm dữ liệu nhạy cảm. Lưu ý DLP chỉ quét file đã sửa đổi hoặc file mới sau khi profile được thêm — có thể bổ sung thêm profile sau này bất cứ lúc nào.


🔔 Findings — Trung tâm phát hiện rủi ro của CASB

Sau khi tích hợp hoàn tất, Cloudflare CASB tự động bắt đầu quét và trả về danh sách Findings — những vấn đề bảo mật được phát hiện trong ứng dụng SaaS liên quan đến người dùng, dữ liệu tĩnh và các thiết lập cấu hình. Bạn có thể xem lại toàn bộ danh sách này và xử lý ngay trên Zero Trust dashboard tại CASB → Posture → SaaS/Cloud.

CASB Findings Severity Finding type Detected Low Installed 3rd Party App with Google Sign-In Today Low Google Workspace User without Recovery Phone Today High Google Workspace User 2FA Disabled Today Critical Google Workspace Admin User 2FA Disabled Today Mỗi Finding hiển thị: tên file liên quan, cấu hình DLP khớp, tích hợp & ngày phát hiện

📊 4 mức độ nghiêm trọng (Severity levels)

🔴 Critical

Cần được xử lý ngay trong hôm nay — mức độ rủi ro cao nhất.

🟠 High

Nên được xử lý trong tuần này.

🔵 Medium

Nên được xem xét vào một thời điểm phù hợp trong tháng.

⚪ Low

Mang tính thông tin, thường nằm trong quy trình rà soát định kỳ.


💡 Tổng kết nhanh từ Next Step

Cần hỗ trợ triển khai Cloudflare CASB?

Đội ngũ Next Step hỗ trợ tích hợp CASB với các ứng dụng SaaS doanh nghiệp đang sử dụng — liên hệ (+84) 933 810 688 hoặc [email protected].

Các cuộc tấn công DDoS (Distributed Denial of Service) đang ngày càng tinh vi và quy mô hơn — không chỉ nhắm vào các tập đoàn lớn mà còn tấn công cả doanh nghiệp vừa và nhỏ với chi phí tấn công ngày càng rẻ. Cloudflare, với hạ tầng xử lý hàng trăm triệu request mỗi giây, đứng ở vị trí đặc biệt để phát hiện và hấp thụ những đợt tấn công này trước khi chúng chạm tới server gốc của bạn.

💣 DDoS là gì?

Tấn công từ chối dịch vụ phân tán (DDoS) xảy ra khi kẻ tấn công cố tình làm quá tải một máy chủ, dịch vụ hoặc mạng bằng lượng lớn traffic giả mạo — khiến hệ thống không còn tài nguyên để phục vụ người dùng thật. Điểm đặc trưng là tấn công đến từ nhiều nguồn cùng lúc (thường là botnet — mạng lưới thiết bị bị xâm nhập), bao gồm cả thiết bị IoT, máy tính cá nhân, máy chủ bị chiếm quyền điều khiển. Hãy hình dung như một vụ tắc nghẽn giao thông cố tình — hàng nghìn xe được dẫn vào cùng một con đường, khiến không ai có thể di chuyển đến đích.

👤 Attacker 🤖 Bot 🤖 Bot 🤖 Bot ☁️ Cloudflare DDoS Shield 🖥️ Origin Hoạt động bình thường

DDoS tấn công vào layer 3, 4 và layer 7 của mô hình OSI. Một số kiểu tấn công phổ biến:

Layer 3/4

SYN Flood, UDP Flood, ACK Flood, ICMP Flood, Mirai Botnet

Layer 7

HTTP Flood, Slowloris Attack, HULK Attack, LOIC Attack

Reflection

DNS Amplification, WordPress Ping Attack, NTP Reflection


🔎 Nhận biết khi nào đang bị tấn công

Dấu hiệu rõ ràng nhất là trang web đột nhiên trở nên chậm hoặc không thể truy cập — nhưng đây cũng có thể là do traffic hợp lệ tăng đột biến, nên cần phân tích kỹ hơn. Các dấu hiệu cụ thể cần chú ý:

⚠

Lưu lượng truy cập đáng ngờ từ một địa chỉ IP hoặc dải IP cụ thể, đặc biệt khi số lượng request từ một nguồn vượt xa mức bình thường

⚠

Lượng lớn traffic đến từ người dùng có cùng hồ sơ hành vi — cùng loại thiết bị, vị trí địa lý, phiên bản trình duyệt

⚠

Số lượng yêu cầu tăng vọt không rõ nguyên nhân đến một trang hoặc endpoint cụ thể

⚠

Mô hình traffic bất thường — tăng đột biến theo chu kỳ đều đặn (ví dụ cứ mỗi 10 phút lại có một đợt tăng) hoặc xuất hiện vào giờ thấp điểm


🛡️ Cloudflare DDoS Protection hoạt động như thế nào?

Cloudflare tự động phát hiện và giảm thiểu các cuộc tấn công DDoS thông qua các hệ thống tự động — không cần can thiệp thủ công. Cơ chế này dựa trên các managed ruleset (bộ quy tắc được Cloudflare quản lý và cập nhật liên tục), phân tích traffic theo thời gian thực để sinh ra signature mới ngay khi phát hiện mẫu tấn công. Bạn có thể tùy chỉnh hành vi của các ruleset này thông qua cơ chế Override — ghi đè một số cài đặt mặc định mà không làm mất đi lớp bảo vệ tự động.

Traffic đến 🌊 HTTP + L3/L4 Cloudflare 🔍 Real-time analysis 📋 Managed Rulesets 🤖 Auto signature gen ⚙️ DDoS Override ✅ Clean traffic → Origin Server 🚫 DDoS traffic → Bị chặn

📦 3 tính năng chính của Cloudflare DDoS Protection

1️⃣ Managed Rulesets — có trên tất cả gói

Bộ quy tắc do Cloudflare quản lý, tự động bảo vệ chống lại các loại tấn công DDoS ở layer 3/4 (mạng/vận chuyển) và layer 7 (ứng dụng). Hai ruleset chính:

  • HTTP DDoS Attack Protection: chặn HTTP floods, amplification HTTP attacks, reflection HTTP attacks
  • Network-layer DDoS Attack Protection: chặn SYN floods, UDP reflection attacks, SSL/TLS-based DDoS

2️⃣ Adaptive DDoS Protection — Enterprise

Tính năng nâng cao dành riêng cho gói Enterprise, học hỏi từ hành vi traffic thực tế của từng zone để phát hiện và phản ứng với các cuộc tấn công tinh vi hơn mà signature tĩnh có thể bỏ qua. Bao gồm 4 loại bảo vệ thích ứng:

  • For Origins: phát hiện traffic lệch khỏi hồ sơ lỗi gốc của trang web
  • For User-Agents: phát hiện traffic lệch khỏi các User Agent hàng đầu (hồ sơ được xây dựng từ toàn bộ mạng Cloudflare)
  • For Locations: phát hiện traffic bất thường từ các quốc gia không nằm trong phân bổ địa lý thông thường của trang — ví dụ trang chủ yếu phục vụ Việt Nam nhưng đột nhiên nhận nhiều traffic từ Ukraine
  • For Protocols: phát hiện traffic lệch khỏi hồ sơ giao thức IP bình thường

3️⃣ Advanced TCP Protection — Magic Transit

Công cụ kiểm tra TCP có trạng thái, dùng để phát hiện và giảm thiểu các cuộc tấn công TCP tinh vi kiểu out-of-state như randomized và spoofed ACK floods, SYN floods và SYN-ACK floods. Đặc điểm nổi bật là có thể theo dõi các kết nối TCP ngay cả khi chúng di chuyển giữa các trung tâm dữ liệu của Cloudflare, bảo vệ đồng thời cả tấn công nhắm vào một IP/port cụ thể lẫn tấn công rộng nhắm vào nhiều IP trong cùng một prefix.


📊 So sánh tính năng DDoS giữa các gói

Cloudflare cung cấp Unmetered DDoS protection — cam kết không tính phí thêm cho traffic DDoS tấn công, bất kể quy mô. Đây là điểm khác biệt quan trọng so với nhiều nhà cung cấp khác vốn áp dụng “surge pricing” khi bị tấn công (tính tiền nhiều hơn chính xác vào lúc khách hàng đang gặp sự cố nhất).

Tính năng Free Pro Business Enterprise Enterprise + Add-on
Standard Unmetered DDoS (L3-7) ✓ ✓ ✓ ✓ ✓
HTTP DDoS Attack Protection ✓ ✓ ✓ ✓ ✓
Network-layer (L3/4) DDoS Protection ✓ ✓ ✓ ✓ ✓
Managed rules customization ✓ ✓ ✓ Log only Expression fields + multi-rule
Proactive false positive detection ✗ ✗ ✓ ✓ ✓
Adaptive DDoS Protection Error rules only Error rules only Error rules only Error rules only All adaptive rules
Traffic profiling signals Error rates Error rates Error rates + historical Error rates + historical Full: country, UA, query string, ML scores

💡 Dù hệ thống tự động hoạt động rất tốt, Cloudflare vẫn cho phép khách hàng cấu hình Override để ghi đè hành động và độ nhạy cảm mặc định — giúp tinh chỉnh bảo vệ phù hợp với đặc thù ứng dụng và giảm thiểu false positive.


⚙️ Cấu hình DDoS Override từng bước

Bước 1 — Chọn account và website

Đăng nhập dash.cloudflare.com, chọn đúng tài khoản và domain cần cấu hình.

Bước 2 — Vào Security → DDoS

Trang này hiển thị 2 mục chính: HTTP DDoS attack protection (ruleset tự động chặn HTTP floods, amplification, reflection attacks) và Network-layer and SSL/TLS DDoS attack protection. HTTP DDoS protection luôn được bật — bạn chỉ có thể tùy chỉnh hành vi bằng cách tạo override.

Security → DDoS HTTP DDoS attack protection Ruleset managed by Cloudflare that automatically mitigates HTTP-based DDoS attacks. HTTP DDoS attack protection is always enabled. Deploy a DDoS override SONIC DDoS Global Block Default ✓ Edit | Delete

Bước 3 — Bấm “Deploy a DDoS override”

Tại mục HTTP DDoS attack protection, bấm nút Deploy a DDoS override ở góc phải để mở form tạo override mới.

Bước 4 — Đặt tên override

Nhập tên gợi nhớ vào Override name. Trang Configure override cũng hiển thị Override scope — mặc định là toàn bộ request đến zone hiện tại (“All incoming requests to your-domain.com”).

Configure override Override name (Required) SONIC DDOS Override scope — DDoS L7 ruleset will execute ↳ All incoming requests to sonic.com.vn

Bước 5 (Enterprise) — Điều chỉnh Override scope nếu cần

Với khách hàng Enterprise có Advanced DDoS Protection, có thể thu hẹp phạm vi áp dụng override thay vì áp dụng cho toàn zone. Bấm Edit scope và khai báo custom filter expression — tương tự cách viết biểu thức trong WAF Custom Rules — để chỉ định đúng nhóm request cần xử lý đặc biệt.

Bước 6 — Cấu hình Ruleset và Rule override

Phần cốt lõi của override, gồm 2 cấp độ có thể kết hợp trên cùng một cấu hình:

6.1 — Ghi đè toàn bộ ruleset (Ruleset configuration)

Áp dụng một hành động hoặc độ nhạy cảm thống nhất cho tất cả rule trong bộ quy tắc. Hai thông số cần cấu hình:

Ruleset action — 5 lựa chọn:

  • Default: Cloudflare tự cân chỉnh action dựa theo từng rule con trong DDoS L7 ruleset
  • Block: chặn toàn bộ traffic thỏa điều kiện DDoS
  • Managed Challenge: giảm tải CAPTCHA — Cloudflare quyết định loại thử thách phù hợp
  • Interactive Challenge: đảm bảo người truy cập là con người, không phải bot
  • Log: chỉ ghi log, không chặn — xem lại tại Security Events

Ruleset sensitivity — 5 mức:

  • High: nhạy cảm nhất — dễ kích hoạt nhất, Cloudflare lọc traffic gắt gao hơn
  • Medium: cân bằng giữa bảo vệ và false positive
  • Low: ít nhạy cảm hơn
  • Essentially Off: gần như tắt
  • Default: theo mặc định của Cloudflare cho từng rule

Mức nhạy cảm càng cao → action càng dễ xảy ra → Cloudflare đánh giá traffic gắt gao hơn.

DDoS L7 ruleset configuration — Ruleset configuration Ruleset action (Required) Default ▾ Ruleset sensitivity (Required) Default ▾ Browse rules

6.2 — Ghi đè từng rule cụ thể (Rule configuration)

Khi muốn tinh chỉnh riêng một số rule thay vì áp dụng đồng loạt, bấm Browse rules để mở danh sách toàn bộ rule trong ruleset. Có thể tìm kiếm theo từ khóa hoặc lọc theo Tags (ví dụ: botnets, unusual-requests, read-only, generic, advanced).

  • Chọn từng rule và đổi Action hoặc Sensitivity riêng lẻ
  • Tick nhiều rule rồi bấm Set action / Set sensitivity để cập nhật hàng loạt
  • Bấm Select all X rules để áp dụng cho toàn bộ kết quả lọc
  • Bấm Next để xem lại danh sách thay đổi trước khi lưu

Lưu ý: cấu hình theo tag hoặc rule riêng lẻ có độ ưu tiên cao hơn cấu hình ruleset tổng.

Configure override — Browse rules Search Rules… 🔍 Botnets Action: All Sensitivity: All Tags: unusual-requests (60) · botnets (53) · read-only (50) · generic (12) · advanced (2) Description/Rule ID Tags Action Sensitivity HTTP requests from known botnet (signature #60)…83dc0d58 Block High HTTP requests with unusual HTTP headers or URI…06a46ce3 Block High 5 rules selected (of 54 filtered rules) Set action Set sensitivity

Bước 7 — Lưu lại cấu hình

Bấm Save để hoàn tất. Lưu ý: “Ruleset overrides will not affect read-only rules” — các rule có nhãn read-only trong danh sách sẽ không bị ảnh hưởng bởi cấu hình ghi đè này.

ℹ Ruleset overrides will not affect read-only rules. Delete deployment Cancel Save

💡 Tổng kết nhanh từ Next Step

Cần hỗ trợ cấu hình DDoS Protection?

Đội ngũ Next Step hỗ trợ đánh giá mức độ bảo vệ phù hợp và cấu hình DDoS Override theo đặc thù traffic của từng hệ thống — liên hệ (+84) 933 810 688 hoặc [email protected].

✓