close

Hướng dẫn bảo mật VPS chạy AI Agent bằng Tailscale

Tác giả: Đông Tùng Ngày đăng: 07/10/2026 Chuyên mục: AI & Automation
Disclosure
Website Tino blog được cung cấp bởi Tino Group. Truy cập và sử dụng website đồng nghĩa với việc bạn đồng ý với các điều khoản và điều kiện trong chính sách bảo mật - điều khoản sử dụng nội dung. Wiki.tino.org có thể thay đổi điều khoản sử dụng bất cứ lúc nào. Việc bạn tiếp tục sử dụng Tino blog sau khi thay đổi có nghĩa là bạn chấp nhận những thay đổi đó.
Why Trust Us
Các bài viết với hàm lượng tri thức cao tại Tino blog được tạo ra bởi các chuyên viên Marketing vững chuyên môn và được kiểm duyệt nghiêm túc theo chính sách biên tập bởi đội ngũ biên tập viên dày dặn kinh nghiệm. Mọi nỗ lực của chúng tôi đều hướng đến mong muốn mang đến cho cộng đồng nguồn thông tin chất lượng, chính xác, khách quan, đồng thời tuân thủ các tiêu chuẩn cao nhất trong báo cáo và xuất bản.

Bảo mật VPS chạy AI Agent bằng Tailscale là cách đưa SSH, Dashboard và các cổng quản trị của AI Agent vào một mạng riêng, thay vì mở trực tiếp ra Internet. Cách triển khai hiệu quả nhất là cài Tailscale trên VPS và máy tính quản trị, kiểm tra kết nối qua mạng riêng, sau đó dùng UFW đóng các cổng public không cần thiết. Cùng Tino tìm hiểu qua bài viết dưới đây nhé!

Tại sao VPS chạy AI Agent dễ bị tấn công?

Những rủi ro thực tế

Một AI Agent có thể đọc email, chạy lệnh, truy cập tệp, gọi API trả phí và thao tác thay bạn. Nếu kẻ xấu chiếm được quyền điều khiển, hậu quả không dừng ở việc hỏng một trang web mà còn gồm:

  • Lộ khóa API: khóa của OpenAI, Anthropic hay Google bị lấy cắp và bị dùng đến cạn tiền.
  • Mất dữ liệu: tài liệu, email, cơ sở dữ liệu mà Agent được cấp quyền đọc bị sao chép.
  • Bị lợi dụng làm bàn đạp: VPS bị biến thành máy đào tiền ảo hoặc nơi phát tán thư rác.
  • Bị điều khiển từ xa: giao diện web của Agent để mở công khai và không có mật khẩu mạnh thì ai cũng ra lệnh được.

Một VPS mới tạo thường bị các công cụ tự động dò quét chỉ sau vài phút. Cổng SSH (22) và các cổng giao diện như 3000, 5678, 8080 là mục tiêu quen thuộc.

Tại sao VPS chạy AI Agent dễ bị tấn công?
Tại sao VPS chạy AI Agent dễ bị tấn công?

Vì sao tường lửa thông thường chưa đủ?

Tường lửa chặn cổng không dùng là bước tốt, nhưng bạn vẫn phải mở ít nhất một cổng để tự đăng nhập quản trị. Cổng đó chính là cửa sổ cho kẻ tấn công thử vận may. Cách tiếp cận tốt hơn là không mở cổng nào ra Internet, và để thiết bị của bạn vào VPS qua một đường hầm riêng. Đó là việc Tailscale làm rất tốt.

Vậy Tailscale là gì? Giúp bảo mật VPS chạy AI Agent như thế nào?

Tailscale là nền tảng kết nối mạng riêng dựa trên danh tính, cho phép các máy tính, VPS, điện thoại và dịch vụ giao tiếp với nhau thông qua một mạng riêng gọi là tailnet.

Thay vì phải mở SSH hoặc Dashboard quản trị ra Internet, bạn có thể đưa các dịch vụ này vào tailnet và chỉ cho thiết bị đã đăng nhập Tailscale truy cập.

Tailscale xây dựng kết nối dựa trên WireGuard. Dữ liệu giữa các thiết bị được mã hóa đầu cuối kể cả khi kết nối phải chuyển tiếp qua hệ thống relay của Tailscale.

Ví dụ, VPS AI Agent có:

  • Public IP: 103.xxx.xxx.xxx
  • Tailscale IP: 100.xxx.xxx.xxx
  • SSH: port 22
  • Dashboard AI Agent: port 3000

Thay vì truy cập: http://103.xxx.xxx.xxx:3000 bạn có thể chặn port 3000 trên public Internet và chỉ truy cập qua mạng Tailscale.

Đây chính là điểm quan trọng nhất khi bảo mật VPS chạy AI Agent bằng Tailscale.

Tailscale là gì?
Tailscale là gì

Mô hình bảo mật VPS AI Agent với Tailscale

Một cấu hình phù hợp cho phần lớn VPS AI Agent là:

Thành phầnPhương thức truy cập
SSHChỉ qua Tailscale
Dashboard AI AgentChỉ qua Tailscale
DatabaseChỉ localhost hoặc Tailscale
RedisChỉ localhost hoặc Tailscale
API quản trịChỉ Tailscale
OpenAI/OpenRouter/Claude APICho phép kết nối outbound
Telegram/Discord/SlackCho phép kết nối outbound
Website publicGiữ 80/443 nếu cần
Webhook publicChỉ public endpoint thực sự cần thiết

Điểm quan trọng là không phải đóng toàn bộ Internet của VPS. AI Agent vẫn cần truy cập Internet để gọi model, tìm kiếm dữ liệu, tải website hoặc giao tiếp với API bên ngoài. Phần cần hạn chế chủ yếu là kết nối đi vào VPS.

Chuẩn bị trước khi bảo mật VPS chạy AI Agent bằng Tailscale

Bạn cần có:

  1. Một VPS chạy Ubuntu hoặc Debian (các lệnh trong bài dùng Ubuntu 22.04/24.04).
  2. Quyền đăng nhập hiện tại vào VPS (SSH hoặc bảng điều khiển của nhà cung cấp).
  3. Một tài khoản Google, Microsoft hoặc GitHub để đăng ký Tailscale.
  4. Máy cá nhân (Windows, macOS, Linux) hoặc điện thoại để cài ứng dụng Tailscale.

Mẹo an toàn: hãy mở sẵn bảng điều khiển console của nhà cung cấp VPS trong một tab khác. Nếu lỡ khóa nhầm, bạn vẫn có đường vào để sửa.

Hướng dẫn bảo mật VPS chạy AI Agent bằng Tailscale 

Bước 1: Cài Tailscale trên máy tính quản trị

Trước tiên, cài Tailscale trên máy tính bạn sử dụng để quản trị VPS.

Tailscale hỗ trợ Windows, macOS, Linux, Android và iOS.

Cài Tailscale trên máy tính quản trị
Cài Tailscale trên máy tính quản trị

Sau khi cài đặt:

  1. Mở Tailscale.
  2. Đăng nhập bằng tài khoản Google, Microsoft, GitHub hoặc nhà cung cấp danh tính được hỗ trợ.
  3. Giữ Tailscale hoạt động trên máy tính.
Cài Tailscale trên máy tính quản trị
Cài Tailscale trên máy tính quản trị

Tailscale dựa vào nhà cung cấp danh tính để xác thực người dùng và hỗ trợ các chính sách như MFA từ nhà cung cấp đó.

Bước 2: Cài Tailscale trên VPS

Trên VPS, SSH vào máy chủ như bình thường rồi chạy:

curl -fsSL https://tailscale.com/install.sh | sh

sudo tailscale up --ssh

Lệnh thứ hai sẽ hiển thị một đường dẫn xác thực.

Cài Tailscale trên VPS
Cài Tailscale trên VPS

Mở đường dẫn trên trình duyệt, đăng nhập tài khoản Tailscale đang sử dụng trên máy cá nhân và xác nhận thêm VPS vào tailnet.

Cài Tailscale trên VPS
Cài Tailscale trên VPS

Bước 3: Kiểm tra kết nối trước khi đóng SSH public

Trên VPS, chạy:

tailscale ip -4

Bạn sẽ nhận được địa chỉ dạng:

100.x.x.x
Kiểm tra kết nối trước khi đóng SSH public
Kiểm tra kết nối trước khi đóng SSH public

Trên máy cá nhân đã bật Tailscale, mở Terminal hoặc PowerShell và thử:

ssh tenuser@100.x.x.x

Nếu đăng nhập thành công, kết nối qua Tailscale đã hoạt động.

Kiểm tra kết nối trước khi đóng SSH public
Kiểm tra kết nối trước khi đóng SSH public

Quan trọng: Chỉ chuyển sang bước tiếp theo sau khi đã SSH thành công qua Tailscale. Nên giữ phiên SSH hiện tại đang mở để có đường khôi phục nếu cấu hình firewall sai.

Bước 4: Đóng các cổng quản trị công khai bằng UFW

Sau khi chắc chắn có thể SSH qua Tailscale, cấu hình UFW.

Cài UFW:

apt update

apt install ufw -y

Sau đó chạy các lệnh:

sudo ufw default deny incoming

sudo ufw default allow outgoing

sudo ufw allow in on tailscale0

sudo ufw enable
 Đóng các cổng quản trị công khai bằng UFW
Đóng các cổng quản trị công khai bằng UFW

Kiểm tra:

sudo ufw status

Nếu trước đây đã mở port SSH 22:

sudo ufw status numbered
 Đóng các cổng quản trị công khai bằng UFW
Đóng các cổng quản trị công khai bằng UFW

Sau đó xóa rule tương ứng:

sudo ufw delete <số-rule>

Ví dụ:

sudo ufw delete 1

Nếu nhà cung cấp VPS có Cloud Firewall, Security Group hoặc Network Firewall, hãy kiểm tra và đóng port 22 public tại đây sau khi SSH qua Tailscale đã hoạt động ổn định.

Lưu ý nếu AI Agent chạy bằng Docker

Docker có thể tạo firewall rule riêng khi publish port. Vì vậy, cấu hình:

-p 3000:3000

có thể khiến Dashboard được truy cập từ Internet ngay cả khi UFW đang chặn port tương ứng.

Thay vào đó, hãy bind Dashboard vào localhost:

-p 127.0.0.1:3000:3000

Ví dụ với Docker Compose:

ports:

  - "127.0.0.1:3000:3000"

Như vậy, Dashboard chỉ được truy cập trực tiếp từ VPS. Ở bước tiếp theo, Tailscale Serve sẽ tạo đường truy cập riêng an toàn hơn.

Nếu VPS còn chạy website, webhook hoặc API bắt buộc phải public, đừng chặn các cổng cần thiết như 80/443. Chỉ khóa những cổng quản trị không cần Internet truy cập trực tiếp.

Bước 5: Sử dụng Tailscale SSH

Do đã chạy:

sudo tailscale up --ssh

ở Bước 2, VPS đã bật Tailscale SSH.

Bạn có thể SSH qua Tailscale IP:

ssh tenuser@100.x.x.x

hoặc MagicDNS:

ssh tenuser@ten-vps

Tailscale SSH xử lý việc xác thực cho các kết nối SSH đi qua mạng Tailscale, nhờ đó giảm nhu cầu tự phân phối SSH key giữa nhiều thiết bị.

Nếu VPS vẫn còn dịch vụ OpenSSH truyền thống, bạn cũng nên tắt đăng nhập bằng mật khẩu.

Mở:

sudo nano /etc/ssh/sshd_config

Tìm hoặc thêm:

PasswordAuthentication no

Sau đó lưu file rồi chạy lệnh:

sudo systemctl restart ssh

Chỉ thực hiện thay đổi này sau khi đã kiểm tra Tailscale SSH hoạt động bình thường.

Bước 6: Đưa Dashboard AI Agent vào mạng riêng bằng Tailscale Serve

Giả sử Dashboard AI Agent đang chạy nội bộ tại: 127.0.0.1:3000

Chạy:

sudo tailscale serve --bg localhost:3000

Tailscale sẽ cung cấp địa chỉ HTTPS dạng: https://ten-vps.ten-tailnet.ts.net

Đưa Dashboard AI Agent vào mạng riêng bằng Tailscale Serve
Đưa Dashboard AI Agent vào mạng riêng bằng Tailscale Serve

Mở địa chỉ này trên máy đã tham gia tailnet để truy cập Dashboard.

Nếu HTTPS chưa được bật cho tailnet, Tailscale có thể hiển thị đường dẫn để bạn xác nhận kích hoạt.

Đưa Dashboard AI Agent vào mạng riêng bằng Tailscale Serve
Đưa Dashboard AI Agent vào mạng riêng bằng Tailscale Serve

Luồng truy cập lúc này sẽ là:

Máy cá nhân

      ↓

   Tailscale

      ↓

HTTPS Serve

      ↓

127.0.0.1:3000

      ↓

AI Agent

Dashboard không cần mở port 3000 trực tiếp ra Internet.

Serve khác Funnel thế nào?

  • Tailscale Serve: chỉ thiết bị được cấp quyền trong tailnet truy cập.
  • Tailscale Funnel: đưa dịch vụ ra Internet công khai.

Với Dashboard quản trị AI Agent, nên sử dụng Serve. Funnel chỉ phù hợp khi bạn chủ động cần public một dịch vụ, chẳng hạn webhook nhận request từ nền tảng bên ngoài.

Bước 7: Giới hạn quyền truy cập bằng Grants

Mặc định, tailnet mới có chính sách cho phép các thiết bị kết nối với nhau. Vì vậy, nếu tailnet có nhiều laptop, server hoặc thành viên khác, bạn nên thiết lập Access Controls để áp dụng nguyên tắc quyền tối thiểu.

Tailscale hiện khuyến nghị sử dụng Grants cho các cấu hình mới. Ví dụ bạn có tài khoản admin@example.com và muốn dành VPS cho AI Agent. Trước tiên, vào Tailscale Admin Console → Access controls -> JSON Editor.

Giới hạn quyền truy cập bằng Grants
Giới hạn quyền truy cập bằng Grants

Nhập lệnh cấu hình:

{

  "tagOwners": {

    "tag:ai-agent": ["admin@example.com"]

  },

  "grants": [

    {

      "src": ["admin@example.com"],

      "dst": ["tag:ai-agent"],

      "ip": ["tcp:22", "tcp:443"]

    }

  ],

  "ssh": [

    {

      "action": "check",

      "src": ["admin@example.com"],

      "dst": ["tag:ai-agent"],

      "users": ["tenuser"]

    }

  ]

}

Lưu ý: Thay admin@example.com bằng tài khoản Tailscale của bạn và tenuser bằng tài khoản Linux trên VPS.

Cấu hình trên có ý nghĩa:

  • Chỉ tài khoản quản trị đã chỉ định được truy cập VPS.
  • Chỉ cho phép TCP 22 và TCP 443.
  • Tailscale SSH yêu cầu bước xác nhận bằng chế độ check.
  • Chỉ cho đăng nhập bằng tài khoản Linux được chỉ định.
  • VPS được nhận dạng bằng tag:ai-agent.

Sau đó gắn tag cho VPS:

sudo tailscale set --advertise-tags=tag:ai-agent

Kiểm tra:

tailscale status

Một lợi ích khác của tag là key expiry được tắt mặc định cho thiết bị gắn tag, phù hợp với VPS và server cần chạy AI Agent liên tục.

Tuy nhiên, sau khi gắn tag, VPS sử dụng danh tính của tag thay cho danh tính người dùng. Vì vậy, hãy thiết lập Grants và SSH policy trước hoặc đồng thời với quá trình gắn tag để tránh mất quyền truy cập.

Lưu ý: giao diện và tính năng của Tailscale có thể thay đổi theo thời gian. Hãy đối chiếu với tài liệu chính thức tại tailscale.com/kb trước khi áp dụng cho hệ thống quan trọng.

Những lỗi thường gặp khi bảo mật VPS chạy AI Agent bằng Tailscale

  • Đóng cổng 22 trước khi kiểm tra Tailscale: Dẫn đến tự khóa mình ngoài máy chủ. Luôn làm Bước 3 trước Bước 4.
  • Quên Docker bỏ qua tường lửa: Cổng vẫn mở dù UFW báo đã chặn. Hãy gắn cổng vào 127.0.0.1.
  • Để chính sách mặc định “cho phép tất cả”: Ai vào được mạng là vào được mọi máy. Hãy viết grants cụ thể.
  • Dùng Funnel cho giao diện Agent: Việc này đưa Agent ra công khai, đi ngược mục tiêu bảo mật.
  • Cấp khóa API quá rộng: Ngay cả khi VPS an toàn, hãy giới hạn hạn mức chi tiêu và quyền của khóa API. Agent chỉ cần quyền đủ dùng.
  • Không cập nhật hệ thống: Chạy sudo apt update && sudo apt upgrade định kỳ và cập nhật Tailscale để nhận bản vá mới.
Những lỗi thường gặp khi bảo mật VPS chạy AI Agent bằng Tailscale
Những lỗi thường gặp khi bảo mật VPS chạy AI Agent bằng Tailscale

Danh sách kiểm tra bảo mật nhanh

  • Tailscale đã cài và đăng nhập trên VPS lẫn máy cá nhân
  • SSH vào VPS qua địa chỉ Tailscale thành công
  • UFW chặn mọi kết nối đến, chỉ cho phép giao diện tailscale0
  • Đã đóng cổng 22 và các cổng giao diện ở tường lửa nhà cung cấp
  • Container Docker gắn cổng vào 127.0.0.1
  • Giao diện Agent truy cập qua Tailscale Serve (HTTPS)
  • Đã viết grants thay cho chính sách mặc định cho phép tất cả
  • Khóa API có hạn mức chi tiêu và quyền tối thiểu
  • Hệ thống và Tailscale được cập nhật định kỳ

Kết luận

Bảo mật VPS chạy AI Agent bằng Tailscale không yêu cầu thay đổi toàn bộ kiến trúc máy chủ. Bạn chỉ cần đưa các dịch vụ quản trị như SSH, Dashboard và database vào mạng riêng, kiểm tra kết nối qua Tailscale rồi dùng firewall đóng những port public không cần thiết.

Hãy bắt đầu ngay hôm nay với VPS đang chạy Agent của bạn, và dùng danh sách kiểm tra phía trên để rà soát từng mục. Một thiết lập bảo mật gọn gàng sẽ giúp bạn yên tâm giao việc cho AI Agent mà không phải lo ngại về những vị khách không mời.

Những câu hỏi thường gặp

Tailscale có thay thế firewall trên VPS không?

Không. Tailscale tạo mạng riêng và kiểm soát quyền truy cập giữa các thiết bị, nhưng VPS vẫn có thể nhận traffic từ Internet qua public IP nếu firewall cho phép. Vì vậy, nên sử dụng Tailscale kết hợp UFW hoặc firewall của nhà cung cấp VPS.

Dùng Tailscale có cần mở port 22 ra Internet không?

Không. Sau khi xác nhận SSH qua Tailscale hoạt động, bạn có thể đóng port 22 public và chỉ SSH thông qua địa chỉ Tailscale.

Tailscale có phù hợp cho VPS chạy AI Agent 24/7 không?

Có. Server có thể duy trì trong tailnet và tiếp tục chạy AI Agent 24/7. Với VPS quan trọng, hãy chú ý chính sách key expiry, phương thức khôi phục truy cập và quyền của từng thiết bị. Tailscale cho phép điều chỉnh key expiry; với server đáng tin cậy, quản trị viên cũng có thể cấu hình phù hợp với nhu cầu vận hành.

Tôi có thể truy cập AI Agent từ điện thoại không?

Được. Cài ứng dụng Tailscale trên iOS hoặc Android, đăng nhập cùng tài khoản, rồi mở địa chỉ HTTPS do Tailscale Serve cung cấp. Bạn không cần mở cổng công khai.

Nếu Tailscale gặp sự cố, tôi có bị mất quyền vào VPS không?

Kết nối giữa các thiết bị thường đi trực tiếp, nhưng việc đăng nhập và cấp quyền vẫn phụ thuộc dịch vụ điều phối của Tailscale. Vì vậy, hãy luôn giữ sẵn đường dự phòng là bảng điều khiển console của nhà cung cấp VPS để xử lý khi cần.

Đông Tùng

Senior Technology Writer

Là cử nhân Quản trị kinh doanh của Trường Đại học Tài chính - Marketing, Tùng bắt đầu làm việc tại Tino Group từ năm 2021 ở vị trí Content Marketing để thỏa mãn niềm đam mê viết lách của bản thân. Sở hữu khả năng sáng tạo đặc biệt, anh cùng đội ngũ của mình đã tạo nên những chiến dịch quảng cáo độc đáo cùng vô số bài viết hữu ích về nhiều chủ đề khác nhau. Sự tỉ mỉ, kiên trì và tinh thần sáng tạo của Tùng đã góp phần lớn vào thành công của Tino Group trong lĩnh vực marketing trực tuyến.

Xem thêm bài viết

Bài viết liên quan

Xem nhiều