Hướng dẫn đầy đủ về WireGuard: Cài đặt, Khóa và Cấu hình nâng cao

Cập nhật lần cuối: 24/09/2025
tác giả: Daniel Terrasa

  • Kiến trúc đơn giản và mã hóa hiện đại: khóa cho mỗi đối tác và AllowedIP để định tuyến.
  • Cài đặt nhanh trên Linux và các ứng dụng chính thức cho máy tính để bàn và thiết bị di động.
  • Hiệu suất vượt trội hơn IPsec/OpenVPN, có khả năng chuyển vùng và độ trễ thấp.
Hướng dẫn Wireguard

Nếu bạn đang tìm kiếm một VPN nhanh chóng, an toàn và dễ triển khai, Dây bảo vệ Đây là giải pháp tốt nhất bạn có thể sử dụng hiện nay. Với thiết kế tối giản và công nghệ mã hóa hiện đại, sản phẩm lý tưởng cho người dùng gia đình, chuyên gia và môi trường doanh nghiệp, cả trên máy tính, thiết bị di động và bộ định tuyến.

Trong hướng dẫn thực tế này, bạn sẽ tìm thấy mọi thứ từ những điều cơ bản đến Cấu hình nâng cao: Cài đặt trên Linux (Ubuntu/Debian/CentOS), khóa, tệp máy chủ và máy khách, chuyển tiếp IP, NAT/Tường lửa, ứng dụng trên Windows/macOS/Android/iOS, chia đường hầm, hiệu suất, khắc phục sự cố và khả năng tương thích với các nền tảng như OPNsense, pfSense, QNAP, Mikrotik hoặc Teltonika.

WireGuard là gì và tại sao nên chọn nó?

Dây bảo vệ là một giao thức VPN nguồn mở và phần mềm được thiết kế để tạo ra Đường hầm được mã hóa L3 qua UDP. Nó nổi bật hơn so với OpenVPN hoặc IPsec do tính đơn giản, hiệu suất và độ trễ thấp hơn, dựa trên các thuật toán hiện đại như Curve25519, ChaCha20-Poly1305, BLAKE2, SipHash24 và HKDF.

Cơ sở mã của nó rất nhỏ (khoảng hàng ngàn dòng), giúp kiểm tra dễ dàng hơn, giảm thiểu bề mặt tấn công và cải thiện việc bảo trì. Nó cũng được tích hợp vào nhân Linux, cho phép tốc độ truyền tải cao và phản ứng nhanh nhẹn ngay cả trên phần cứng khiêm tốn.

 

Nó là đa nền tảng: có các ứng dụng chính thức cho Windows, macOS, Linux, Android và iOSvà hỗ trợ cho các hệ thống định tuyến/tường lửa như OPNsense. Nó cũng khả dụng cho các môi trường như FreeBSD, OpenBSD, NAS và các nền tảng ảo hóa.

bảo vệ vpn

Nó hoạt động như thế nào bên trong

 

WireGuard thiết lập một đường hầm được mã hóa giữa các đối tác (đồng nghiệp) được xác định bằng khóa. Mỗi thiết bị tạo ra một cặp khóa (riêng tư/công khai) và chỉ chia sẻ khóa của nó. khóa công khai với đầu kia; từ đó, mọi lưu lượng đều được mã hóa và xác thực.

Chỉ thị Được phép Xác định cả định tuyến đi (lưu lượng nào sẽ đi qua đường hầm) và danh sách các nguồn hợp lệ mà đối tác từ xa sẽ chấp nhận sau khi giải mã thành công một gói tin. Phương pháp này được gọi là Định tuyến khóa mật mã và đơn giản hóa đáng kể chính sách giao thông.

WireGuard rất tuyệt vời với chuyển vùng- Nếu IP của máy khách thay đổi (ví dụ: bạn chuyển từ Wi-Fi sang 4G/5G), phiên sẽ được thiết lập lại một cách minh bạch và rất nhanh chóng. Nó cũng hỗ trợ công tắc tắt để chặn lưu lượng ra khỏi đường hầm nếu VPN bị sập.

Cài đặt trên Linux: Ubuntu/Debian/CentOS

Trên Ubuntu, WireGuard có sẵn trong kho lưu trữ chính thức. Hãy cập nhật các gói và sau đó cài đặt phần mềm để có được mô-đun và công cụ. wg và wg-quick.

apt update && apt upgrade -y
apt install wireguard -y
modprobe wireguard

Trong Debian ổn định, bạn có thể dựa vào các kho lưu trữ nhánh không ổn định nếu cần, bằng cách làm theo phương pháp được đề xuất và với chăm sóc trong sản xuất:

sudo sh -c 'echo deb https://deb.debian.org/debian/ unstable main > /etc/apt/sources.list.d/unstable.list'
sudo sh -c 'printf "Package: *\nPin: release a=unstable\nPin-Priority: 90\n" > /etc/apt/preferences.d/limit-unstable'
sudo apt update
sudo apt install wireguard

Trong CentOS 8.3, quy trình tương tự: bạn kích hoạt kho lưu trữ EPEL/ElRepo nếu cần và sau đó cài đặt gói Dây bảo vệ và các mô-đun tương ứng.

Nội dung độc quyền - Bấm vào đây  Cách xóa phần mềm độc hại khỏi Android

dây bảo vệ

Tạo khóa

Mỗi đồng nghiệp phải có riêng của mình cặp khóa riêng tư/công khai. Áp dụng umask để hạn chế quyền và tạo khóa cho máy chủ và máy khách.

umask 077
wg genkey | tee privatekey | wg pubkey > publickey

Lặp lại trên mỗi thiết bị. Không bao giờ chia sẻ khóa cá nhân và lưu cả hai một cách an toàn. Nếu muốn, hãy tạo các tệp có tên khác nhau, ví dụ: máy chủ khóa riêng y publicserverkey.

Cấu hình máy chủ

Tạo tập tin chính trong /etc/wireguard/wg0.conf. Chỉ định một mạng con VPN (không được sử dụng trên mạng LAN thực của bạn), cổng UDP và thêm một khối [Ngang nhau] cho mỗi khách hàng được ủy quyền.

[Interface]
Address = 10.0.0.1/24
ListenPort = 51820
PrivateKey = <clave_privada_servidor>

# Cliente 1
[Peer]
PublicKey = <clave_publica_cliente1>
AllowedIPs = 10.0.0.2/32

Bạn cũng có thể sử dụng một mạng con khác, ví dụ 192.168.2.0/24và phát triển với nhiều đối tác. Để triển khai nhanh chóng, người ta thường sử dụng wg-nhanh lên với các tập tin wgN.conf.

Cấu hình máy khách

Trên máy khách tạo một tập tin, ví dụ wg0-client.conf, với khóa riêng, địa chỉ đường hầm, DNS tùy chọn và máy chủ ngang hàng với điểm cuối và cổng công khai của nó.

[Interface]
PrivateKey = <clave_privada_cliente>
Address = 10.0.0.2/24
DNS = 8.8.8.8

[Peer]
PublicKey = <clave_publica_servidor>
Endpoint = <ip_publica_servidor>:51820
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 25

Nếu bạn đặt Được phépIP = 0.0.0.0/0 Tất cả lưu lượng sẽ đi qua VPN; nếu bạn chỉ muốn truy cập vào các mạng máy chủ cụ thể, hãy giới hạn nó ở các mạng con cần thiết và bạn sẽ giảm độ trễ và tiêu dùng.

Chuyển tiếp IP và NAT trên máy chủ

Cho phép chuyển tiếp để máy khách có thể truy cập Internet thông qua máy chủ. Áp dụng các thay đổi ngay lập tức với hệ thống.

echo 'net.ipv4.ip_forward=1' >> /etc/sysctl.conf
echo 'net.ipv6.conf.all.forwarding=1' >> /etc/sysctl.conf
sysctl -p

Cấu hình NAT với iptables cho mạng con VPN, thiết lập giao diện WAN (ví dụ: eth0):

iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -o eth0 -j MASQUERADE

Làm cho nó bền bỉ với các gói phù hợp và lưu các quy tắc sẽ được áp dụng khi khởi động lại hệ thống.

apt install -y iptables-persistent netfilter-persistent
netfilter-persistent save

Khởi động và xác minh

Mở giao diện và cho phép dịch vụ khởi động cùng hệ thống. Bước này sẽ tạo giao diện ảo và thêm tuyến đường cần thiết.

systemctl start wg-quick@wg0
systemctl enable wg-quick@wg0
wg

với wg Bạn sẽ thấy các đối tác, khóa, chuyển giao và thời gian bắt tay cuối cùng. Nếu chính sách tường lửa của bạn hạn chế, hãy cho phép truy cập thông qua giao diện. wg0 và cổng UDP của dịch vụ:

iptables -I INPUT 1 -i wg0 -j ACCEPT

Ứng dụng chính thức: Windows, macOS, Android và iOS

Trên máy tính để bàn, bạn có thể nhập tập tin .conf. Trên thiết bị di động, ứng dụng cho phép bạn tạo giao diện từ QR code chứa cấu hình; rất tiện lợi cho những khách hàng không am hiểu kỹ thuật.

Nếu mục tiêu của bạn là giới thiệu các dịch vụ tự lưu trữ như Plex/Radarr/Sonarr Thông qua VPN của bạn, chỉ cần gán IP trong mạng con WireGuard và điều chỉnh AllowedIP để máy khách có thể truy cập mạng đó; bạn không cần phải mở thêm cổng ra bên ngoài nếu mọi quyền truy cập đều thông qua hầm.

Ưu điểm và nhược điểm

WireGuard rất nhanh và đơn giản, nhưng điều quan trọng là phải xem xét các hạn chế và đặc thù của nó tùy thuộc vào trường hợp sử dụng. Dưới đây là tổng quan cân bằng về hầu hết có liên quan.

Nội dung độc quyền - Bấm vào đây  Tất cả các cách tắt Windows 11 mà không cần mở menu Start
Advantage Nhược điểm
Cấu hình rõ ràng và ngắn gọn, lý tưởng cho tự động hóa Không kết hợp làm tối nghĩa lưu lượng truy cập gốc
Hiệu suất cao và độ trễ thấp ngay cả trong điện thoại di động Trong một số môi trường cũ có ít tùy chọn nâng cao hơn
Mật mã hiện đại và mã nhỏ giúp dễ dàng kiểm toán Quyền riêng tư: Liên kết IP/khóa công khai có thể nhạy cảm tùy thuộc vào chính sách
Chuyển vùng liền mạch và tắt công tắc có sẵn trên máy khách Khả năng tương thích của bên thứ ba không phải lúc nào cũng đồng nhất

 

Đường hầm chia tách: chỉ định hướng những gì cần thiết

Đường hầm phân chia cho phép bạn chỉ gửi lưu lượng bạn cần thông qua VPN. Với Được phép Bạn quyết định có nên chuyển hướng toàn bộ hay chọn lọc tới một hoặc nhiều mạng con hay không.

# Redirección completa de Internet
[Peer]
AllowedIPs = 0.0.0.0/0
# Solo acceder a recursos de la LAN 192.168.1.0/24 por la VPN
[Peer]
AllowedIPs = 192.168.1.0/24

Có các biến thể như đường hầm phân chia ngược, được lọc theo URL hoặc theo ứng dụng (thông qua các tiện ích mở rộng/máy khách cụ thể), mặc dù cơ sở gốc trong WireGuard là kiểm soát bằng IP và tiền tố.

Khả năng tương thích và hệ sinh thái

WireGuard được sinh ra cho hạt nhân Linux, nhưng ngày nay nó đa nền tảngOPNsense tích hợp sẵn; pfSense tạm thời ngừng hoạt động để kiểm tra và sau đó được cung cấp dưới dạng gói tùy chọn tùy theo phiên bản.

Trên NAS như QNAP, bạn có thể gắn nó thông qua QVPN hoặc máy ảo, tận dụng NIC 10GbE để tốc độ caoBo mạch định tuyến MikroTik đã tích hợp hỗ trợ WireGuard kể từ RouterOS 7.x; trong các phiên bản đầu, tính năng này ở giai đoạn beta và không được khuyến nghị đưa vào sản xuất, nhưng nó cho phép tạo đường hầm P2P giữa các thiết bị và thậm chí cả máy khách cuối.

Các nhà sản xuất như Teltonika có gói để thêm WireGuard vào bộ định tuyến của họ; nếu bạn cần thiết bị, bạn có thể mua chúng tại shop.davantel.com và làm theo hướng dẫn của nhà sản xuất để cài đặt gói thêm.

Hiệu suất và độ trễ

Nhờ thiết kế tối giản và lựa chọn các thuật toán hiệu quả, WireGuard đạt được tốc độ rất cao và độ trễ thấp, nhìn chung vượt trội hơn L2TP/IPsec và OpenVPN. Trong các thử nghiệm cục bộ với phần cứng mạnh mẽ, tốc độ thực tế thường gấp đôi so với các giải pháp thay thế, khiến nó trở nên lý tưởng cho phát trực tuyến, chơi game hoặc VoIP.

Triển khai doanh nghiệp và làm việc từ xa

Trong doanh nghiệp, WireGuard phù hợp để tạo đường hầm giữa các văn phòng, truy cập nhân viên từ xa và kết nối an toàn giữa CPD và đám mây (ví dụ: để sao lưu). Cú pháp ngắn gọn của nó giúp việc quản lý phiên bản và tự động hóa trở nên dễ dàng.

Nó tích hợp với các thư mục như LDAP/AD bằng các giải pháp trung gian và có thể cùng tồn tại với các nền tảng IDS/IPS hoặc NAC. Một lựa chọn phổ biến là Gói (nguồn mở), cho phép bạn xác minh trạng thái của thiết bị trước khi cấp quyền truy cập và kiểm soát BYOD.

dây bảo vệ

Windows/macOS: Ghi chú và Mẹo

Ứng dụng Windows chính thức thường hoạt động mà không có vấn đề gì, nhưng trong một số phiên bản Windows 10 đã có sự cố khi sử dụng Được phépIP = 0.0.0.0/0 do xung đột tuyến đường. Một giải pháp thay thế tạm thời là một số người dùng chọn các ứng dụng khách dựa trên WireGuard như TunSafe hoặc giới hạn AllowedIP cho các mạng con cụ thể.

Hướng dẫn Bắt đầu Nhanh Debian với Các Khóa Ví dụ

Tạo khóa cho máy chủ và máy khách trong /etc/wireguard/ và tạo giao diện wg0. Đảm bảo IP VPN không trùng với bất kỳ IP nào khác trên mạng cục bộ hoặc máy khách của bạn.

cd /etc/wireguard/
wg genkey | tee claveprivadaservidor | wg pubkey > clavepublicaservidor
wg genkey | tee claveprivadacliente1 | wg pubkey > clavepublicacliente1

Máy chủ wg0.conf với mạng con 192.168.2.0/24 và cổng 51820. Bật PostUp/PostDown nếu bạn muốn tự động hóa NAT với iptables khi mở/hạ giao diện.

[Interface]
Address = 192.168.2.1/24
PrivateKey = <clave_privada_servidor>
ListenPort = 51820
#PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
#PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

[Peer]
PublicKey = <clave_publica_cliente1>
AllowedIPs = 0.0.0.0/0

Máy khách có địa chỉ 192.168.2.2, trỏ đến điểm cuối công khai của máy chủ và với cố sống đi tùy chọn nếu có NAT trung gian.

[Interface]
PrivateKey = <clave_privada_cliente1>
Address = 192.168.2.2/32

[Peer]
PublicKey = <clave_publica_servidor>
AllowedIPs = 0.0.0.0/0
Endpoint = <ip_publica_servidor>:51820
#PersistentKeepalive = 25

Kéo giao diện lên và xem MTU, các dấu hiệu tuyến đường và dấu fw và các quy tắc chính sách định tuyến. Xem lại đầu ra và trạng thái của wg-quick với chương trình wg.

Nội dung độc quyền - Bấm vào đây  Quyền riêng tư trong việc tải xuống ứng dụng?

Mikrotik: đường hầm giữa RouterOS 7.x

MikroTik đã hỗ trợ WireGuard kể từ RouterOS 7.x. Hãy tạo giao diện WireGuard trên mỗi bộ định tuyến, áp dụng giao diện đó và giao diện sẽ tự động được tạo. phím. Gán IP cho Ether2 làm WAN và wireguard1 làm giao diện đường hầm.

Cấu hình các đối tác bằng cách vượt qua khóa công khai của máy chủ ở phía máy khách và ngược lại, xác định Địa chỉ được phép/IP được phép (ví dụ: 0.0.0.0/0 (nếu bạn muốn cho phép bất kỳ nguồn/đích nào đi qua đường hầm) và thiết lập điểm cuối từ xa với cổng của nó. Ping đến IP đường hầm từ xa sẽ xác nhận bắt tay.

Nếu bạn kết nối điện thoại di động hoặc máy tính với đường hầm Mikrotik, hãy tinh chỉnh các mạng được phép để không mở nhiều hơn mức cần thiết; WireGuard quyết định luồng gói tin dựa trên Định tuyến khóa mật mã, vì vậy điều quan trọng là phải khớp điểm xuất phát và điểm đến.

Mật mã được sử dụng

WireGuard sử dụng một bộ công nghệ hiện đại gồm: Tiếng ồn: như một khuôn khổ, Curve25519 cho ECDH, ChaCha20 cho mã hóa đối xứng được xác thực với Poly1305, BLAKE2 cho băm, SipHash24 cho bảng băm và HKDF để suy ra phímNếu một thuật toán không còn được sử dụng nữa, giao thức có thể được điều chỉnh phiên bản để di chuyển liền mạch.

Ưu và nhược điểm trên thiết bị di động

Sử dụng nó trên điện thoại thông minh cho phép bạn duyệt an toàn Wi-Fi công cộng, ẩn lưu lượng truy cập khỏi ISP của bạn và kết nối với mạng gia đình để truy cập NAS, hệ thống tự động hóa gia đình hoặc chơi game. Trên iOS/Android, việc chuyển đổi mạng không làm gián đoạn đường truyền, giúp cải thiện trải nghiệm.

Nhược điểm là bạn sẽ mất một số tốc độ và độ trễ lớn hơn so với đầu ra trực tiếp và bạn phụ thuộc vào máy chủ luôn hoạt động có sẵnTuy nhiên, so với IPsec/OpenVPN thì hình phạt thường thấp hơn.

WireGuard kết hợp sự đơn giản, tốc độ và bảo mật thực sự với quy trình học tập dễ dàng: cài đặt, tạo khóa, định nghĩa AllowedIP (IP được phép), và bạn đã sẵn sàng. Thêm tính năng chuyển tiếp IP, NAT được triển khai tốt, ứng dụng chính thức với mã QR và khả năng tương thích với các hệ sinh thái như OPNsense, Mikrotik hoặc Teltonika. một VPN hiện đại cho hầu hết mọi tình huống, từ bảo mật mạng công cộng đến kết nối trụ sở chính và truy cập các dịch vụ tại nhà mà không gặp rắc rối.