Cáp quang biển lại đứt, mạng chập chờn, hay bạn đang ngồi café dùng WiFi công cộng đầy rủi ro bảo mật? Hoặc có thể bạn làm MMO, chạy ads cần một IP sạch, cố định để làm việc mà không lo bị các nền tảng lớn quét trùng IP.
Thay vì bỏ tiền mua các dịch vụ VPN thương mại vốn dùng chung IP với hàng nghìn người khác, tự dựng một VPN riêng là phương án tối ưu nhất. Chỉ cần một chiếc VPS giá rẻ và 5 phút thao tác với script tự động, bạn sẽ có ngay một đường truyền VPN tốc độ cao, bảo mật và hoàn toàn riêng tư.
Tại sao nên tự tạo VPN trên VPS thay vì mua VPN dịch vụ?
Tự tạo VPN trên VPS cho bạn IP riêng không chia sẻ với ai, toàn quyền kiểm soát nhật ký truy cập (log), tốc độ phụ thuộc duy nhất vào VPS của bạn và rẻ hơn nhiều so với VPN trả phí nếu tính đường dài.
VPN trả phí rất tiện, nhưng thực tế bạn đang phải tin vào lời hứa “no-log” (không lưu lịch sử truy cập) của một công ty dịch vụ mà bạn chưa từng gặp mặt. Khi tự dựng VPN trên VPS của riêng mình, bạn là người duy nhất nắm quyền kiểm soát dữ liệu đó.
Ngoài ra, những lợi ích thực tế bao gồm:
- IP hoàn toàn sạch: IP của các dịch vụ VPN lớn như NordVPN hay ExpressVPN thường nằm trong blacklist của Google, Netflix hay các hệ thống ngân hàng vì có quá nhiều người dùng chung để làm các việc nhạy cảm. Với VPS riêng, bạn sở hữu một IP “độc bản”, thoải mái truy cập mọi dịch vụ mà không bị bắt xác minh Captcha liên tục.
- Tối ưu chi phí: Một gói VPN thương mại chất lượng thường tốn khoảng 100.000đ – 200.000đ/tháng và giới hạn số thiết bị kết nối đồng thời. Trong khi đó, một chiếc VPS giá rẻ chỉ khoảng vài chục nghìn đồng một tháng là đã dư sức gánh băng thông VPN cho cả gia đình hay nhóm làm việc của bạn cùng sử dụng.
Nếu bạn chưa có VPS để bắt đầu, InterData có cung cấp các gói VPS giá rẻ với đường truyền băng thông trong nước lẫn quốc tế cực kỳ ổn định, đủ khỏe để chạy mượt VPN cho nhiều thiết bị cùng lúc.

Cần chuẩn bị gì trước khi cài WireGuard?
Bạn chỉ cần chuẩn bị một VPS chạy hệ điều hành Ubuntu (phiên bản 20.04, 22.04 hoặc 24.04) hoặc Debian, quyền truy cập cao nhất (root) và một công cụ SSH để kết nối.
- Hệ điều hành: Khuyên dùng Ubuntu Server (20.04 LTS trở lên) vì độ ổn định và khả năng tương thích phần cứng cực tốt với WireGuard.
- Thông tin SSH: Địa chỉ IP của VPS, Port SSH (mặc định là 22), Username (thường là root) và mật khẩu hoặc SSH Key để đăng nhập.
- Công cụ SSH: Nếu dùng Windows, bạn có thể tải Bitvise hoặc PuTTY. Nếu dùng macOS hoặc Linux, bạn chỉ cần mở Terminal có sẵn trên máy là xong.
Nhiều người lo lắng về cấu hình phần cứng VPS, nhưng WireGuard được viết cực kỳ tối ưu và nhẹ dòng lệnh (chỉ khoảng vài nghìn dòng code so với hàng chục nghìn dòng của OpenVPN). Do đó, một VPS cấu hình tối thiểu chỉ 1 vCPU và 1GB RAM đã thừa sức hoạt động mượt mà.
Hướng dẫn 5 bước tạo VPN trên VPS bằng WireGuard
Bước 1: Cập nhật hệ thống VPS
Đầu tiên, bạn cần kết nối SSH vào VPS bằng tài khoản root. Việc cập nhật hệ thống trước khi cài đặt là bắt buộc để tránh các xung đột liên quan đến nhân hệ điều hành (kernel) sau này.
Hãy copy và chạy lệnh sau:
apt update && apt upgrade -y
Nếu trong quá trình cập nhật có các gói liên quan đến kernel hệ thống được nâng cấp, bạn nên khởi động lại VPS bằng lệnh dưới đây để áp dụng thay đổi:
reboot
Cảnh báo thực tế: Đừng bao giờ bỏ qua bước cập nhật hệ thống này. Khoảng 90% các lỗi không load được module WireGuard trong quá trình cài đặt đều bắt nguồn từ việc kernel hiện tại của VPS không đồng bộ với các thư viện mới.
Bước 2: Tải và chạy script cài đặt Angristan
Script cài đặt WireGuard của tác giả Angristan là một trong những mã nguồn mở phổ biến và an toàn nhất hiện nay trên GitHub. Script này tự động hóa toàn bộ các bước cấu hình tường lửa, định tuyến iptables phức tạp mà thông thường bạn phải chỉnh tay rất mất thời gian.
Bạn chỉ cần copy toàn bộ cụm lệnh này dán vào cửa sổ SSH và nhấn Enter:
curl -O https://raw.githubusercontent.com/angristan/wireguard-install/master/wireguard-install.sh && chmod +x wireguard-install.sh && ./wireguard-install.sh
Bước 3: Cấu hình thông số ban đầu (phần lớn bấm Enter)
Sau khi chạy lệnh trên, hệ thống sẽ hiển thị một loạt câu hỏi để thiết lập thông số. Bạn đừng lo lắng, hầu như mọi thiết lập mặc định của script đã rất tối ưu rồi. Hãy làm theo hướng dẫn dưới đây:
- IPv4 hoặc IPv6 public: Script tự nhận diện IP của VPS -> Nhấn Enter.
- Public interface (ví dụ: eth0, ens3): Script tự nhận diện card mạng -> Nhấn Enter.
- Interface name (wg0): Tên card mạng ảo của WireGuard -> Nhấn Enter.
- Server WireGuard IPv4 (10.66.66.1): Dải IP nội bộ của VPN -> Nhấn Enter.
- Server WireGuard IPv6: Tiếp tục -> Nhấn Enter.
- Server Port (52604): Cổng kết nối của VPN -> Nhấn Enter.
Lưu ý quan trọng ở phần chọn DNS: Khi script hỏi về DNS cho Client (như hình bên dưới), mặc định sẽ chọn DNS hệ thống. Bạn nên giữ 1.1.1.1 để sử dụng DNS Cloudflare hoặc nhập DNS Google 8.8.8.8. Điều này đảm bảo tốc độ phân giải tên miền khi bạn truy cập các trang web quốc tế từ Việt Nam đạt tốc độ cao nhất.
Sau khi chọn xong DNS, bạn nhấn tiếp Enter qua các bước cấu hình bảo mật (như cài đặt Lossless, Keepalive…) cho đến khi script bắt đầu tự động cài đặt các gói cần thiết vào hệ thống.

Bước 4: Tạo thiết bị kết nối đầu tiên (mã QR)
Khi quá trình cài đặt hoàn tất, script sẽ tự động chuyển sang bước tạo file cấu hình cho thiết bị (client) đầu tiên.
- Client name: Nhập tên thiết bị viết liền không dấu (ví dụ:
DienThoaihoặcLaptop). - Client IPv4: -> Nhấn Enter để hệ thống tự cấp phát IP nội bộ (thường là 10.66.66.2).
- Client IPv6: -> Nhấn Enter.
Ngay lập tức, một mã QR Code kích thước lớn sẽ được render trực tiếp ngay trên màn hình Terminal của bạn, đồng thời một file cấu hình định dạng .conf cũng được lưu lại tại thư mục /root/ (ví dụ: /root/wg0-client-DienThoai.conf).

Bước 5: Kết nối thiết bị vào VPN
Giờ là lúc tận hưởng thành quả của bạn trên các thiết bị cá nhân.
Trên điện thoại (iOS / Android)
Đây là cách kết nối nhanh và dễ dàng nhất:
- Lên App Store hoặc Google Play Store tìm và tải ứng dụng WireGuard.
- Mở ứng dụng lên, nhấn vào biểu tượng dấu cộng (+) ở góc màn hình.
- Chọn Scan from QR code rồi đưa camera điện thoại lên quét mã QR đang hiển thị trên màn hình Terminal của máy tính.
- Đặt tên cho cấu hình kết nối đó và gạt công tắc kích hoạt để bắt đầu sử dụng VPN.
Trên máy tính (Windows / macOS / Linux)
1/ Đối với máy tính, bạn cần lấy được file cấu hình .conf từ VPS về máy:
2/ Tải và cài đặt phần mềm WireGuard Client chính thức cho hệ điều hành của bạn.
3/ Dùng một công cụ truyền file qua giao thức SFTP (như WinSCP trên Windows hoặc FileZilla/Cyberduck trên macOS) để kết nối vào VPS của bạn bằng tài khoản root.
4/ Truy cập vào thư mục /root/ và tải file có đuôi .conf vừa tạo ở bước trước về máy tính của bạn.

5/ Mở phần mềm WireGuard trên máy tính lên, nhấn vào nút Import tunnel(s) from file và chọn file .conf vừa tải về.

6/ Nhấn Activate để kích hoạt kết nối.

Cách thêm hoặc xóa thiết bị sau này
Nhu cầu sử dụng thực tế chắc chắn sẽ phát sinh thêm thiết bị mới cho người thân hoặc đồng nghiệp. Bạn không cần phải cài đặt lại từ đầu, chỉ cần chạy lại file script ban đầu bằng lệnh:
./wireguard-install.sh
Hệ thống sẽ hiện ra một menu quản lý cực kỳ trực quan bằng số:
WireGuard is already installed.
What do you want to do?
1) Add a new user
2) Revoke an existing user
3) Uninstall WireGuard
4) Exit
- Nhập số 1: Để tạo thêm thiết bị mới (bạn lại nhập tên và script sẽ in ra một mã QR mới tương ứng).
- Nhập số 2: Khi bạn muốn xóa quyền truy cập của một thiết bị nào đó (thiết bị đó sẽ bị chặn ngay lập tức, không thể kết nối vào VPN của bạn nữa).
- Nhập số 3: Gỡ sạch hoàn toàn WireGuard ra khỏi VPS nếu không còn nhu cầu sử dụng.
- Nhập số 4: Thoát trình quản lý.
Những lỗi thường gặp và cách xử lý
Dù WireGuard rất ít lỗi, nhưng trong quá trình tự vận hành thực tế, bạn có thể sẽ gặp phải một vài trường hợp dưới đây:
1. Kết nối báo đã nhận diện (Handshake) nhưng không vào được mạng internet
- Triệu chứng: Trên app hiển thị có dữ liệu gửi đi (Sent) nhưng không có dữ liệu nhận về (Received) hoặc có nhận về nhưng không load được web.
- Nguyên nhân: Có đến 9/10 trường hợp gặp lỗi này là do port kết nối của WireGuard chưa được mở. WireGuard chạy trên giao thức UDP. Nếu VPS của bạn thuê từ các nhà cung cấp có hệ thống tường lửa lớp ngoài (như AWS, Google Cloud, Azure hoặc một số nhà cung cấp có dashboard quản lý riêng), bạn bắt buộc phải vào trang quản trị của họ để mở port 51820/UDP.
- Cách khắc phục: Vào cài đặt Firewall/Security Group trên trang quản trị nhà cung cấp VPS, tạo một rule cho phép truy cập port 51820 với giao thức là UDP (không phải TCP).
2. Kiểm tra xem VPN thực sự hoạt động hay chưa
- Cách làm: Hãy truy cập vào trang
ip.mehoặcicanhazip.comtrước và sau khi bật VPN. Nếu sau khi bật VPN, địa chỉ IP hiển thị trùng khớp với địa chỉ IP của VPS của bạn, đồng thời vị trí địa lý chuyển sang nơi đặt VPS thì việc cài đặt đã thành công hoàn toàn.
3. Lỗi do tường lửa nội bộ trên VPS (như UFW) chặn kết nối
- Cách khắc phục: Nếu VPS của bạn đang bật UFW, hãy chạy lệnh sau để mở port trực tiếp trên hệ thống:
ufw allow 51820/udp
Để đảm bảo VPN hoạt động mượt mà với băng thông không giới hạn và tốc độ truy cập quốc tế cực nhanh, việc chọn một nhà cung cấp VPS uy tín là rất quan trọng. InterData thường xuyên có các chương trình ưu đãi cho các Deals VPS cấu hình cao, cực kỳ thích hợp để bạn vừa treo VPN vừa kết hợp chạy các tác vụ khác.
Câu hỏi thường gặp (FAQ)
Tự tạo VPN trên VPS có hợp pháp không?
Hoàn toàn hợp pháp tại Việt Nam khi bạn sử dụng cho các mục đích cá nhân như bảo mật thông tin, mã hóa dữ liệu đường truyền khi dùng WiFi công cộng, hoặc truy cập mạng nội bộ để làm việc từ xa. Bạn tự chịu trách nhiệm pháp lý với mọi hoạt động duyệt web phát sinh từ IP của VPS đó.
Cần VPS cấu hình bao nhiêu để chạy VPN?
Như đã đề cập, WireGuard tiêu tốn rất ít tài nguyên phần cứng. Một VPS giá rẻ với cấu hình 1 vCPU và 1GB RAM hoàn toàn có thể phục vụ tốt cho hàng chục thiết bị kết nối cùng lúc mà không lo giật lag hay treo hệ thống.
Giữa WireGuard và OpenVPN thì cái nào tốt hơn?
WireGuard là lựa chọn vượt trội hơn hẳn cho nhu cầu cá nhân. Nó nhanh hơn, độ trễ thấp hơn, tiết kiệm pin cho thiết bị di động hơn và cấu hình đơn giản hơn OpenVPN rất nhiều. Bạn chỉ nên dùng OpenVPN khi có các yêu cầu đặc thù về hạ tầng mạng doanh nghiệp lớn.
Một VPS dùng được cho bao nhiêu thiết bị kết nối?
Không có giới hạn cứng về mặt phần mềm cho số lượng thiết bị. Mỗi thiết bị bạn tạo thêm sẽ được cấp một IP nội bộ riêng biệt. Giới hạn thực tế duy nhất nằm ở băng thông (bộ nhớ mạng) và dung lượng data hàng tháng mà nhà cung cấp VPS cho phép bạn sử dụng.
VPN tự dựng có nhanh hơn VPN trả phí mua bên ngoài không?
Tốc độ phụ thuộc rất nhiều vào vị trí địa lý của VPS. Nếu bạn chọn VPS có server đặt tại Việt Nam hoặc các quốc gia lân cận (như Singapore, Hồng Kông), tốc độ kết nối thực tế thường sẽ nhanh và ổn định hơn rất nhiều so với VPN thương mại quốc tế, đơn giản vì bạn không phải chia sẻ băng thông đường truyền với hàng ngàn người dùng khác trên cùng một máy chủ.
