❤️ AZDIGI chính thức cập nhật hệ thống blog mới hoàn chỉnh. Tuy nhiên có thể một số bài viết bị sai lệch hình ảnh, hãy ấn nút Báo cáo bài viết ở cuối bài để AZDIGI cập nhật trong thời gian nhanh nhất. Chân thành cám ơn.

Bạn đang quản lý nhiều VPS và muốn kết nối chúng thành một mạng nội bộ an toàn mà không cần mở port ra public? Tailscale là giải pháp hoàn hảo cho nhu cầu này. Trong hướng dẫn này, đội ngũ kỹ thuật AZDIGI sẽ hướng dẫn bạn từng bước cài đặt, cấu hình và sử dụng Tailscale trên VPS để tạo mạng VPN riêng với độ bảo mật cao nhất.

Sơ đồ mạng Tailscale kết nối nhiều VPS - hướng dẫn tailscale

Tailscale là gì? Tại sao nên dùng trên VPS?

Tailscale là dịch vụ VPN mã nguồn mở được xây dựng trên nền tảng WireGuard, cho phép kết nối các thiết bị thành một mạng LAN ảo (gọi là tailnet). Khác với VPN truyền thống sử dụng kiến trúc client-server, Tailscale hoạt động theo mô hình peer-to-peer mesh network, giúp các thiết bị kết nối trực tiếp với nhau mà không cần đi qua server trung gian.

Tại sao người quản trị VPS nên dùng Tailscale?

Qua hơn 9 năm vận hành hệ thống server cho hàng chục nghìn khách hàng, chúng tôi nhận thấy các vấn đề phổ biến sau:

  1. Rủi ro bảo mật SSH: Mở port 22 ra public Internet khiến server liên tục bị brute force attack. Theo thống kê, một VPS mới có thể nhận hàng nghìn request đăng nhập SSH trái phép mỗi ngày.
  2. Khó khăn kết nối nhiều VPS: Khi cần tạo mạng internal giữa các server (database cluster, microservices), việc dùng public IP vừa tốn chi phí, vừa không an toàn.
  3. Vấn đề NAT và Firewall: Nhiều nhà mạng tại Việt Nam sử dụng CG-NAT, khiến việc thiết lập VPN truyền thống trở nên phức tạp.

Tailscale giải quyết triệt để các vấn đề này bằng cách:

  • Tự động xử lý NAT traversal với tỷ lệ thành công trên 95%
  • Mã hóa end-to-end với WireGuard
  • Không cần mở port, không cần IP tĩnh
  • Cài đặt và sử dụng cực kỳ đơn giản

Ưu điểm của Tailscale so với VPN truyền thống

Tiêu chíVPN truyền thốngTailscale
Cài đặtPhức tạp, cần cấu hình serverĐơn giản, chỉ cần 2-3 lệnh
NAT traversalCần port forwardingTự động xử lý
Kiến trúcClient-Server (hub-spoke)Peer-to-peer mesh
Hiệu suấtPhụ thuộc vào server VPNKết nối trực tiếp, độ trễ thấp
Bảo mậtTùy thuộc vào cấu hìnhWireGuard mặc định
Quản lýThủ côngWeb dashboard tập trung
Đa thiết bịHạn chếHỗ trợ kết nối máy tính, VPS, điện thoại,..dễ dàng

Yêu cầu và chuẩn bị

Trước khi bắt đầu, bạn cần chuẩn bị:

Yêu cầu hệ thống

  • VPS chạy Linux (Ubuntu 18.04+, Debian 10+, CentOS 7+, AlmaLinux, Rocky Linux)
  • Quyền root hoặc sudo
  • Kết nối Internet

Yêu cầu tài khoản

  • Tài khoản Tailscale (đăng ký miễn phí tại tailscale.com)
  • Có thể đăng nhập bằng Google, Microsoft, GitHub hoặc email

Gói miễn phí Tailscale bao gồm

  • Tối đa 100 thiết bị
  • 3 tài khoản người dùng
  • Đầy đủ tính năng cơ bản

Cài đặt Tailscale trên Ubuntu/Debian

Bước 1: Cài đặt bằng script tự động

Cách nhanh nhất để cài đặt Tailscale trên Ubuntu/Debian:

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

Script này sẽ tự động:

  • Thêm repository Tailscale
  • Import GPG key
  • Cài đặt package tailscale
  • Khởi động service tailscaled

Bước 2: Cài đặt thủ công (tùy chọn)

Nếu bạn muốn kiểm soát quá trình cài đặt, bạn có thể truy cập trang https://tailscale.com/download/linux để lấy lệnh cài đặt dựa theo hệ điều hành đang sử dụng.

Ví dụ lệnh cài thủ công cho Ubuntu 22.04:

# Thêm GPG key
curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/jammy.noarmor.gpg | sudo tee /usr/share/keyrings/tailscale-archive-keyring.gpg >/dev/null

# Thêm repository curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/jammy.tailscale-keyring.list | sudo tee /etc/apt/sources.list.d/tailscale.list

# Cập nhật và cài đặt sudo apt-get update sudo apt-get install tailscale

Bước 3: Kết nối vào Tailnet

Sau khi cài đặt xong, kết nối VPS vào mạng Tailscale:

sudo tailscale up

Terminal sẽ hiển thị một URL để xác thực. Copy URL này và mở trong trình duyệt để đăng nhập vào tài khoản Tailscale của bạn.

To authenticate, visit:
https://login.tailscale.com/a/xxxxxxxxxxxxx

Sau khi đăng nhập thành công, VPS sẽ tự động được thêm vào tailnet của bạn.

Bước 4: Kiểm tra kết nối

Kiểm tra trạng thái Tailscale:

tailscale status

Output mẫu:

100.64.0.1      vps-azdigi-1         linux   -
100.64.0.2      macbook-pro          macOS   idle, tx 1234 rx 5678
100.64.0.3      iphone               iOS     idle

Xem IP Tailscale của VPS:

tailscale ip -4

Cài đặt Tailscale trên CentOS/AlmaLinux

Bước 1: Thêm repository

# Thêm Tailscale repository
sudo dnf config-manager --add-repo https://pkgs.tailscale.com/stable/centos/9/tailscale.repo

Với CentOS 7, thay dnf bằng yum và sử dụng repository phù hợp.

Bước 2: Cài đặt Tailscale

sudo dnf install tailscale

Bước 3: Khởi động service

sudo systemctl enable --now tailscaled

Bước 4: Kết nối vào Tailnet

sudo tailscale up

Tương tự như Ubuntu, mở URL trong trình duyệt để xác thực.

Cấu hình Tailscale cơ bản

Các lệnh Tailscale thường dùng

LệnhMô tả
tailscale statusXem trạng thái và danh sách thiết bị
tailscale ipXem IP Tailscale của thiết bị
tailscale ping <hostname>Ping đến thiết bị khác trong tailnet
tailscale netcheckKiểm tra kết nối mạng
tailscale upKết nối vào tailnet
tailscale downNgắt kết nối khỏi tailnet
tailscale logoutĐăng xuất khỏi tài khoản

Cấu hình tự động kết nối khi boot

Tailscale tự động khởi động cùng hệ thống. Để đảm bảo:

sudo systemctl enable tailscaled

Đặt hostname cho thiết bị

Mặc định, Tailscale sử dụng hostname của hệ thống. Để đổi:

sudo tailscale up --hostname=vps-production-01

Kết nối nhiều VPS thành mạng internal

Giao diện Tailscale Admin Console quản lý các thiết bị trong tailnet
Mô phỏng giao diện Dashboard quản lý của Tailscale

Đây là use case phổ biến nhất của Tailscale trong môi trường server. Ví dụ bạn có:

  • VPS 1: Web Server
  • VPS 2: Database Server
  • VPS 3: Redis/Cache Server

Và bạn cần các dịch vụ này giao tiếp với nhau thông qua địa chỉ IP cho mạng riêng của Tailscale để kết nối an toàn bảo mật mà không cần phải phơi bày ứng dụng ra môi trường công khai trên internet.

Bước 1: Cài đặt Tailscale trên tất cả VPS

Lặp lại quy trình cài đặt ở trên cho mỗi VPS.

Bước 2: Xác thực tất cả VPS vào cùng một tài khoản

Đảm bảo tất cả VPS được xác thực vào cùng một tài khoản Tailscale. Sau đó tại trang dashboard của Tailscale bạn có thể xem được địa chỉ IP nội bộ của từng VPS để có thể kết nối với nhau.

Bước 3: Kiểm tra kết nối

Từ VPS 1, ping đến VPS 2:

tailscale ping vps-database

Hoặc sử dụng IP Tailscale trực tiếp:

ping 100.64.0.2

Bước 4: Cấu hình ứng dụng sử dụng IP Tailscale

Ví dụ cấu hình MySQL chỉ lắng nghe trên IP Tailscale:

# /etc/mysql/mysql.conf.d/mysqld.cnf
bind-address = 100.64.0.2

Như vậy, database chỉ có thể truy cập từ các thiết bị trong tailnet, hoàn toàn cách ly khỏi Internet công cộng.

Các tính năng nâng cao

Exit Node – Biến VPS thành VPN Server

Exit Node cho phép bạn định tuyến toàn bộ traffic Internet của thiết bị qua một VPS. Đây là tính năng hữu ích khi:

  • Cần bảo vệ traffic khi dùng WiFi công cộng
  • Muốn sử dụng IP của VPS khi truy cập Internet

Để thiết lập Exit Node, xem hướng dẫn chi tiết tại bài viết Tailscale Exit Node: Biến VPS thành VPN Server cá nhân.

Subnet Router – Mở rộng tailnet cho thiết bị không cài được Tailscale

Subnet Router cho phép các thiết bị trong tailnet truy cập vào một subnet cụ thể mà không cần cài Tailscale trên từng thiết bị trong subnet đó.

Bước 1: Bật IP forwarding

echo 'net.ipv4.ip_forward = 1' | sudo tee -a /etc/sysctl.d/99-tailscale.conf
echo 'net.ipv6.conf.all.forwarding = 1' | sudo tee -a /etc/sysctl.d/99-tailscale.conf
sudo sysctl -p /etc/sysctl.d/99-tailscale.conf

Bước 2: Advertise subnet

sudo tailscale up --advertise-routes=192.168.1.0/24

Bước 3: Phê duyệt trong Admin Console

Truy cập Tailscale Admin Console và phê duyệt subnet route.

MagicDNS – Truy cập bằng hostname

Tailscale tự động cung cấp DNS nội bộ, cho phép bạn truy cập thiết bị bằng hostname thay vì IP:

ssh user@vps-production-01
# Thay vì: ssh user@100.64.0.1

Best practices bảo mật

Dựa trên kinh nghiệm vận hành hệ thống tại AZDIGI, chúng tôi khuyến nghị:

1. Tắt SSH trên public IP

Sau khi cài Tailscale, cấu hình SSH chỉ lắng nghe trên IP Tailscale:

# /etc/ssh/sshd_config
ListenAddress 100.64.0.1

Xem chi tiết tại bài viết SSH an toàn qua Tailscale.

2. Sử dụng ACLs để giới hạn quyền truy cập

Tailscale cho phép cấu hình Access Control Lists (ACLs) để kiểm soát thiết bị nào có thể kết nối với nhau:

{
  "acls": [
    {"action": "accept", "src": ["group:admin"], "dst": ["*:*"]},
    {"action": "accept", "src": ["group:dev"], "dst": ["tag:dev:*"]}
  ]
}

3. Bật xác thực 2 yếu tố (2FA)

Kích hoạt 2FA cho tài khoản Tailscale để tăng cường bảo mật.

4. Review định kỳ danh sách thiết bị

Kiểm tra Admin Console thường xuyên để phát hiện và xóa các thiết bị không còn sử dụng.

5. Sử dụng Key Expiry

Cấu hình key expiry để thiết bị tự động bị ngắt kết nối sau một thời gian nhất định, buộc phải xác thực lại.

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

Tailscale có miễn phí không?

Có. Gói Personal (miễn phí) cho phép 100 thiết bị và 3 người dùng, đủ cho hầu hết nhu cầu cá nhân và doanh nghiệp nhỏ.

Tailscale có làm chậm kết nối không?

Không đáng kể. Tailscale sử dụng kết nối peer-to-peer trực tiếp nên độ trễ rất thấp. MTU giảm từ 1500 xuống 1420, gây giảm khoảng 5-8% băng thông lý thuyết.

Tailscale có an toàn không?

Tailscale sử dụng WireGuard – giao thức VPN hiện đại với mã hóa mạnh mẽ (Curve25519, ChaCha20, Poly1305). Dữ liệu được mã hóa end-to-end giữa các thiết bị.

Tailscale hoạt động như thế nào khi bị CG-NAT?

Tailscale có khả năng NAT traversal xuất sắc với tỷ lệ thành công trên 95%. Nếu kết nối trực tiếp không khả thi, traffic sẽ được relay qua DERP servers.

Làm sao để giảm độ trễ khi dùng Tailscale tại Việt Nam?

  • Liên hệ nhà mạng để mở CG-NAT (ít nhất một đầu)
  • Sử dụng tailscale netcheck để kiểm tra và tối ưu kết nối
  • Cân nhắc self-host DERP server tại Việt Nam nếu độ trễ vẫn cao

Kết luận

Tailscale là giải pháp VPN mesh thế hệ mới, đặc biệt phù hợp cho người quản trị VPS muốn:

  • Tạo mạng internal an toàn giữa nhiều server
  • Bảo vệ SSH khỏi brute force attack
  • Kết nối các thiết bị từ xa một cách đơn giản

Với việc cài đặt chỉ trong vài phút và sử dụng miễn phí cho đến 100 thiết bị, không có lý do gì để không thử Tailscale cho hạ tầng server của bạn.

Bắt đầu ngay: Nếu bạn chưa có VPS, hãy đăng ký Cloud Server tại AZDIGI để thực hành ngay hôm nay. Đội ngũ kỹ thuật AZDIGI luôn sẵn sàng hỗ trợ bạn 24/7 trong quá trình triển khai.

Chia sẻ:
Bài viết đã được kiểm duyệt bởi AZDIGI Team

Về tác giả

Thạch Phạm

Thạch Phạm

Đồng sáng lập và Giám đốc điều hành của AZDIGI. Có hơn 15 năm kinh nghiệm trong phổ biến kiến thức liên quan đến WordPress tại thachpham.com, phát triển website và phát triển hệ thống.

Hơn 10 năm phục vụ 80.000+ khách hàng

Bắt đầu dự án web của bạn với AZDIGI