SOCKS5, HTTP, HTTPS hay Shadowsocks: chọn loại proxy nào?
Loại nào mã hoá đường tới proxy, nhà mạng thấy được gì, loại nào chở UDP. So sánh thẳng thắn bốn loại proxy mà GreenTunnel hỗ trợ.
Khi thêm một profile trong Proxy Route, việc đầu tiên GreenTunnel hỏi là Loại: SOCKS5, HTTP, HTTPS hay Shadowsocks. Bốn cái tên nghe na ná nhau, nhưng khác nhau ở một điểm quan trọng: ai nhìn được gì trên đường đi. Bài này giải thích từng loại bằng ngôn ngữ đơn giản, kèm bảng so sánh để bạn chọn đúng.
Ba “người” có thể nhìn thấy lưu lượng của bạn
Khi dùng proxy, kết nối của bạn đi qua hai chặng: máy bạn → proxy, rồi proxy → trang web. Có ba bên đáng quan tâm:
- Người quan sát trên chặng đầu: nhà mạng, chủ quán cà phê có Wi-Fi, mạng công ty. Loại proxy quyết định họ thấy gì.
- Người vận hành proxy: luôn biết bạn kết nối tới đâu, với mọi loại proxy.
- Trang web: thấy IP của proxy thay vì IP của bạn.
Một tin tốt: phần lớn trang web ngày nay dùng HTTPS. Nội dung bạn xem (mật khẩu đăng nhập, tin nhắn, số thẻ) được mã hoá từ trình duyệt tới tận trang web, nên kể cả proxy không mã hoá cũng không đọc được nội dung đó. Cái bị lộ là tên trang và, với vài loại proxy, mật khẩu của chính proxy.
Người quan sát thấy gì với từng loại
SOCKS5
Giao thức proxy lâu đời và đa dụng. GreenTunnel gửi cho proxy tên miền đích (ví dụ example.com:443) dưới dạng văn bản thường. Nếu proxy yêu cầu đăng nhập, tên và mật khẩu cũng đi dạng văn bản thường. Ngoài ra gói tin đầu tiên của HTTPS chứa tên trang (SNI) cũng đi qua chặng này. GreenTunnel tách nhỏ tên trang ở cả hai chỗ để bộ lọc DPI đơn giản không đọc được, nhưng bản thân chặng này không được mã hoá.
SOCKS5 có thể chở UDP qua cơ chế UDP ASSOCIATE nếu máy chủ hỗ trợ. Trong GreenTunnel, công tắc Gửi cả UDP của SOCKS5 tắt sẵn. Hãy bật lên khi bạn chắc máy chủ hỗ trợ.
HTTP CONNECT
Kiểu proxy hay gặp ở công ty. GreenTunnel gửi dòng CONNECT example.com:443 tới proxy, và proxy mở đường hầm TCP tới trang đó. Dòng lệnh này, cùng mật khẩu kiểu “Basic” (chỉ là mã hoá base64, không phải mã hoá thật), đều đọc được trên đường. HTTP proxy chỉ chở TCP.
HTTPS proxy
Về bản chất vẫn là HTTP CONNECT, nhưng toàn bộ trao đổi với proxy nằm trong một kết nối TLS. Người quan sát chỉ thấy bạn kết nối tới proxy (tên và IP của nó), không thấy trang đích hay mật khẩu. GreenTunnel xác minh chứng chỉ của proxy, nên proxy cần chứng chỉ hợp lệ cho đúng tên máy chủ của nó. Chứng chỉ tự ký sẽ bị từ chối. Cũng như HTTP, loại này chỉ chở TCP.
Shadowsocks
Giao thức proxy được thiết kế để mã hoá ngay từ byte đầu tiên. Không có bước bắt tay nào lộ rõ: người quan sát chỉ thấy luồng dữ liệu trông như ngẫu nhiên đi tới một IP và cổng. GreenTunnel hỗ trợ các kiểu mã hoá AEAD phổ biến (aes-128-gcm, aes-256-gcm, chacha20-ietf-poly1305) và họ 2022-blake3-*. Mặc định là aes-256-gcm. UDP bật sẵn. Các plugin như obfs hay v2ray-plugin chưa được hỗ trợ.
Mã hoá không có nghĩa là “vô hình”: một số mạng vẫn có thể nhận ra hoặc chặn lưu lượng Shadowsocks. Đừng tin bất kỳ ai hứa hẹn điều ngược lại.


Bảng so sánh
| SOCKS5 | HTTP CONNECT | HTTPS proxy | Shadowsocks | |
|---|---|---|---|---|
| Mã hoá tới proxy | Không | Không | Có (TLS) | Có |
| Nhà mạng thấy trang đích | Có | Có | Không, chỉ thấy proxy | Không, chỉ thấy IP proxy |
| Mật khẩu proxy lộ trên đường | Có | Có | Không | Không |
| Chở UDP | Tuỳ chọn, nếu máy chủ hỗ trợ | Không | Không | Có (bật sẵn) |
| Cổng mặc định trong app | 1080 | 8080 | 443 | 8388 |
| Hợp với | mạng nội bộ tin cậy | proxy công ty | proxy dùng qua mạng lạ | máy chủ riêng ở xa |
Proxy và vượt chặn DPI
Với proxy SOCKS5 và HTTP thường, tên trang đi dạng rõ tới proxy hai lần: trong yêu cầu gửi proxy và trong gói HTTPS đầu tiên. GreenTunnel tách nhỏ cả hai trên đường tới proxy, giống như với kết nối đi thẳng. Với HTTPS proxy, bộ lọc chỉ thấy tên của chính proxy, và GreenTunnel cũng tách nhỏ tên đó, có ích khi chính proxy bị lọc. Shadowsocks không lộ tên nào nên không có gì để tách. WireGuard chạy trên UDP nên kỹ thuật tách gói không áp dụng được.
Mỗi profile SOCKS5, HTTP và HTTPS có công tắc Vượt DPI, bật sẵn. Hãy tắt nó nếu proxy chạy lỗi khi gói tin bị tách. Tách gói chỉ qua mặt được bộ lọc đơn giản chứ không mã hoá gì, nên trên mạng bạn không tin tưởng, loại có mã hoá vẫn là lựa chọn tốt hơn.
Vậy nên chọn loại nào?
- Công ty bắt dùng proxy: dùng đúng loại công ty cấp, thường là HTTP hoặc HTTPS. Bạn không có lựa chọn khác, và mạng công ty vốn đã tin cậy được ở mức nào đó.
- Proxy trong mạng nhà, hoặc đầu kia của đường hầm SSH: SOCKS5 là đủ, vì chặng đầu nằm trong mạng bạn kiểm soát.
- Máy chủ riêng ở xa, dùng qua Wi-Fi công cộng hay mạng di động: Shadowsocks (có UDP) hoặc HTTPS proxy.
- Cần chở mọi thứ, kể cả UDP, ở mức gói tin: cân nhắc Tunnel Link với WireGuard.
Khi tuyến đang dùng không chở được UDP, GreenTunnel chặn QUIC và mọi lưu lượng UDP khác trừ DNS, để trình duyệt và ứng dụng chuyển sang TCP qua proxy. Vì sao điều này không làm hỏng trang web, xem bài không rò rỉ khi proxy lỗi.
Proxy Route nằm trong ứng dụng GreenTunnel VPN. Xem cách GreenTunnel hoạt động ở trang chủ.
Câu hỏi thường gặp
Dùng SOCKS5 thì nhà mạng có đọc được mật khẩu ngân hàng của tôi không?
Không, nếu trang ngân hàng dùng HTTPS (gần như mọi ngân hàng đều vậy). Nội dung được trang web tự mã hoá. Nhà mạng chỉ thấy tên trang và mật khẩu của proxy, nếu proxy có yêu cầu.
HTTPS proxy có phải là proxy cho trang HTTPS không?
Không hẳn. Mọi loại proxy ở đây đều mở được trang HTTPS. “HTTPS proxy” nghĩa là kết nối tới chính proxy được mã hoá bằng TLS.
Shadowsocks có giúp tôi ẩn danh không?
Không. Shadowsocks che chặng từ máy bạn tới máy chủ, còn người vận hành máy chủ vẫn thấy bạn vào đâu, và trang web vẫn có thể nhận ra bạn qua tài khoản, cookie. Đây là công cụ riêng tư, không phải công cụ ẩn danh.
Tôi nên chọn kiểu mã hoá Shadowsocks nào?
Kiểu mà máy chủ của bạn đang dùng, vì hai đầu phải khớp nhau. Nếu bạn tự dựng máy chủ, aes-256-gcm hoặc chacha20-ietf-poly1305 đều là lựa chọn phổ biến.