मुख्य सामग्री पर जाएँ

Squid

यह गाइड बताती है कि Squid 6.x को Glasswall Halo ICAP server के साथ कैसे कॉन्फ़िगर करें, जिससे Glasswall Halo के माध्यम से हमारी उन्नत Content Disarm and Reconstruction (CDR) तकनीक द्वारा उन्नत threat protection सक्षम होती है।

नोट: निर्देश OpenSSL के साथ built किए गए Squid 6.x पर आधारित हैं। configuration options की पूरी सूची के लिए, कृपया Squid documentation देखें।

Squid Integration Guide

चरण 1: मूल कॉन्फ़िगरेशन

अपनी Squid कॉन्फ़िगरेशन फ़ाइल खोजें और संपादित करें, जो आमतौर पर यहाँ होती है:

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

1A - एक्सेस कंट्रोल सूचियाँ परिभाषित करें

स्थानीय नेटवर्क और सुरक्षित पोर्ट्स के लिए निम्नलिखित ACLs को अनकमेंट करें या जोड़ें:

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 - स्थानीय नेटवर्क एक्सेस की अनुमति दें

अनुशंसित न्यूनतम एक्सेस अनुमति कॉन्फ़िगरेशन के अंतर्गत, यह जोड़ें:

http_port 3128
http_access allow localnet
http_access allow localhost
http_access deny all

1C - ICAP सक्षम करें

ICAP समर्थन चालू करने के लिए निम्नलिखित जोड़ें:

icap_enable on
icap_send_client_ip on
icap_preview_enable on
icap_preview_size 0
icap_service_failure_limit -1

1D - अनुरोध संशोधन कॉन्फ़िगर करें (uploads)

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

1E - प्रतिक्रिया संशोधन कॉन्फ़िगर करें (downloads)

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

चरण 2 - Persistent connections

Squid 6.x डिफ़ॉल्ट रूप से persistent ICAP connections का समर्थन करता है। लागू करने के लिए:

icap_persistent_connections on

सुझाव: सुनिश्चित करें कि ICAP server भी persistent connections के लिए कॉन्फ़िगर किया गया है। अन्यथा, त्रुटियों से बचने के लिए उन्हें disable (off) करें।

चरण 3 - squid को पुनः आरंभ करें

परिवर्तन लागू करें:

sudo systemctl restart squid

चरण 4 - समस्या निवारण (वैकल्पिक)

यदि आपको इस प्रकार की त्रुटियाँ दिखाई दें:

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

निम्नलिखित की जाँच करें:

  • पुष्टि करें कि आप नवीनतम स्थिर Squid 6.x चला रहे हैं
  • यदि persistent connections समस्याएँ पैदा करें, तो उन्हें अक्षम करें:
icap_persistent_connections off

चरण 5 - HTTPs सामग्री की स्कैनिंग

एन्क्रिप्टेड https ट्रैफ़िक को स्कैन करने के लिए, Squid को SSL के साथ compile किया जाना चाहिए और SSL bumping के लिए configure किया जाना चाहिए।

आवश्यकताएँ

  • openssl के साथ Squid 6.x
  • SSL interception के लिए एक root certificate

5A - Listening port अपडेट करें

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

5B - SSL bump configure करें

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 - Root certificate generate और install करें

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

Certificate storage initialize करें:

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

महत्वपूर्ण: अपने ब्राउज़र में myc.pem को एक विश्वसनीय root certificate के रूप में इंस्टॉल करें।

चरण 6 - अंतिम पुनरारंभ

सभी परिवर्तनों को अंतिम रूप देने के लिए Squid को पुनरारंभ करें:

sudo systemctl restart squid