Hướng dẫn cấu hình WireGuard VPN Mikrotik kết nối với điện thoại Android, IPhone, Windows
Trong bài viết này, mình sẽ hướng dẫn các bạn cấu hình Wireguard VPN trên Router Mikrotik để kết nối VPN cho các thiết bị Android, IPhone và Windows. Mình sẽ hướng dẫn chi tiết cách cấu hình và cài đặt trên từng thiết bị. Bài viết này chỉ bao gồm các hướng dẫn cơ bản, không có firewall rule trên router Mikrotik.
Mô hình kết nối
Mình đang sử dụng 1 mô hình đơn giản gồm 1 mạng LAN sử dụng Router Mikrotik.
Mình sẽ cấu hình các Tunnel WireGuard VPN Tunnel để các thiết bị như Android, IOS và Windows có thể kết nối vào Router. WireGuard sử dụng Public Key để xác thực 2 đầu, do vậy với mỗi thiết bị client, chúng ta sẽ cần phải tạo 1 peer riêng biệt. Nghĩa là với 3 thiết bị này, thì trên Mikrotik các bạn sẽ cần khai báo 3 peer với các public Key khác nhau, chứ chúng ta không thể tạo 1 tunnel cho nhiều thiết bị kết nối cùng lúc như với các dạng VPN Client to Site khác.
Dải mạng VPN mình sẽ sử dụng dải 172.16.0.0/24, với IP như trong mô hình.
Mình sẽ đi vào chi tiết cấu hình.
Cấu hình WireGuard VPN Trên Mikrotik
Đầu tiên mình sẽ tạo WireGuard VPN trên Router Mikrotik.
Các bạn vào menu WireGuard. Trong tab WireGuard, nhấn dấu + để tạo WireGuard Interface.
Nhập Các thông số cho WireGuard Interface:
- Name: mình sẽ để mặc định là wireguard1.
- ListenPort: mặc định sẽ là 13231, các bạn có thể thay đổi port này nếu cần, mình sẽ để mặc định.
- Nhấn Apply.
Router sẽ tự động tạo ra 2 key là Private Key và Public Key. Private Key thì các bạn không cần quan tâm, các bạn chỉ cần copy lại Public Key là được. Public Key các bạn sẽ cần phải có để khai báo trên các thiết bị client khi kết nối VPN. Các bạn kích chuột phải vào Public Key và chọn Copy All để copy lại Key này, sau đó gửi cho các thiết bị cần kết nối VPN.
Tiếp theo chúng ta sẽ khai báo IP cho Interface WireGuard này. Các bạn vào menu IP > Addresses. Nhấn dấu + để thêm mới.
- IP đầu Router sẽ là 172.16.0.1/24.
- Interface chọn wireguard1.
Trên Router Mikrotik chúng ta sẽ cần phải khai báo các Peer cho thiết bị Client, tuy nhiên chúng ta sẽ cần có Public Key của thiết bị Client thì mới cấu hình được. Do vậy thì mình sẽ hướng dẫn khi cấu hình trên từng thiết bị.
Ngoài ra, nếu các bạn đã cấu hình các Firewall Rule, thì các bạn sẽ cần phải tạo thêm Rule để cho phép dịch vụ WireGuard, và dải VPN truy cập vào mạng nội bộ. Nếu không có Firewall Rule thì các bạn có thể bỏ qua bước này.
- Firewall Rule cho phép port dịch vụ của WireGuard VPN là port 13231.
/ip firewall filter
add action=accept chain=input comment="allow WireGuard" dst-port=13231 protocol=udp place-before=1
|
- Firewall rule cho phép WireGuard Client kết nối vào mạng LAN.
/ip firewall filter
add action=accept chain=input comment="allow WireGuard traffic" src-address=172.16.0.0/24 place-before=1 |
Cấu hình WireGuard trên điện thoại Android
Trên điện thoại Android, các bạn truy cập vào CHPlay, tìm ứng dụng WireGuard và cài đặt. Sau khi cài xong, các bạn mở phần mềm này lên, nhấn dấu + để tạo mới, chọn "Làm lại từ đầu".
Nhập các thông tin để kết nối với Mikrotik:
- Name: nhập tên cho VPN.
- Nhấn vào biểu tượng 2 mũi tên quay tròn để tạo Key cho VPN. Các bạn sẽ copy lại Public key để nhập trên Router Mikrotik. Để copy thì các bạn chỉ cần nhấn vào public key, có thông báo đã sao chép vào bộ nhớ tạm là được.
- Địa chỉ: nhập IP VPN tunnel đầu Android, là 172.16.0.2. Các bạn có thể cấu hình 172.16.0.2 (tương ứng với /32) hoặc 172.16.0.2/24 đều được.
- Nhấn "Thêm cộng tác viên".
- Public Key: nhập Public Key của Mikrotik.
- Đầu cuối: nhập IP WAN của Router Mikrotik kèm Listen Port đã cấu hình trên Mikrotik. Ví dụ 27.76.103.142:13231.
- IP cho phép: nhập 0.0.0.0/0.
- Nhấn biểu tượng Save ở phía trên để lưu cấu hình lại.
Quay trở lại Router Mikrotik. Trong menu WireGuard, Chuyển sang tab Peers, đây là menu để các bạn khai báo thông số của các thiết bị Client kết nối VPN vào Router. Nhấn dấu + để thêm mới.
Cấu hình các thông số cho Android Peers:
- Interface: chọn cổng Wireguard1 vừa tạo.
- Public Key: các bạn dán Public Key trên điện thoại Andoid vào.
- Allowed Address: các bạn có thể nhập cả dải 172.16.0.0/24, hoặc IP của VPN Tunnel đầu Android đều được, do mỗi peer này thì chúng ta chỉ sử dụng cho 1 thiết bị. Mình sẽ cấu hình là IP của đầu Android.
- Nhấn Apply và OK để tạo.
Sau khi cấu hình Peer trên Mikrotik, các bạn quay lại điện thoại, các bạn Enable VPN tunnel lên.
Trên thanh công cụ phía trên xuất hiện biểu tượng chìa khóa là chúng ta đã kết nối thành công.
Cấu hình WireGuard trên điện thoại IPhone
Trên điện thoại Iphone, các bạn vào App Store, tìm kiếm và cài đặt ứng dụng WireGuard.
Sau khi cài xong, các bạn mở ứng dụng WireGuard lên, chọn Add a Tunnel và chọn Create from scratch.
Nhập các thông số cho VPN Tunnel:
- Name: nhập tên cho Tunnel.
- Nhấn Generate Keypair. Các bạn nhấn vào Public Key và chọn Copy để copy Public Key này khi cấu hình trên Router Mikrotik.
- Addresses: nhập địa chỉ IP Tunnel đầu Iphone là 172.16.0.3.
- Kéo xuống chọn Add Peer.
- Public Key: nhập key của Router Mikrotik.
- Endpoint: nhập IP WAN và Listen Port của Mikrotik, port mặc định là 13231.
- Allowed IPs: nhập 0.0.0.0/0 để toàn bộ traffic sẽ đều đi qua Tunnel, hoặc các bạn chỉ nhập dải mạng chỉ định được phép đi qua Tunnel.
- Nhấn Save.
Quay lại Mikrotik, các bạn tạo Peer cho điện thoại IPhone:
- Interface: chọn wireguard1.
- Public Key: nhập Key đã copy trên IPhone.
- Allowed Address: nhập địa chỉ IP của Iphone, hoặc cả dải mạng 172.16.0.0/24 đều được.
- Nhấn Apply và OK.
Sau khi cấu hình xong trên Mikrotik, thì các bạn quay lại Iphone và Enable VPN tunnel lên. Trên thanh công cụ phía trên xuất hiện biểu tượng VPN là chúng ta đã kết nối thành công.
Cấu hình WireGuard trên máy tính Windows
Trên máy tính Windows, các bạn vào website wireguard.com. Chuyển sang tab Installation, chọn Download Windows Installer.
Sau khi tải về thì các bạn cài đặt phần mềm WireGuard. Trên giao diện WireGuard, các bạn click vào biểu tượng tam giác, và chọn add empty tunnel, hoặc nhấn Ctrl + N cũng được.
Nhập các thông tin để tạo Tunnel trên Windows:
- Name: đặt tên cho Tunnel.
- Public Key: copy lại Public Key để cấu hình trên Mikrotik.
- Mặc định thì sẽ có 1 dòng Private Key, các bạn sẽ giữ nguyên thông tin này.
- Các bạn khai báo địa chỉ IP tunnel bằng thuộc tính "Address =" sau đó là IP Tunnel đầu Windows.
- Sau đó khai báo thông số cho Peer, là các thông số của Mikrotik. Chúng ta cũng sẽ cần 3 thông số là Public Key, Allowed IP và EndPoint. Cú pháp thì cũng tương Như thông tin trong phần Interface.
- Khai báo Public Key bằng thuộc tính "PublicKey =", sau đó là Public Key trên Mikrotik.
- Khai báo các địa chỉ cho phép qua VPN bằng thuộc tính "AllowedIPs =", sau đó là địa chỉ IP cho phép qua Tunnel. Nếu các bạn muốn tất cả traffic đều qua Tunnel thì chúng ta sẽ nhập 0.0.0.0/0.
- Khai báo IP WAN của Peer bằng thuộc tính "Endpoint =", sau đó là IP WAN của Mikrotik và Listen Port, port mặc định là 13231.
- Nhấn Save.
Bên dưới là code để các bạn copy cho nhanh:
[Interface]
PrivateKey = your_autogenerated_public_key=
Address = 172.16.0.4/24
[Peer]
PublicKey = your_MikroTik_public_KEY=
AllowedIPs = 0.0.0.0/0
Endpoint = cnttshop.vn:13231
|
Quay lại Mikrotik, các bạn tạo Peer cho Windows:
- Interface: chọn interface wireguard1.
- Public Key: nhập Key đã copy trên windows
- Allowed Address nhập địa chỉ IP Tunnel của Windows, hoặc cả dải mạng 172.16.0.0/24 đều được.
- Nhấn Apply và OK.
Sau khi cấu hình xong trên Mikrotik, thì các bạn quay lại windows. Nhấn Activate trên phần mềm WireGuard, phần mềm hiển thị status Active là chúng ta đã kết nối VPN thành công.
Kết luận
WireGuard VPN là tính năng rất đơn giản và hữu ích khi kết nối VPN, các bạn có thể sử dụng để kết nối đến nhiều loại thiết bị khác nhau như IPhone, Android, Windows, Linux... WireGuard VPN cũng hoạt động tương tự như các giao thức VPN Client to Site khác, các bạn có thể lựa chọn tùy tình huống triển khai.
Nếu các bạn có thắc mắc hay góp ý nào thì hãy để lại comment để mọi người cùng trao đổi nhé.
Chúc các bạn thành công!
Bình luận bài viết!