Hướng dẫn cài WireGuard VPN trên mọi thiết bị 2026
Cài WireGuard VPN server trên VPS Ubuntu 24.04, sau đó kết nối từ iOS, Android, macOS, Windows, Linux, router. Tốc độ nhanh gấp 3 lần OpenVPN, throughput đạt 850Mbps trên 1Gbps NIC.
TL;DR
WireGuard là chuẩn VPN modern thay thế OpenVPN/IPsec. Kernel module, 4000 dòng code (vs OpenVPN 100K dòng), latency thấp hơn 40%, throughput cao hơn 3×. Setup server 10 phút trên VPS, client config bằng QR code. Hỗ trợ tất cả OS đã có app native chính chủ.
WireGuard là gì và vì sao nhanh hơn OpenVPN
WireGuard (do Jason Donenfeld phát triển, merge vào Linux kernel 5.6 từ 2020) là giao thức VPN sử dụng các thuật toán mật mã hiện đại: ChaCha20 cho symmetric encryption, Poly1305 cho authentication, Curve25519 cho key exchange, BLAKE2s cho hashing. So với OpenVPN (AES-256-GCM + RSA-2048 + SHA-256):
| Tiêu chí | WireGuard | OpenVPN UDP | IPsec/IKEv2 |
|---|---|---|---|
| Codebase | ~4.000 dòng | ~100.000 dòng | ~400.000 dòng |
| Throughput (1Gbps NIC) | 850 Mbps | 280 Mbps | 620 Mbps |
| Latency overhead | +0.4ms | +1.2ms | +0.8ms |
| Handshake time | ~50ms | ~600ms | ~300ms |
| Roaming (chuyển mạng) | Liền mạch | Reconnect | Reconnect |
| CPU usage @ 100Mbps | 4% | 22% | 14% |
Vì code nhỏ và kernel-space, WireGuard ít bug bảo mật hơn. Cisco Talos audit 2023 không tìm được CVE nào critical. So với OpenVPN có 14 CVE high-severity trong 5 năm.
Bước 1: Setup WireGuard server trên VPS
Cần 1 VPS có IP public - bạn có thể dùng Cloud VPS Việt Nam nếu mục đích là chia sẻ mạng nội bộ, hoặc VPS US nếu muốn bypass geo-block.
Cài WireGuard trên Ubuntu 24.04
# SSH vào VPS
ssh [email protected]
apt update && apt install -y wireguard wireguard-tools qrencode iptables
# Bật IPv4 forwarding
echo 'net.ipv4.ip_forward=1' >> /etc/sysctl.conf
sysctl -p
# Tạo key server
cd /etc/wireguard
umask 077
wg genkey | tee server.key | wg pubkey > server.pub
# Server config
cat > /etc/wireguard/wg0.conf <
Mở port 51820/UDP trên firewall
ufw allow 22/tcp
ufw allow 51820/udp
ufw --force enable
Bước 2: Tạo client config
Script tự động tạo client + xuất QR code:
cat > /usr/local/bin/wg-add-client <<'EOF'
#!/bin/bash
NAME=$1
[ -z "$NAME" ] && { echo "Usage: wg-add-client NAME"; exit 1; }
cd /etc/wireguard
umask 077
# Lấy IP tiếp theo
LAST=$(grep -E '10.7.0.[0-9]+' wg0.conf | awk -F. '{print $4}' | sort -n | tail -1)
LAST=${LAST:-1}
IP="10.7.0.$((LAST+1))"
wg genkey | tee ${NAME}.key | wg pubkey > ${NAME}.pub
PSK=$(wg genpsk)
echo $PSK > ${NAME}.psk
SERVER_PUB=$(cat server.pub)
ENDPOINT=$(curl -s ifconfig.me):51820
cat > ${NAME}.conf < > wg0.conf <
Bước 3: Cài client trên từng nền tảng
iOS / iPadOS
- Cài app WireGuard từ App Store (chính chủ, free).
- Mở app → "+" → Create from QR code.
- Scan QR hiển thị từ terminal server.
- Bật toggle, iOS sẽ xin permission install VPN profile.
- Test: vào
ifconfig.metrên Safari, IP phải đổi sang IP server.
Android
- Cài app WireGuard từ Play Store (org.wireguard.android).
- "+" → Scan from QR code.
- Bật toggle. Android cho phép "Allow this app to make VPN connections".
- Lưu ý: nếu dùng MIUI/HarmonyOS, tắt battery optimization cho WireGuard để không bị kill background.
macOS
brew install wireguard-tools
# Hoặc cài WireGuard.app từ Mac App Store
# CLI mode
sudo wg-quick up ~/Downloads/macbook.conf
sudo wg-quick down ~/Downloads/macbook.conf
# GUI mode: kéo file .conf vào WireGuard.app, toggle "On"
Windows 10/11
- Tải installer tại
wireguard.com/install(MSI). - Mở WireGuard app → Import tunnel from file → chọn
.conf. - Click Activate. Windows tự thêm route 0.0.0.0/0 và DNS.
- Lưu ý Windows Defender Firewall sẽ hỏi quyền cho lần đầu.
Linux (Ubuntu, Fedora, Arch)
# Ubuntu/Debian
sudo apt install wireguard-tools resolvconf
sudo cp client.conf /etc/wireguard/wg0.conf
sudo wg-quick up wg0
sudo systemctl enable wg-quick@wg0 # auto-start
# Test
ping 10.7.0.1
curl ifconfig.me
Router (OpenWrt / Asus Merlin / Mikrotik)
Cài WireGuard trên router để toàn bộ thiết bị trong nhà đi qua VPN - gồm Smart TV, IoT, console. Phù hợp xem Netflix US trên TV (xem stream Netflix US 2026).
# OpenWrt
opkg update && opkg install wireguard-tools luci-app-wireguard
# Cấu hình qua LuCI: Network → Interfaces → Add → WireGuard
# Asus Merlin
# SSH router, kéo client.conf lên /jffs/wireguard/, dùng wgm CLI tool
Tinh chỉnh hiệu năng
MTU optimization
MTU mặc định 1420 phù hợp đa số trường hợp. Nếu chạy qua PPPoE FPT/VNPT (MTU 1492) cần giảm xuống 1380. Test bằng:
ping -M do -s 1352 8.8.8.8 # với MTU 1380, ping size = MTU - 28
# Nếu thấy "Packet needs to be fragmented", giảm thêm 10 đến khi pass
Multi-thread với multiple cores
WireGuard kernel mặc định single-thread per tunnel. Để tận dụng nhiều core trên VPS:
# Bật RPS (Receive Packet Steering)
echo f > /sys/class/net/wg0/queues/rx-0/rps_cpus
ethtool -L eth0 combined 4 # nếu NIC hỗ trợ multi-queue
BBR congestion control
# BBR tăng throughput 30-50% trên kết nối quốc tế
echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
sysctl -p
Split tunneling - chỉ định traffic nào đi VPN
Ví dụ: chỉ định traffic đến Netflix (199.232.0.0/16) đi VPN, còn lại đi trực tiếp:
# Trên client config
[Peer]
PublicKey = ...
AllowedIPs = 199.232.0.0/16, 23.246.0.0/16, 38.72.126.0/24
Hoặc ngược lại - exclude IP nội bộ Việt Nam khỏi VPN để truy cập web .vn nhanh hơn:
AllowedIPs = 0.0.0.0/1, 128.0.0.0/3, 160.0.0.0/5, ...
Bảo mật nâng cao
1. Preshared Key (PSK)
Script trên đã tự gen PSK cho mỗi client. PSK thêm 1 lớp symmetric trên top của Curve25519 - chống được tấn công nếu trong tương lai quantum computing crack được elliptic curve.
2. Rotate key 90 ngày
# Cron mỗi 3 tháng
0 0 1 */3 * /usr/local/bin/wg-rotate-keys
3. Fail2ban cho SSH
WireGuard không có endpoint để brute force (silent on UDP nếu sai key), nhưng SSH thì có. Cài fail2ban để bảo vệ port 22.
4. Audit log connections
# Log mỗi handshake
journalctl -u wg-quick@wg0 -f
# Hoặc dùng wg-dashboard / wg-easy cho UI
Use case phổ biến
- Remote work: nhân viên kết nối về office LAN xem file SMB, in máy in công ty.
- Bypass geo-block: xem Netflix US, BBC iPlayer, Hulu (xem hướng dẫn Netflix).
- Public WiFi protection: mã hoá traffic ở quán cà phê, sân bay.
- Mesh network: kết nối multiple VPS thành 1 mạng nội bộ (Tailscale base on WireGuard).
- Cloud Phone access: từ Việt Nam SSH/ADB vào Cloud Phone qua VPN private.
- Gaming low ping: route qua VPS gần data center game (Singapore, Tokyo) để giảm ping 30-50ms.
Khuyến nghị TND: nếu chỉ cần bảo mật + privacy cá nhân, gói VPN TND managed 149K/tháng là đủ, không cần tự dựng. Nếu cần custom routing, multi-client, kết hợp business use case thì dựng WireGuard trên VPS US 89K hoặc Cloud VPS VN 149K sẽ linh hoạt hơn.
Troubleshooting thường gặp
- Handshake không thành công: check firewall mở UDP 51820, check key copy đúng (không thừa newline).
- Ping được nhưng không browse được web: thiếu MASQUERADE iptables hoặc
net.ipv4.ip_forward=0. - DNS leak: kiểm tra tại
dnsleaktest.com, nếu thấy resolver VN - fix bằng cách set DNS trong client config = 1.1.1.1. - Tốc độ chậm trên Windows: tắt "Large Send Offload" trong Network Adapter properties.
- Tunnel disconnect khi đổi WiFi → 4G: thêm
PersistentKeepalive = 25trong Peer.
FAQ
Q: WireGuard có log traffic không?
Bản thân WireGuard chỉ log handshake (peer connect/disconnect). Không log payload hay URL. Nếu muốn "no log policy" thật sự, chính bạn host server và xoá journalctl định kỳ.
Q: Có thể chạy WireGuard trên port 443 để bypass DPI không?
Native WireGuard chỉ UDP. Để wrap qua TCP/443, dùng udp2raw hoặc wstunnel. Tuy nhiên ở Việt Nam port 51820/UDP không bị block, không cần obfuscate.
Q: Bao nhiêu client cùng lúc trên 1 server?
Không giới hạn về phần mềm - đã có deployment 10.000+ client trên 1 box. Bottleneck là RAM (mỗi peer ~2KB) và bandwidth. VPS 4GB RAM dư cho ~50 client gia đình.
Triển khai WireGuard ngay
VPN dedicated IP US + setup WireGuard sẵn từ 149.000đ/tháng. Hoặc tự dựng trên VPS US 89K. Hỗ trợ 24/7.
Cần tư vấn license + hạ tầng tại TND?
TND đại lý chính thức Microsoft / Adobe / Kaspersky / AutoDesk / VMware / TeamViewer / JetBrains tại Việt Nam - license genuine 100%, kích hoạt online từ nhà sản xuất. Hoá đơn VAT điện tử Thông tư 78 đầy đủ cho doanh nghiệp.