a) Tập tin cấu hình
Tất cả các tập tin cấu hình chính của Squid được lưu trử trong thư mục /etc/squid. Một tập tin cấu hình quan trong quyết định sự hoạt động của Squid là squid.conf. Trong tập tin cấu hình này có 125 tag tùy chọn, những chỉ có một số tùy chọn được cấu hình, và những dòng chú thích bắt đầu bằng “#”. Chúng ta chỉ cần thay đổi 8 tùy chọn cơ bản là squid hoạt động được.
b) Những tùy chọn cơ bản
Chúng ta cần phải thay đổi một số tùy chọn cơ bản để squid hoạt động. Mặc định squid cấm tất cả các browser truy cập. Sau đây là những miêu tả về tùy chọn này:
• http_port: Cấu hình cổng HTTP mà squid sẽ lắng nghe những yêu cầu được gửi đến.
• Cú pháp: http_port <công>
• Mặc định: http_port 3128. Ta thường thay đổi cổng này là 8080 và được khai báo như sau: http_port 8080
• icp_port<cổng>: Cấu hình cổng để gửi và nhận ICP queries. • Cache_mem: Chỉ định bộ nhớ thích hợp cho các đối tượng.
• Cache_dir: Cấu hình thư mục lưu trử dữ liệu được cache, thư mục này có kích thước mặc định là 100MB.
• Cache_dir ufs /usr/local/squid/cache 100 18 256 • Level: 16, level 2:256
• Cache_access_log: chỉ ra tập tin nơi lưu trử log.
• Dead_peer_timeout 10 seconds: thời gian lắng nghe kết nối.
• Cache_effective_user, cache_effective_group: người dùng và nhóm có thể thay đổi squid.
•Cache_swap_low: Chỉ định kích thước thấp nhất của cache object khi thay thế (được tính bằng % với vùng nhớ cache)
• Cache_swap_high: Chỉ định kích thước cao nhất của cache object khi thay thế (được tính bằng % với vùng nhớ cache)
• Cache_access_log: Lưu trử các activity request của client yêu cầu đến proxy server để truy xuất Web.
• Cache_store_log: Lưu trử các thông tin vầ đối tượng được cache trên proxy, thời gian lưu trử.
• Cache_peer: Nếu proxy không kết nối trục tiếp đến internet hoặc proxy nằm sau một firewall thì ta phải cấu hình proxy này truy vấn đến proxy khác bằng tham số. Cú pháp: Cache_peer host/IP type http_port icp_port
o Type= parent: truy vấn đến proxy khác (cha)
o Sibling: chia sẽ cache giữa các proxy (ngang hàng).
Ví dụ:
Cache_peer 192.168.11.1 parent 8080 8082 Cache_peer 192.168.11.10 sibling 8080 8082 Cache_peer vinhuni.edu.vn parent 8080 8082
Các thành viên của trường Đại học Vinh phải khai báo như trên khi kết nối tới.
Cache_effective_user, cache_effevtive_group: người dùng và nhóm có thể đổi squid.
Ví dụ:
Cache_effecvive_user squid Cache_effective_group squid
Access Control list và Access control Operator: Chúng ta có thể dùng Access Control List và Access Control Operators để ngăn chặn, giới hạn việc truy xuất dựa vào tên miền, địa chỉ IP đích (IP của máy hoặc mạng). Mặc định squid từ chối phục vụ tất cả. Vì vậy, bạn phải cấu hình lại tham số này. Cú pháp định nghĩa Access List dùng tag acl.
Acl aclname acltype string1 Acl aclname acltype “file” - Định nghĩa alc:
acl aclname acltype string1 hoặc “file” o Aclname: Tên của acl
o Acltype: src IP address/netsmask o Srcdomain domain
o dst IP address/netmask o dstdomain domain
o alc aclname time [day of week] [h1:m1-h2:m2] o acl aclname port 80 70 21…
o acl aclname proto HTTP FTP… o acl aclname method GET POST…
- Sử dụng access list vào các tag điều khiển truy cập:
http_access allow/deny aclname
Ví dụ: Một số mẫu về acl
- Cho phép mạng 172.16.1.0/24 được dùng proxy server bằng từ khóa src trong acl
Acl MyNetwork src 172.16.1.0/255.255.255.0 http_access allow MyNetwork
http_acceess deny all
- Cấm truy cập đến site yahoo.com
Acl baddomain dstdomain yahoo.com http_access deny baddomain
- Giới hạn thời gian truy xuất: Ta dùng acl type kiểu là time, trong đó MTWHF tương ứng là thứ hai, thứ ba, thứ tư, thứ 5, thứ 6.
http_access allow business_hours
- Chỉ định hostname cho server: Visible_hostname <hostname> để chỉ định hostname cho squid proxy.
Ví dụ: Cấu hình các tham số chính Visible_hostname server10 http_port 8080 icp_port 8082 cache_peer 192.168.10.210 parent 8080 8082 dead_peer_timeout 10 seconds
cache_dir ufs /var/spool/squid 100 16 256 cache_access_log /var/log/squid/access.log
Khởi động Squid
#service squid start/restart/stop