(D240809) OPNsense Caching Proxy - Tối ưu hóa việc phân phối Web bằng Squid
Gần đây đường truyền mạng ra quốc tế thường xuyên không ổn định, do đó tôi nghĩ đến việc dựng một proxy trước mạng nội bộ của mình để cải thiện chất lượng mạng.
Do đang sử dụng OPNsense làm router / firewall do đó tôi sẽ cài đặt trực tiếp trên nó, Squid được hỗ trợ trên OPNsense có thể cấu hình tương đối dễ dàng.
OPNsense được trang bị proxy lưu trữ đệm chuyển tiếp (trong suốt) đầy đủ tính năng. Proxy lưu trữ đệm giúp giảm băng thông và cải thiện thời gian phản hồi bằng cách lưu trữ đệm và sử dụng lại các trang web thường được yêu cầu.
Squid là một proxy lưu trữ đệm cho Web hỗ trợ HTTP, HTTPS, FTP, v.v. Nó giảm băng thông và cải thiện thời gian phản hồi bằng cách lưu trữ đệm và sử dụng lại các trang web thường được yêu cầu. Nó chạy trên hầu hết các hệ điều hành hiện có, bao gồm cả Windows.
Với việc các trang web hiện nay hầu như sử dụng HTTPS thì caching proxy còn rất ít tác dụng trong môi trường bình thường. Tuy nhiên nó vẫn hữu ích nếu như bạn có một số lượng lớn các máy tính / máy ảo cần cập nhật thường xuyên qua HTTP:
- Windows Update
- Linux Packages
- macOS Update
Các bước tiến hành
1. Cài đặt Squid
Cài đặt os-squid
qua System ‣ Firmware ‣ Plugins để sử dụng proxy web.
2. Thiết lập Proxy lưu trữ đệm
Để bật proxy, chỉ cần vào Services ‣ Web Proxy ‣ Administration và chọn Enable proxy rồi nhấp vào Apply.
3. Bật bộ nhớ đệm
Để bật tính năng lưu trữ đệm, hãy nhấp vào mũi tên bên cạnh General Proxy Settings để xem menu thả xuống và nhấp vào Local Cache Settings.
Đánh dấu vào mục Enable local cache và nhấp vào Apply.
4. HTTP trong suốt
Chế độ trong suốt có nghĩa là mọi yêu cầu sẽ được chuyển hướng đến proxy mà không cần bất kỳ cấu hình nào trên máy khách của bạn.
Vào Services ‣ Web Proxy ‣ Administration
Sau đó chọn General Forward Settings trong tab Forward Proxy.
Chọn Enable Transparent HTTP proxy và nhấp vào Apply.
5. Quy tắc NAT/Tường lửa
Một cách đơn giản để thêm Quy tắc NAT/Tường lửa là nhấp vào biểu tượng (i) ở bên trái tùy chọn Bật proxy HTTP trong suốt và nhấp vào thêm quy tắc tường lửa mới.
Để tham khảo, đây là các thiết lập mặc định:
Interface | LAN |
TCP/IP VERSION | IPv4 |
Protocol | TCP |
Source | LAN net |
Source port range | any - any |
Destination | any |
Destination port range | HTTP - HTTP |
Redirect target IP | 127.0.0.1 |
Redirect target port | other/3128 |
Description | redirect traffic to proxy |
NAT reflection | Enable |
Filter rule association | Add associated filter rule |
Các giá trị mặc định khá ổn, chỉ cần nhấn Save và Apply Changes.
Tôi không sử dụng IPv6 do đó không phải chỉnh Squid và quy tắc NAT cho IPv6.
6. Tinh chỉnh
Các giá trị mặc định của OPNsense:
OPNsense | Squid config | Giá trị | Ghi chú |
---|---|---|---|
Memory Cache size in Megabytes | cache_mem | 32 | giới hạn về dung lượng bộ nhớ |
Cache size in Megabytes | cache_dir Mbytes | 100 | lượng dung lượng đĩa (MB) |
Maximum object size (MB) | maximum_object_size | 4 | tham số max-size trên bất kỳ cache_dir nào |
Điều chỉnh như dưới đây:
OPNsense | Squid config | Giá trị | Ghi chú |
---|---|---|---|
Memory Cache size in Megabytes | cache_mem | 2048 | tùy thuộc RAM trống |
Cache size in Megabytes | cache_dir Mbytes | 48000 | 80% ổ đĩa trống |
Maximum object size (MB) | maximum_object_size | 4096 | dung lượng file tối đa |
Tham khảo
- OPNsense Caching Proxy
- OPNsense Setup Caching Proxy
- OPNsense Setup Transparent Proxy
- Squid: Optimising Web Delivery