Langkau ke kandungan utama

Squid

Panduan ini menerangkan cara untuk mengkonfigurasi Squid 6.x dengan Glasswall Halo ICAP server, membolehkan perlindungan ancaman lanjutan melalui teknologi Content Disarm and Reconstruction (CDR) lanjutan kami melalui Glasswall Halo.

Nota: arahan adalah berdasarkan Squid 6.x built with OpenSSL. untuk senarai penuh pilihan konfigurasi, sila rujuk dokumentasi Squid.

Panduan Integrasi Squid

Langkah 1: Konfigurasi asas

Cari dan edit fail konfigurasi Squid anda, biasanya di:

  • /etc/squid/squid.conf
  • /etc/squid5/squid.conf

1A - Takrifkan senarai kawalan akses

Nyahkomen atau tambah ACL berikut untuk rangkaian tempatan dan port selamat:

acl localnet src 10.0.0.0/8
acl localnet src 172.16.0.0/12
acl localnet src 192.168.0.0/16
acl localnet src fc00::/7
acl localnet src fe80::/10

acl SSL_ports port 443
acl Safe_ports port 80
acl Safe_ports port 21
acl Safe_ports port 443
acl Safe_ports port 70
acl Safe_ports port 210
acl Safe_ports port 1025-65535
acl Safe_ports port 280
acl Safe_ports port 488
acl Safe_ports port 591
acl Safe_ports port 777
acl CONNECT method CONNECT

1B - Benarkan akses rangkaian tempatan

Di bawah konfigurasi kebenaran akses minimum yang disyorkan, tambah:

http_port 3128
http_access allow localnet
http_access allow localhost
http_access deny all

1C - Dayakan ICAP

Tambah yang berikut untuk menghidupkan sokongan ICAP:

icap_enable on
icap_send_client_ip on
icap_preview_enable on
icap_preview_size 0
icap_service_failure_limit -1

1D - Konfigurasikan pengubahsuaian permintaan (muat naik)

icap_service glasswall_req reqmod_precache bypass=0 icap://<Halo ICAP Server>:1344/req-cdr-service
adaptation_access glasswall_req allow all

1E - Konfigurasikan pengubahsuaian respons (muat turun)

icap_service glasswall_resp respmod_precache bypass=0 icap://<Halo ICAP Server>:1344/req-cdr-service
adaptation_access glasswall_resp allow all

Langkah 2 - Sambungan berterusan

Squid 6.x menyokong sambungan ICAP berterusan secara lalai. Untuk menguatkuasakan ini:

icap_persistent_connections on

Petua: pastikan pelayan ICAP juga dikonfigurasikan untuk sambungan berterusan. Jika tidak, nyahdayakannya (off) untuk mengelakkan ralat.

Langkah 3 - Mulakan semula squid

Gunakan perubahan:

sudo systemctl restart squid

Langkah 4 - Penyelesaian masalah (pilihan)

Jika anda melihat ralat seperti:

essential ICAP service is down after an options fetch failure: icap://<Halo ICAP Server>:1344/req-cdr-service [down,!opt]

Semak perkara berikut:

  • Sahkan anda menjalankan Squid 6.x stabil terkini
  • Jika sambungan berterusan menyebabkan isu, nyahdayakannya:
icap_persistent_connections off

Langkah 5 - Mengimbas kandungan HTTPs

Untuk mengimbas trafik https yang disulitkan, Squid mesti dikompil dengan SSL dan dikonfigurasikan untuk SSL bumping.

Keperluan

  • Squid 6.x dengan openssl
  • Sijil root untuk pemintasan SSL

5A - Kemas kini port pendengaran

http_port 3128 ssl-bump generate-host-certificates=on dynamic_cert_mem_cache_size=4MB cert=<SQUIDFOLDER>/etc/ssl/myc.pem

5B - Konfigurasikan SSL bump

sslcrtd_program <SQUIDFOLDER>/lib/squid/ssl_crtd -s <SQUIDFOLDER>/var/cache/squid_ssldb -M 4MB
sslcrtd_children 5
ssl_bump server-first all

acl step1 at_step SslBump1
ssl_bump peek step1
ssl_bump bump all

sslproxy_cert_error deny all

5C - Jana dan pasang sijil root

openssl req -new -newkey rsa:2048 -days 1000 -nodes -x509 -keyout myc.pem -out myc.pem

Mulakan storan sijil:

rm -rf <SQUIDFOLDER>/var/cache/squid_ssldb
<SQUIDFOLDER>/lib/squid/ssl_crtd -c -s <SQUIDFOLDER>/var/cache/squid_ssldb

Penting: pasang myc.pem sebagai sijil root yang dipercayai dalam pelayar anda.

Langkah 6 - Mulakan semula terakhir

Mulakan semula Squid untuk memuktamadkan semua perubahan:

sudo systemctl restart squid