<![CDATA[Latest posts for the topic "Squid - Access Control"]]> /hvaonline/posts/list/24.html JForum - http://www.jforum.net Squid - Access Control squid.conf ( /etc/squid/squid.conf ) , mọi thay đổi ở file này bạn cần restart lại squid để có hiệu lực. 1.Hạn chế truy cập web theo thời gian: Code:
acl home_network src 192.168.1.0/24
acl allow_hours time M T W H F 9:00-17:00
acl RestrictedHost src 192.168.1.23

http_access deny RestrictedHost
http_access allow home_network allow_hours
Nếu bạn có các dòng trên trong file squid.conf thì các máy trong mạng nội bộ chỉ truy cập được vào mạng vào các ngày thứ 3 đến thứ 6 và trong thời gian 9h đến 17h. Trừ máy 192.168.1.23, vì bị cấm tất cả. M, T, W, H, F là viết tắt các ngày trong tuần ( chủ nhật : S, thứ bảy : A) Có thể dùng D để thay bằng các ngày trong tuần ( M - F ) 2.Hạn chế truy cập các website được ấn định trước : Đầu tiên tạo 2 file ở trong thư mục /etc/squid là allowed-sites.squid và restricted-sites.squid để chứa tên các domain cho phép truy cập và cấm truy cập. Code:
# File: /squid/allowed-sites.squid
www.hvaonline.net
fotech.org

# File: /etc/squid/restricted-sites.squid
www.sex.com
xxx.net
Nếu bạn muốn trong thời gian làm việc, cấm vào một số site và cho phép vào một số site nó thì : Code:
acl home_network src 192.168.1.0/24
acl work_hours time M T W H F 9:00-17:00
acl GoodSites dstdomain "/etc/squid/allowed-sites.squid"
acl BadSites  dstdomain "/etc/squid/restricted-sites.squid"

http_access deny BadSites
http_access allow home_network work_hours GoodSites
Bạn có thể dùng url_regex để hạn chế vào các domain name được ấn định: Code:
acl domainname url_regex -i ^http://www
http_access deny domainname
3.Hạn chế truy cập web theo địa chỉ ip : Bạn có thể tạo một access control list để hạn chế truy cập web trên một mạng nào đó. Code:
acl home_network src 192.168.1.0/255.255.255.0
http_access allow home_network

acl localhost dst 127.0.0.0/8
http_access allow localhost
4.Hạn chế nội dung các file download: Tạo một file chứ nội dung các phần đuôi của các tập tin mà bạn muốn hạn chế là blocks.files.acl nằm trong /etc/squid Code:
\.[Ee][Xx][Ee]$
\.[Aa][Vv][Ii]$
\.[Mm][Pp][Gg]$
\.[Mm][Pp][Ee][Gg]$
\.[Mm][Pp]3$
Thêm vào squid.conf dòng Code:
acl blockfiles urlpath_regex “/etc/squid/blocks.files.acl”
http_access deny blockfiles
5.Hạn chế truy cập theo cổng : vd Code:
acl httpports port 80 8000-8010 8080
http_access allow httpports
Các bạn nên duy trì và allow một số cổng. Dưới đây là một số cổng được cho là an toàn ( mặc định tỏng file squid.conf ) Code:
acl safe_ports port 80 # http
acl safe_ports port 21 # ftp
acl safe_ports port 443 563 # https snews
acl safe_ports port 70 # gopher
acl safe_ports port 210 # wais
acl safe_ports port 1025-65535 # unregistered ports
acl safe_ports port 280 # http-mgmt
acl safe_ports port 480 # gss-http
acl safe_ports port 591 # filemaker
acl safe_ports port 777 # multiling http

http_access deny !safe_ports
6.Hạn chế truy cập thep giao thức : Code:
acl FTP proto FTP
http_access deny FTP
7.Dùng NCSA kiểm định password: đầu tiên tạo một file password,vd /etc/squid/squid_passwd Code:
touch /etc/squid/squid_passwd
chmod o+r /etc/squid/squid_passwd
Dùng htpasswd để add user vào pass vào file squid_passwd đó Code:
htpasswd /etc/squid/squid_passwd vicki
New password:
Re-type new password:
Adding password for user vicki
giờ thêm vào file squid.conf Code:
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/squid_passwd
acl ncsa_users proxy_auth REQUIRED
http_access allow ncsa_users
Như vậy phải dùng user và pass được add vào file squid_passwd mới có thể truy cập vào internet được. Cũng có thể kết hợp thời gian để bắt kiểm định pass vào mốc thời gian nhất định ( tham khảo đầu bài ) Nếu bạn muốn mọi deny đều có một thông báo cho người dùng biết thì : Tạo một file deny.php với nội dung tùy bạn, đặt vào /var/www chẳng hạn. Code:
acl blacklist url_regex yahoo\.com vietnamnet\.vn
http_access deny blacklist
deny_info domain/deny.php blacklist
Bài viết chỉ lấy VD ở mỗi phần, bạn có thể tùy cơ ứng biến. Tham khảo thêm nội dung file squid.conf mặc định để hiểu thêm. Vickizw ]]>
/hvaonline/posts/list/12859.html#75833 /hvaonline/posts/list/12859.html#75833 GMT
Squid - Access Control /hvaonline/posts/list/12859.html#75838 /hvaonline/posts/list/12859.html#75838 GMT Squid - Access Control Code:
#
# Add this to the auth_param section of squid.conf
#
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/squid_passwd
 
#
# Add this to the bottom of the ACL section of squid.conf
#
acl ncsa_users proxy_auth REQUIRED
 
#
# Add this at the top of the http_access section of squid.conf
#
http_access allow ncsa_users
như vậy user sẽ biết cần phải đặt code ở đâu trong file squid.conf không thể cứ copy code rùi phang thẳng vào squid.conf, như vậy sẽ ko hoạt động được. ]]>
/hvaonline/posts/list/12859.html#75930 /hvaonline/posts/list/12859.html#75930 GMT
Squid - Access Control

nora wrote:
Bài của bạn rất khá, chẳng biết bạn dịch từ đâu, nhưng nên để nguyên comments nếu có. ví dụ phần Htpasswd auth: bạn nên để comment như sau: Code:
#
# Add this to the auth_param section of squid.conf
#
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/squid_passwd
 
#
# Add this to the bottom of the ACL section of squid.conf
#
acl ncsa_users proxy_auth REQUIRED
 
#
# Add this at the top of the http_access section of squid.conf
#
http_access allow ncsa_users
như vậy user sẽ biết cần phải đặt code ở đâu trong file squid.conf không thể cứ copy code rùi phang thẳng vào squid.conf, như vậy sẽ ko hoạt động được.  
Chào nora. Cám ơn bạn đã quan tâm và góp ý. Mình không dịch từ đâu cả, dựa vào những kiến thức đọc được và đã test qua mới viết bài này. Cho nên không viết comment được. Nếu một người hiểu được bài viết này thì cũng có thể biết nên đặt code ở đâu và đặt như thế nào để nó có thể hoạt động.]]>
/hvaonline/posts/list/12859.html#75933 /hvaonline/posts/list/12859.html#75933 GMT
Re:Squid - Access Control /hvaonline/posts/list/12859.html#75937 /hvaonline/posts/list/12859.html#75937 GMT Re:Squid - Access Control

nora wrote:
sorry, vậy bạn nên chỉ ra những chỗ cần lưu ý khi đưa code vào squid.conf thì hơn, theo tôi nếu bạn đã test thì ít nhiều cũng gặp trục trặc :) 
Ừ, để nói qua nhé. Khi sửa file squid.conf . VD thêm đoạn này vào file squid.conf Code:
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/squid_passwd
tìm trong file squid.conf với từ auth_param, và chèn đoạn code trên ngay dưới phần comment của nó. Rất mong mọi sự góp ý của mọi người.]]>
/hvaonline/posts/list/12859.html#76015 /hvaonline/posts/list/12859.html#76015 GMT
Squid - Access Control /hvaonline/posts/list/12859.html#76759 /hvaonline/posts/list/12859.html#76759 GMT Squid - Access Control

nora wrote:
vậy nếu file squid.conf ko có sẵn auth_param thì chèn vào đâu nhỉ? và tìm ở chỗ nào vậy? 
File squid.conf mặc định đều có đầy đủ các comment và example của tất cả các access list. Còn file squid.conf không phải là mặc định nữa ( được loại bỏ comment ) thi tùy cơ ứng biến thôi, lúc đó thì nội dung squid.conf cũng không dài lắm đâu.]]>
/hvaonline/posts/list/12859.html#76832 /hvaonline/posts/list/12859.html#76832 GMT
Re: Squid - Access Control Code:
acl abdc src	192.168.1.1/24
	acl work_hours time M T W H F 9:00-17:00
	acl GoodSites dstdomain "/etc/squid/allowed-sites.squid"
	acl BadSites dstdomain "/etc/squid/restricted-sites.squid"	
	
	http_access deny BadSites
	http_access allow  abdc work_hours GoodSites
Cho em hỏi trong file cấu hình trên em có đoạn acl work_hours time M T W H F 9:00-17:00 , em ấn định chỉ cho phép kết nối ra ngoài vào các ngày thứ 2,3,4,5,6 thì vẫn kết nối được những trang cho phép, còn khi kết nối đến những trang cấm thi không ra di ra ngoài được bởi những site có trong nội dung restricted-site.squid, => work_hours không có tác dụng. Mong các anh chỉ giúm !!!]]>
/hvaonline/posts/list/12859.html#107524 /hvaonline/posts/list/12859.html#107524 GMT
Squid - Access Control /hvaonline/posts/list/12859.html#280661 /hvaonline/posts/list/12859.html#280661 GMT