====== squid + squidGuard + redireccion SSL ====== ===== Descripción ===== La redirecion a la pagina de error de squidguard no funciona para una pagina https. La solucion mostrada no es ideal, pero se ve mejor que una simple "NO conexion"\\ \\ EL problema puede leerse en el segundo comentario en  https:%%//%%groups.google.com/forum/#!topic/linux.debian.user/GE3bGE10bf4\\ \\ %%**%% Este metodo solo funciona con unos pocos navegadores (Opera), los demas siguien monstrando error\\ ===== Prerequistos ===== Un sistema con squid, squidguard ya montado  (Un boogon) y operativo ===== Configuración ===== ==== 1. Agregar soporte SSL a squid3 ==== \\ La recompilada esta bien documentada en  https://www.banym.de/linux/build-squid-with-enable-ssl-on-debian \\ Solo se requiere reinstalar squid3 y squid3-common. OJO no sobreescriba el archivo de configuracion\\ \\ $> dpkg -i squid3_3.1.20-2.2+deb7u2_amd64.deb squid3-common_3.1.20-2.2+deb7u2_all.deb\\ \\ \\ Seria bueno evitar que se actualizara este squid3 para no perder el soporte SSL\\ \\ echo "squid3 hold" | sudo dpkg --set-selections\\ echo "squid3-common hold" | sudo dpkg --set-selections\\  \\ %%**%% https:%%//%%www.debian-administration.org/article/67/Preventing_Debian_Package_Upgrades ==== 2. Permita la redireccion de https sin quejarse ==== En squid.conf agregue la linea\\ \\     sslproxy_flags DONT_VERIFY_PEER\\  \\ Esto se toma de http:%%//%%www.squid-cache.org/mail-archive/squid-users/200809/0081.html ==== 3. Paginas de error de squid personalizado de squid. ==== \\ En squid.conf agregue la linea\\ \\     error_directory /etc/squid3/pages\\ \\ Cree el directorio y copie las paginas de erro\\ \\ $> mkdir /etc/squid3/pages\\ $> cp /usr/share/squid3/errors/es/* /etc/squid3/pages\\ $> rm /etc/squid3/pages/ERR_CONNECT_FAIL\\ \\ Copie un archivo personalizado de pagina de error  error.page y vinculelo\\ \\ $> ln -s /etc/squid3/pages/error.page /etc/squid3/pages/ERR_CONNECT_FAIL\\ \\ Reinicie squid3\\ \\ \\ %%**%% https:%%//%%help.ubuntu.com/community/Squid/Customize\\   ==== 4. Cambie el archivo index.cgi   (de Webmin en Bogoon) ==== \\ En /usr/share/webmin/kn_sqG/index.cgi .. ponga la version nueva\\ \\ Esto es suficiente y debieria funcionar .. toco quitar el logo porque no lo muestra.\\   ===== Trucos ===== ===== Problemas ===== ==== 1. NO es posible ==== "...\\ Buenos Dias Carolina\\ \\ La última semana hemos estado trabajando en el requerimiento que nos hiciste, respecto a los nuevos proxy's, para redirigir las páginas https bloqueadas a una pagina de error personalizada como ya se hace con http.\\ \\ El resultado de nuestra investigación, muy a nuestro pesar, es que **no es posible** y que no hay nadie que pueda hacerlo sin romper los principios fundamentales del diseño de https.\\ \\ \\ 1. Por la naturaleza del protocolo HTTPs, este no puede ser redirigido. El tráfico http viene cifrado dentro de un tunel SSL/TLS y el intermediario (proxy) no puede interferir con este contenido para redirigir, re-escribir o hacer cualquier alteración del contenido. He ahi el encanto de https para evitar ataques o espionaje.\\ \\ Esto se se explica en  ([[https://groups.google.com/forum/#%21topic/linux.debian.user/GE3bGE10bf4|https:%%//%%groups.google.com/forum/#!topic/linux.debian.user/GE3bGE10bf4]]") donde dice\\ \\ " ...\\ A HTTP-Client doing HTTPS over a proxy like squid uses CONNECT (instead of HEAD, GET or POST) which instructs the proxy to open a TCP connection to the specified host and port and forward any bytes sent or received. Since inside that connection the data is encrypted, the proxy cannot do anything special with it.\\ ... "\\ \\ 2.  La  única forma de poder hacer una redirección de trafico https es romper el ciframiento SSL.  En el mismo documento:\\ \\ "...\\ The only way is to setup a transparent proxy, intercepting any outbound connection and terminating the encryption on the proxy. You will need a fake CA certificate with which the proxy is able to create  fake server certificates so the client still thinks it is connected to the real server.\\ \\ And here it gets a) dangerous and b) expensive.\\ ..."\\ \\ Esto es un ataque conocido como MIM (Man in the Middle), en el cual el proxy simula ser el origen e intermedia el trafico https hacia el destino y es usado para obtener contraseñas bancarias y hacer suplantación de usuarios.\\ Técnicamente es posible hacerlo: existe un plugin para squid llamado "SSL Bump" (http://www.squid-cache.org/Doc/config/ssl_bump/)  que permite implementar este mecanismo, pero en este momento debemos consultar las políticas internas de Almagrario y la ley Colombiana porque claramente violaríamos la privacidad de los usuarios internos (ejm: pudieramos ver todo el trafico bancario).\\ \\ Adicionalmente, consideramos que el riesgo y el esfuerzo no lo amerita, ya que solo pocas paginas candidatas a ser bloqueadas utilizan https. Solo entidades bancarias, o sitios que manejan información delicada lo hacen. El 90% del trafico de internet sigue siendo http.\\ \\ \\ Quedamos a la espera de una directiva ya que este tema es el único pendiente para entrar en producción.\\ \\ Cordial Saludo\\ ..."\\   ===== Referencias ===== - FIN ---- __**Advertencia**__ Este documento es privado y es de u so exclusivo de sus autores y de SKINA TECH. Cualquier uso sin una autorización escrita es contra la ley de derechos de autor y de propiedad intelectual, y será motivo de una acción legal. ----     ============================================================== \\ ==============================================================