Cài đặt và cấu hình Squid Proxy trên CentOS


Bước 1: Cho đĩa source CentOS vào ổ đĩa và mount ổ đĩa này trong CentOS bằng lệnh

mount /dev/cdrom /media

Bước 2: Cài đặt squid

          rpm –ivh /media/Packages/perl-DBI-1.609-4.el6.i686.rpm

          rpm –ivh /media/Packages/squid-3.1.10-16.el6.i686.rpm

Bước 3: Mở file cấu hình squid /etc/squid/squid.conf lên cấu hình:

          vi /etc/squid/squid.conf

Bổ sung thêm một số dòng thích hợp và sửa các dòng mặc định trong file cấu hình để cho phép các máy khác có thể thông qua máy proxy này đi được internet.

VD: acl LAN src 172.16.1.0/16 #Khai bao lớp mạng nào được phép đi Internet

       http_access allow LAN       #Cho phép nhánh mạng tên LAN được đi Internet

Nếu cấm thì thay allow thành deny như sau: http_access deny LAN

Dòng: http_port 3128   #Có ý nghĩa port dùng để đi internet bằng proxy là 3128

Bỏ dấu # trước dòng cache_dir ufs …. Để cho phép cache     

Nếu muốn tăng bộ nhớ cache cho proxy ta bổ sung thêm dòng

            cache_mem 1024 MB  #Cho phép cache là 1024MB

Bước 4: Save file cấu hình lại, start dịch vụ squid, cho phép squid khởi động cùng hệ thống và tắt tường lửa

          service squid start

          chkconfig squid on

          service iptables stop

          chkconfig iptables off

Bước 5: Lấy máy client nào đó lên để test đi internet

Khai báo địa chỉ ip thích hợp


Chỉnh cho phép đi internet thông qua proxy trên các trình duyệt, ở đây là IE





Kiểm tra log của proxy bằng lệnh: vi /var/log/squid/access.log

Kết quả trong file access.log ta thấy có ghi nhận đã đi trang vnexpress.net


CÁCH SỬ DỤNG MỘT SỐ RULE CƠ BẢN TRONG SQUID

1.   Cấm một số địa chỉ url và sub url địa chỉ web

Viết rule
       acl TrangCamTruyCap url_regex -i "/etc/squid/TrangCamTruyCap.txt"
 http_access deny TrangCamTruyCap
Tạo trang TrangCamTruyCap.txtchứa các url cần cấm:
       vnexpress.net
 docbao.vn/tin-tuc/cong-nghe
2.   Tự động redirect sang một trang nào đó nếu truy cập vào trang bị cấm truy cập
VD ở đây khi truy cập vào trang bị cấm là vnexpress.net thì tự động redirect sang google.com

Viết rule

Deny_info http://google.com TrangCamTruyCap #TrangCamTruyCap là của acl ở trên, phải có dòng này để nó biết rule này áp dụng đối với acl nào.

3.   Cấm download một số file theo định dạng nào đó

VD ở đây cấm truy cập các file có đuôi là mp3 và exe

Viết rule

      acl CacFileCamTruyCap url_regex -i .mp3 .exe
http_access deny CacFileCamTruyCap
4.   Cấm download file theo dung lượng quy định:

Viết rule
           acl LAN src 172.16.0.0/16

           reply_body_max_size 3 MB LAN

5.   Cấm upload file theo dung lượng quy định:

Viết rule
           acl LAN src 172.16.0.0/16
           request_body_max_size 3 MB LAN

6.   Cho phép user nào được đi internet bằng proxy:

a.   Cài httpd bằng lệnh (cài online): yum install –y httpd (công dụng là để thực hiện được command htpasswd)

b.   Tạo file chứa tài khoản dùng để chứng thực:
touch /etc/squid/Ten_file

c.   Cấp thêm quyền read cho file này
chmod o+r /etc/squid/Ten_file      

d.   Tạo user và pass dùng để chứng thực chứa trong file này
htpasswd /etc/squid/Ten_file TenUserMuonTao
Sau đó nhập vào pass cho user này

e.   Thêm các dòng sau vào file cấu hình của squid
              auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/Ten_file
              acl ncsa_users proxy_auth REQUIRED
        http_access allow ncsa_users

·        Lưu ý:Những user này là user dành cho chứng thực squid không phải là user của hệ điều hành, vì vậy có thể tạo trùng tên hay khác tên với các user của hệ điều hành đều được.

Trên đây chỉ là những cấu hình cơ bản của squid, ngoài ra squid còn hỗ trợ rất mạnh những rule khác có thể tham khảo thêm tại trang http://wiki.squid-cache.org để biết thêm cách sử dụng.
----------------------------------------

MỘT SỐ LỖI THƯỜNG GẶP PHẢI KHI SỬ DỤNG SQUID VÀ CÁCH KHẮC PHỤC

1.   Khi start hay restart squid thì gặp lỗi này

Ý nghĩa lỗi này là bộ nhớ cache lớn hơn tổng dung lượng của đĩa dành cho cache.

Cách khắc phục: thêm dòng cache_mem 100 MB vào file cấu hình của squid, tức là cho bộ nhớ cache có dung lượng là 100 MB tùy theo dung lượng còn trống của đĩa cứng mà khai báo thông số này cho thích hợp.

2.   Các máy khác không đi được internet thông qua proxy

Cách khắc phục là kiểm tra xem đã start hay restart lại dịch vụ squid chưa, kiểm tra xem có tắt tường lửa hay chưa và nếu mở tường lửa thì có chỉnh các rule thích hợp cho proxy hay không

          service squid start
 hoặc service squid restart
 và chkconfig iptables on
 hoặc service iptables stop
 hoặc chkconfig iptables off

Các bạn có thể xem video bên dưới:



Share on Google Plus

About Lý Hoàng Đông

Hy vọng các bạn thích bài viết này và chia sẽ đến với những người khác. Xin cảm ơn các bạn!
    Blogger Comment
    Facebook Comment

0 comments:

Post a Comment