Tự build proxy và VPN trên Docker Aapanel

Docker vẫn là một cái gì đó rất thú vị, và trong bài viết này, chúng ta sẽ cùng tìm hiểu cách tự tạo proxy v4 và một cổng VPN tunnel sử dụng WireGuard trên Aapanel

Biến IP VPS thành proxy v4 với GOST

Bước 1: Kéo ảnh ginuerzh/gost:latest từ Cloud image về Local image

Bước 2: Thiết lập container

Cấu hình cài đặt GOST trên docker aapanel
Hình 1: Cấu hình port cho Container GOST

Ở phần Port, bạn bấm nút add –> sau đó cấu hình Local port và Container port đều là: 24380

Tiếp theo, bạn kéo xuống phần cài đặt bên dưới.

Cấu hình lệnh command khi cài GOST
Hình 2: Cấu hình Command cho Container GOST

Tại ô nhập Command bạn copy dòng code sau:

-L socks5://user:password@:24380

Dòng code này sẽ tạo ra một cổng proxy SOCKS5 để bạn có thể sử dụng cho các mục đích khác nhau.

Nếu bạn muốn tạo proxy HTTP thì sử dụng lệnh

-L http://user:password@:24380

Nếu hai loại proxy trên vẫn chưa làm bạn hài lòng, và bạn muốn đồng thời có cả loại proxy là HTTP và SOCKS5 thì bạn trở lại cấu hình port cho container GOST (Hình 1). Sau đó bấm nút Add để thêm port mới. Bạn sẽ nhập địa chỉ port: 24381.

Sau đó copy dòng code sau để tạo đồng thời proxy HTTP và SOCKS5 với GOST

-L socks5://user:password@:24380 -L http://user:password@:24381

Bạn nhớ thay user:password thành tên người dùng và mật khẩu bạn muốn để bảo mật proxy tốt hơn, tránh bị các công cụ quét tự động.

Tạo cổng VPN Tunner với WireGuard

Bước 1: Kéo ảnh linuxserver/wireguard:latest từ Cloud image về Local image.

Sau khi đã tải xong bạn chuyển qua tab: Local Image, tại dòng chứa thông tin WireGuard bạn vừa tải –> Bấm nút: Create Container

Bước 2: Thiết lập container

2.1. Nhập thông tin cơ bản

Dòng: Container name – Bạn nhập tên cho container

2.2. Cấu hình Port

Bạn cấu hình port cho container giống như hình bên dưới

Cauhinh vpn container 01
Hình 3: Cấu hình port cho WireGuard Container

Tiếp theo bạn bấm vào dòng chữ: > More config, click to view để mở thêm tùy chọn cấu hình

2.3. Cấu hình Mount/Map

Mount path:

/www/dk_project/dk_app/wireguard/config

Bạn sẽ tạo thư mục theo đường dẫn, sau đó chọn trên khu vực cấu hình container khi cài đặt docker image.

Permissions: Read/Write

Container path

/config

2.4. Thiết lập quyền nâng cao

Trong mục: Console Interaction bạn tích chọn: Privilege Mode

2.5. Cấu hình Env variable

Code bạn cần copy vào mục Env variable như sau:

PUID=1000
PGID=1000
TZ=Asia/Ho_Chi_Minh
SERVERURL=45.32.114.225
SERVERPORT=51820
PEERS=1
PEERDNS=1.1.1.1
INTERNAL_SUBNET=10.13.13.0

Hoàn thành xong, bạn bấm nút Confirm.

Sau đó chuyển qua tab Container và bấm Restart container chứa ảnh của WireGuard, đợi một lúc vài s thì sẽ thấy container chạy thành công.

Rồi xong, bây giờ làm gì tiếp ^^

2.6. Tải file cấu hình máy khách

Trên menu bên trái của Aapanel, bạn vào mục FILES –> Sau đó điều hướng theo đường dẫn thư muc sau:

/www/dk_project/dk_app/wireguard/config

Khi đó bạn sẽ thấy có một folder tên:

Cauhinh vpn container 02
Hình 4: File chứa thông tin cấu hình WireGuard

Bạn truy cập vào folder này sẽ thấy file: peer1.conf

Bạn cần tải file này xuống và dùng nó để import vào phần mềm VPN WireGuard được cài đặt trên máy khách.

Việc cài đặt rất đơn giản, bạn chỉ cần truy cập: https://www.wireguard.com/install/ rồi chọn phiên bản tương ứng với hệ điều hành, tiến hành cài đặt.

Sau khi cài đặt xong, bạn import file peer1.conf vào phần mềm là có thể dùng được VPN luôn.

Cauhinh vpn container 03
Hình 5: Kích hoạt WireGuard trên máy tính cài Windows

Trong thư trên, cũng có một file hình ảnh chứa mã QR –> Bạn có thể cài app trên điện thoại và quét mã QR này để có thể cấu hình truy cập qua VPN trên điện thoại.