❤️ 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.

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:
- 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.
- 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.
- 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ống | Tailscale |
|---|---|---|
| Cài đặt | Phức tạp, cần cấu hình server | Đơn giản, chỉ cần 2-3 lệnh |
| NAT traversal | Cần port forwarding | Tự động xử lý |
| Kiến trúc | Client-Server (hub-spoke) | Peer-to-peer mesh |
| Hiệu suất | Phụ thuộc vào server VPN | Kết nối trực tiếp, độ trễ thấp |
| Bảo mật | Tùy thuộc vào cấu hình | WireGuard mặc định |
| Quản lý | Thủ công | Web 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ệnh | Mô tả |
|---|---|
tailscale status | Xem trạng thái và danh sách thiết bị |
tailscale ip | Xem IP Tailscale của thiết bị |
tailscale ping <hostname> | Ping đến thiết bị khác trong tailnet |
tailscale netcheck | Kiểm tra kết nối mạng |
tailscale up | Kết nối vào tailnet |
tailscale down | Ngắ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

Đâ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.
Có thể bạn cần xem thêm
- Tailscale là gì? Hướng dẫn chi tiết từ A-Z
- Tailscale Exit Node: Biến VPS thành VPN Server cá nhân
- SSH an toàn qua Tailscale: Bảo vệ VPS không cần mở port 22
- Cài đặt WireGuard với Docker Compose trên Ubuntu 22.04
- Hướng dẫn cài đặt WireGuard trên Ubuntu 20.04
- Firewall trên Linux VPS - UFW và firewalld từ cơ bản đến thực tế
Về tác giả
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.