Proxy Squid en Debian
Instalación
Como siempre es necesario actualizar el sistema e instalar el paquete software.
$ sudo apt-get update
$ sudo apt-get install squid3
Squid3 se instala y su servicio se arranca automáticamente, antes de cambiar la configuración lo paramos.
$ sudo service squid3 stop
O en Debian 8.
$ sudo systemctl stop squid3
Configuración de la autenticación
La configuración de Squid3 reside en /etc/squid3/squid.conf
donde configuraremos la seguridad básica utilizando htpasswd
, un programa que primero instalaremos.
$ sudo apt-get install apache2-utils
Utilizaremos el programa mencionado para generar un fichero con un usuario y una contraseña, pero primero escalaremos al direcctorio adecuado.
$ cd /etc/squid3
Y generaremos el usuario y la contraseña.
$ sudo htpasswd -bc squid_passwords usuario_proxy clave_proxy
Ahora editaremos el fichero /etc/squid3/squid.conf no sin antes hacer una copia de seguridad con
sudo cp squid.conf squid.conf.original`. Una vez hecho esto añadiremos el siguiente texto –línea 343– a squid.conf.
auth_param basic realm Acceso privado.
auth_param basic program /usr/lib/squid3/ncsa_auth /etc/squid3/squid_passwords
auth_param basic credentialsttl 4 hours
auth_param basic children 5
Y añadimos una lista de acceso en la línea 840.
acl ncsaauth proxy_auth REQUIRED
http_access allow ncsaauth
Para enmascarar las cabeceras editaremos el mismo fichero en la línea 3500
request_header_access Allow allow all
request_header_access Authorization allow all
request_header_access WWW-Authenticate allow all
request_header_access Proxy-Authorization allow all
request_header_access Proxy-Authenticate allow all
request_header_access Cache-Control allow all
request_header_access Content-Encoding allow all
request_header_access Content-Length allow all
request_header_access Content-Type allow all
request_header_access Date allow all
request_header_access Expires allow all
request_header_access Host allow all
request_header_access If-Modified-Since allow all
request_header_access Last-Modified allow all
request_header_access Location allow all
request_header_access Pragma allow all
request_header_access Accept allow all
request_header_access Accept-Charset allow all
request_header_access Accept-Encoding allow all
request_header_access Accept-Language allow all
request_header_access Content-Language allow all
request_header_access Mime-Version allow all
request_header_access Retry-After allow all
request_header_access Title allow all
request_header_access Connection allow all
request_header_access Cookie allow all
request_header_access Proxy-Connection allow all
request_header_access All deny all
Extra, cambio de User-Agent
Unas pocas líneas bajo la anterior sección encontraremos la sección # TAG: request_header_replace
que editaremos para pretender ser un usuario de Windows lo lo que se quiera.
request_header_replace User-Agent Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; AS; rv:11.0) like Gecko
Último toque para conseguir un mayor anonimato
La sección a editar esta vez, que se encuentra en la línea 5550 aproximadamente # TAG: forwarded_for on|off|transparent|truncate|delete
donde se añadira
#referencia_personal anonimato extra
forwarded_for off
Guardamos la configuración y ya casi estamos.
Arranque del servicio
Ejecutamos el siquiente comando y hemos terminado.
$ sudo service squid3 start
[ ok ] Starting Squid HTTP Proxy 3.x: squid3.
Configuración del proxy en el cliente Firefox
En la barra de navegación introducimos los siguiente about:config
y buscamos las opcines network.automatic-ntlm-auth.allow-proxies y network.negotiate-auth.allow-proxies que pondremos a false.