Como todos sabem é possível personalizar aquela mensagem de ACCESS DENIED que o squid nos mostra quando tentamos acessar algum site bloqueado, por se tratar de uma página HTML é possível fazer muitas coisas com ela, e deixá-la personalizada da maneira desejada.
Para cada mensagem de erro o squid possui um arquivo para tratá-la. Irei me deter somente a mensagem de acesso negado.
Para podermos personalizar a mensagem que aparece devemos acessar o local onde estão armazenadas as mensagens. No no meu caso em:
/usr/share/squid/errors/Personalizado
Personalizado é o nome do diretório onde deixei minhas mensagens de erros personalizadas.
Utilizando o vi podemos editar a mensagem, inserir imagens e outras coisas mais.
O squid disponibiliza uma lista de códigos que ao serem incorporado a mensagem nos retornam algo.
A listá é a seguinte:
- %a
- User identity 
- %B
- URL with FTP %2f hack 
- %c
- Squid error code 
- %d
- seconds elapsed since request received (not yet implemented) 
- %D
- 
Squid-generated
 error details. May contain other error page formating codes. Currently 
only SSL connection failures are detailed. For example, %D in a 
customized ERR_SECURE_CONNECT_FAIL response may be expanded 
into "The host name you are connecting to (foo.com) does not match any 
of the certificate names (foo.org, foo.net)..."). Supported since Squid 
v3.2.0.4. See also: application-level error code (%x) and system level 
error code/detail (%e/%E).  
- %e
- errno 
- %E
- strerror() 
- %f
- FTP request line 
- %F
- FTP reply line 
- %g
- FTP server message 
- %h
- cache hostname 
- %H
- server host name 
- %i
- client IP address 
- %I
- 
server IP address (NP: upper case i)  
- %l
- 
Local site CSS stylesheet. (Squid-3.1 and later) (NP: lower case L)  
- %L
- 
contents of err_html_text config option  
- %M
- Request Method 
- %m
- Error message returned by external auth helper 
- %o
- Message returned by external acl helper 
- %p
- URL port \# 
- %P
- Protocol 
- %R
- Full HTTP Request 
- %S
- squid default signature. (Squid prior to 3.1 automatically add unless %s is used.) 
- %s
- caching proxy software with version 
- %t
- local time 
- %T
- UTC 
- %U
- URL without password 
- %u
- URL with password. (Squid-2.5 and later only.) 
- %W
- Extended error page data URL-encoded for mailto links. 
- %w
- cachemgr email address 
- %x
- Application-level
 error name or identifier (e.g., X509_V_ERR_UNABLE_TO_GET_CRL). 
Currently only supported for SSL certificate validation errors. See 
also: system-level error code/detail (%e/%E) and application-level error
 detail (%D). 
- %z
- DNS server error message 
- %Z
- Message generated during the process which failed. May be ASCII-formatted. Use within HTML PRE tags. 
- Fonte: http://wiki.squid-cache.org/Features/CustomErrors
 Após personalizarmos nossa página devemos dizer para o squid de onde ele deve buscar essas informações:
 
 Devemos editar o arquivo squid.conf
 
 #vi /etc/squid/squid.conf
 
 Localizar error_directory /usr/share/squid/errors/English
 
 E alterar para o diretório criado.
 error_directory /usr/share/squid/errors/Personalizado
 
 Após isso é necessário executar o comando:
 squid -k reconfigure
 
 
 Assim as novas configurações do squid entram em vigor.