Как настроить Squid так, чтобы он возвращал пользовательские страницы ошибок на основе результатов адаптеров eCAP?
Адаптер eCAP настроен в squid.conf
как:
acl bypass_scan_types_req req_mime_type -i ^text/
acl bypass_scan_types_req req_mime_type -i ^application/x-javascript
acl bypass_scan_types_req req_mime_type -i ^application/x-shockwave-flash
acl bypass_scan_types_req req_mime_type -i ^image/
acl bypass_scan_types_req req_mime_type -i ^video
acl bypass_scan_types_req req_mime_type -i ^audio
acl bypass_scan_types_req req_mime_type -i ^.*application\/x-mms-framed.*$
acl bypass_scan_types_rep rep_mime_type -i ^text/
acl bypass_scan_types_rep rep_mime_type -i ^application/x-javascript
acl bypass_scan_types_rep rep_mime_type -i ^application/x-shockwave-flash
acl bypass_scan_types_rep rep_mime_type -i ^image/
acl bypass_scan_types_rep rep_mime_type -i ^video
acl bypass_scan_types_rep rep_mime_type -i ^audio
acl bypass_scan_types_rep rep_mime_type -i ^.*application\/x-mms-framed.*$
loadable_modules /usr/local/lib/ecap_clamav_adapter.so
ecap_service clamav_service_req reqmod_precache uri=ecap://e-cap.org/ecap/services/clamav?mode=REQMOD bypass=off
ecap_service clamav_service_resp respmod_precache uri=ecap://e-cap.org/ecap/services/clamav?mode=RESPMOD bypass=on
adaptation_access clamav_service_req allow !bypass_scan_types_req all
adaptation_access clamav_service_resp allow !bypass_scan_types_rep all
В случае обнаружения вируса адаптер возвращает некоторые подробности вируса, а Squid выдает страницу ошибки по умолчанию. Я хочу отобразить пользовательскую страницу ошибки вместо страницы по умолчанию.
Я попробовал добавив deny_info
но я не знаю точно, как указать acl
в этом случае. deny_info
Я попробовал это как:
deny_info custom_error.html <my_acl_here>
куда custom_error.html
существует в ~/ecap/squid-XXXX/errors/en/
, Пока я не ищу информацию о вирусах на странице ошибок, это может быть любая статическая страница.
Заранее спасибо!
1 ответ
Я нашел решение как:
Создать страницу на /usr/local/squid/share/errors/templates/ERR_ANY_NAME
, Затем добавьте следующую строку в конце squid.conf
:
deny_info ERR_ANY_NAME clamav_service_req
clamav_service_req
такой же, как указано в ecap_service
директива и ERR_ANY_NAME
пользовательская страница для отображения