Chuyên mục
Synology

Cài đặt Wireguard VPN lên DSM 7.2 (Synology / Xpenology)

1. Tạo WireGuard SPK cho DSM

Để sử dụng WireGuard VPN trên DSM, cần phải cài đặt thêm gói phần mềm WireGuard. Mỗi phiên bản DSM và Synology Model sẽ cần có 1 gói cài đặt (file spk) riêng, do đó chúng ta cần phải tự tạo gói phần mềm dựa trên cấu hình đang sử dụng.

Gói phần mềm WireGuard SPK sẽ được tạo bằng Docker. Bạn có thể thao tác trên bất kỳ máy tính nào đã được cài Docker.

Sử dụng lệnh sau trong Terminal để tạo gói phần mềm Wireguard SPK, bạn cần thay đổi 2 thông số sau:

sudo docker run --rm --privileged --env PACKAGE_ARCH= --env DSM_VER=7.2 -v /volume1/docker:/result_spk blackvoidclub/synobuild72

Mình chạy Xpenology DS918+ và DSM 7.2 nên sẽ dùng lệnh sau

sudo docker run --rm --privileged --env PACKAGE_ARCH=apollolake --env DSM_VER=7.2 -v /volume1/docker:/result_spk blackvoidclub/synobuild72

Quá trình build sẽ mất khoảng 5-10 tùy cấu hình NAS. Sau khi hoàn tất, bạn sẽ thấy thông báo tương tự như bên dưới

'conf/systemd/@eaDir/pkg-wg-quick@.service@SynoEAStream' -> '/tmp/_test_spk/conf/systemd/@eaDir/pkg-wg-quick@.service@SynoEAStream'
'conf/systemd/@eaDir/pkg-wg-quick@.service@SynoResource' -> '/tmp/_test_spk/conf/systemd/@eaDir/pkg-wg-quick@.service@SynoResource'
'PACKAGE_ICON.PNG' -> '/tmp/_test_spk/PACKAGE_ICON.PNG'
'PACKAGE_ICON_256.PNG' -> '/tmp/_test_spk/PACKAGE_ICON_256.PNG'
creating package: WireGuard-geminilake-1.0.20220627.spk
source:           /tmp/_test_spk
destination:      /image/packages/WireGuard-geminilake-1.0.20220627.spk
[WARNING] /tmp/_install is empty!
[INFO] Install WireGuard finished!
1 projects, 0 failed, 0 blocked.

[INFO] Finished SynoInstall script.

Trong thư mục docker lúc này sẽ xuất hiện thêm 1 thư mục có tên tương tự như WireGuard-1.0.xxxxxxxx, bên trong sẽ có 2 file WireGuard-apollolake-1.0.20220627_debug.spk và WireGuard-apollolake-1.0.20220627.spk. Chúng ta sẽ cài đặt bằng file WireGuard-apollolake-1.0.20220627.spk

2. Cài đặt Wireguard SPK

Truy cập vào DSM, mở Package Center”

  1. Chọn Manual Install
  2. Chọn file WireGuard-apollolake-1.0.20220627.spk

Bấm Next, sau đó bấm tiếp Agree để xác nhận đồng ý cài đặt.

CHÚ Ý: KHÔNG được chọn mục Run after installation. Chúng ta sẽ kích hoạt bằng SSH sau khi cài đặt.

Sau khi cài xong, bạn cần KHỞI ĐỘNG lại Synology.

Truy cập vào SSH vào chạy lệnh sau để kích hoạt WireGuard

sudo /var/packages/WireGuard/scripts/start

Thông báo sẽ hiện ra như sau: WireGuard đã khởi động thành công.

WireGuard has been successfully started

Quay lại DSM, mở Package Center, bạn sẽ thấy WireGuard đang hoạt động.

WireGuard đã được kích hoạt trên DSM. Giờ có thể cài WireGuard VPN bằng Docker được rồi.

3. Cài đặt WireGuard VPN bằng WireHole-UI

Cài đặt WireHole-UI theo hướng dẫn mình đã chia sẻ ở đây:

WireHole-UI – Thiết lập VPN Server tích hợp tính năng chặn quảng cáo

Nếu kích hoạt docker-compose thành công, bạn có thể truy cập được vào địa chỉ http://<NAS-IP:51821 để cấu hình Wireguard client.

Xem logs của wg-easy bằng lệnh docker-compose logs wg-easy sẽ thấy container hoạt động êm, không bị báo lỗi nữa.

wg-easy  | 2024-01-05T07:18:39.406Z Server Listening on http://0.0.0.0:51821
wg-easy  | 2024-01-05T07:18:39.410Z WireGuard Loading configuration...
wg-easy  | 2024-01-05T07:18:39.419Z WireGuard Configuration loaded.
wg-easy  | 2024-01-05T07:18:39.420Z WireGuard Config saving...
wg-easy  | 2024-01-05T07:18:39.428Z WireGuard Config saved.
wg-easy  | $ wg-quick down wg0
wg-easy  | $ wg-quick up wg0
wg-easy  | 2024-01-05T07:18:39.648Z WireGuard Config syncing...
wg-easy  | $ wg syncconf wg0 <(wg-quick strip wg0)
wg-easy  | 2024-01-05T07:18:39.696Z WireGuard Config synced.

Vậy là xong. DSM 7.2 đã được tích hợp thêm WireGuard VPN Server ngon lành.

Tham khảo: Blackvoid