Hola mis ardillas! Hoy les traigo un tip? mini tutorial? para navegar a través de la internet de tu casa sin filtros a todas las paginas que quieras. Si, a esas también ¬¬
Para ello, en la PC de nuestra casa, que por supuesto tiene Linux (?), actualizamos nuestros repos e instalamos Squid:
apt-get update
apt-get upgrade
apt-get install squid
Si tenes Windows con antivirus no te aflijas, también hay Squid para Windows, acá te dejo un tutorial de instalación. Cuando termines dirá la base de datos de virus ha sido actualizada (?).
Ahora vamos al archivo de configuración del Squid y permitimos toda la navegación sin restricciones:
nano /etc/squid/squid.conf
Para habilitar nuestra red local agregamos la siguiente linea:
acl localnet src "TuLAN"
En mi caso:
acl localnet src 192.168.5.0/24
Luego, para permitir todo el trafico http agregamos:
http_access allow all
Guardamos los cambios y reiniciamos el servicio:
systemctl restart squid.service
Nos anotamos la IP de este servidor porque la vamos a necesitar.
Lo que sigue es en nuestro Router hacer el NAT con la redirección del puerto. Esto varia dependiendo de cada Router, pero generalmente en tu Router tiene que haber una parte de NAT que te permita indicar que puerto queres redireccionar (3128) y desde que IP privada (IP del server con Squid) a que IP publica (la IP por la que navegas).
En mi caso:
Indico nombre descriptivo, el puerto que va a atender externamente e internamente y la IP privada del servidor al que le instale el Squid (la que anotamos en el paso anterior).
Fijense que el Nateo se realiza desde la interfaz WAN1 así que ahora vamos a ver que IP publica tiene configurada esa interfaz porque va a ser la que vamos a tener que configurar en la maquina de destino:
Vemos que la IP es la 200.xxx.xxx.xx
Una vez realizado este paso nos vamos a la maquina de destino a configurar el proxy.
En tu navegador predeterminado (o no), en mi caso Firefox, vamos a la configuración del Proxy y en proxy server address va la IP publica (la de la WAN1), en mi caso:
Y el puerto por defecto es el 3128.
Aceptamos, y si ingresamos a Cual es mi ip vamos a ver que estamos saliendo por la publica de nuestra casa:
Si quito el proxy y vuelvo a Cual es mi ip salgo por la IP Publica del lugar donde me encuentro:
Listo, ya burlaste el sistema (?). ¿Que se siente? ¬¬
Compartí, dale, no seas egoísta, ¿que te cuesta?
Dale like al FACE, ¿es un click entendes? Cada click es una inyección anímica!
Nos vemos, abrazo (?).
Mostrando entradas con la etiqueta Squid. Mostrar todas las entradas
Mostrando entradas con la etiqueta Squid. Mostrar todas las entradas
lunes, 18 de mayo de 2020
viernes, 18 de marzo de 2011
Instalar y configurar proxy Squid en Debian y Ubuntu
Un proxy básicamente es un programa o dispositivo que recibe las peticiones de una red y en base a diferentes reglas que tiene configuradas las permite o no.
Por ejemplo, si mi PC sale a internet directamente a traves de un router standard va a poder acceder a todas las paginas que desee. El diagrama sería algo así:
PC > ROUTER > INTERNET
Ahora, con un proxy en el medio la salida a internet estaría limitada por las reglas que le configuremos:
PC > PROXY > ROUTER > INTERNET
Si en el proxy configuramos una regla donde, por ejemplo, nadie pueda acceder a youtube al intentar hacerlo aparecerá un mensaje como éste:
Para instalarlo solo necesitamos a nuestro querido apt-get:
sudo apt-get install squid
Una vez instalado procedemos a configurarlo, para ello editamos el siguiente archivo:
sudo nano /etc/squid/squid.conf
1. Con Ctrl + W buscamos la siguiente linea: http_port 3128
En esta linea configuramos el puerto por el cual Squid "escuchará" las peticiones. Por defecto viene el 3128, podemos cambiarlo por ejemplo al 8080. En mi caso, dejo el que viene por defecto.
2. Nuevamente con Ctrl + W buscamos la siguiente linea: cache_mem 8 MB
Aquí configuraremos la cantidad de memoria asignada para la caché de Squid. Ésta valor va a depender de la cantidad de RAM de la máquina, pero si tenemos 1GB podemos asignarle unos 256 MB. No olviden descomentar las líneas (quitar el simbolo #)
3. Buscamos la linea: cache_dir ufs /var/spool/squid 100 16 256
Este parámetro se encarga de asignar un espacio en el disco para almacenar la caché de Squid. Ufs es el formato con el que Squid guarda la caché en disco, luego viene la ruta donde se almacenará la misma y, por ultimo, aparece el tamaño máximo en disco que Squid utilizará.
Al primer valor (100) le asignaremos 1000 (MB), este valor no puede ser menor que el que hemos asignado antes a la memoria caché. Luego vienen los parámetro de directorio primario (16) y directorio secundario (256) en niveles. Establecerá 16 directorios de primer nivel y 256 subdirectorios de segundo nivel. Estos valores conviene dejarlo por defecto.
Hasta fue la configuración del proxy. Ahora seguimos con las listas de control de acceso:
1. Buscamos la linea: acl CONNECT method CONNECT
Aquí crearemos la primera regla que luego permitiremos (o denegaremos). La regla debe comenzar con "acl" y luego elegiremos el nombre de la misma, el metodo de acceso y por ultimo el rango de acceso. Por ejemplo:
acl redlocal src 192.168.1.0/24
En ésta regla indicamos cual es el origen de las conexiones. En este caso es la dirección de red 192.168.1.0 con mascara 255.255.255.0. Lo que abarca el rango de IP desde 192.168.1.0 hasta 192.168.1.255 (tener en cuenta que la primer dirección y la última no deben utilizarse).
Ahora crearemos otra regla para denegar la conexión a distintas paginas:
acl denegado url_regex "/etc/squid/denegado"
El método url_regex es para que el proxy analice las direcciones de acuerdo a las palabras que anotemos en una lista. En éste ejemplo luego del método colocamos una ruta con un archivo que Squid chequeará antes de permitir la conexión. Ese archivo estará formado por todas las palabras que queremos denegar. En lugar de la ruta podríamos escribirlas todas una al lado de la otra, separadas por espacios, pero si son muchas quedaría bastante desprolijo. Entonces, las 2 reglas que creamos quedaron de la siguiente forma:
2. Para permitir o denegar las reglas que creamos en el paso anterior debemos buscar la siguiente linea: http_access y debajo de la linea que dice # Only allow cachemgr access from localhost agregamos:
http_access deny denegado
http_access allow redlocal
Con esto denegamos el listado de palabras situado en "/etc/squid/denegado" y permitimos las conexiones de nuestra red.
Ya con esto estaría configurado el archivo squid.conf. Presionamos Ctrl + O para guardar, ENTER para mantener el nombre del archivo y Ctrl + X para salir.
Ahora crearemos el archivo con las palabras que deseamos denegar, para ello escribimos en la terminal:
sudo nano /etc/squid/denegado
Acá ingresamos todas aquellas palabras que queremos denegar una debajo de la otra. Guardamos con Ctrl + O, presionamos ENTER para mantener el nombre del archivo y Ctrl + X para salir.
3. Para activar el servicio escribimos en la terminal:
sudo /etc/init.d/squid restart
También podemos usar el parámetro "reload" en lugar de "restart" si en lugar de reiniciar el servicio solo queremos "recargar" la configuración del archivo squid.conf. Otros parametros posibles son "start" para iniciar el servicio o "stop" para detenerlo.
Aclaración: Cuando seguí estos pasos con Ubuntu 10.10 a la hora de reiniciar el servicio me encontré con que no estaba en /etc/init.d/squid sino en /etc/default/squid. Así que si no les llega a funcionar el paso anterior prueben escribiendo directamente "sudo squid restart" (si les dice que "Squid is already running!" deberán primero "matarlo" con "sudo kill NumeroProcessID" . En Debian 6.0 Squeeze funciona todo tal cual fue descripto.
Para hacer efectivo la configuración de nuestro proxy debemos configurarlo en el navegador.
1. Para Internet Explorer vamos a "Herramientas" > "Opciones de internet" > Pestaña "Conexiones" > "Configuración LAN"
Tildamos "Usar un servidor proxy para la LAN", en dirección escribimos la direccion IP de la máquina en la que está corriendo Squid y en puerto el 3128 (si es que no lo cambiamos). También debemos tildar la opción "No usar servidor proxy para direcciones locales".
Y listo, ya no deberia permitirnos ingresar a las palabras claves del archivo "denegado" ubicado en "/etc/squid/"
2. Por supuesto que el proxy se puede configurar en cualquier navegador. Por ejemplo para Chromium con Debian / Ubuntu debemos ir a "Herramientas" > "Opciones" ("Preferencias") > "Avanzadas" > "Cambiar la configuración del proxy" > "Configuración manual del proxy".
3. Para Firefox: "Herramientas" > "Opciones" o "Editar" > "Preferencias" > "Avanzadas" > Pestaña "Red" > "Configuración" > "Configuracion manual del proxy"
Y así con todos :)
Para que el proxy nos devuelva los mensajes de error en español debemos editar el archivo de configuración:
sudo nano /etc/squid/squid.conf
Luego buscamos la linea "error_directory /usr/share/squid/errors/en" la descomentamos y al final en lugar de "en" (inglés) escribimos "es" (español).
Guardamos con Ctrl + O, presionamos ENTER para mantener el nombre del archivo y Ctrl + X para salir.
Para que haga efecto la nueva configuración ejecutamos en la terminal:
sudo /etc/init.d/squid reload
Si deseamos editar los mensajes de error debemos seguir la ruta "/usr/share/squid/errors/es" y editar el mensaje que queramos. Dentro de esa carpeta aparecen todos los archivos con los mensajes de error que al ser abiertos a traves de un editor de texto podremos ver que están hechos con HTML con lo cual podremos editarlas facilmente y dejar el mensaje como queramos. Por ejemplo, yo edité el mio y quedó así:
Por ultimo, y ya para finalizar el tutorial, decirles que si desean ver el log con los intentos de acceso a las palabras clave denegadas pueden hacerlo abriendo el archivo ubicado en /var/log/squid/access.log.
Eso ha sido todo, a denegar! :P
Referencia: Instalación de un servidor proxy Squid en Ubuntu
IMPORTANTE: Si lo que queres es bloquear una sola página, o unas pocas, quizás te convenga hacerlo editando el archivo hosts como expliqué una vez aquí. Ahí no vas a tener que instalar ni configurar nada, basta con editar un solo archivo.
Por ejemplo, si mi PC sale a internet directamente a traves de un router standard va a poder acceder a todas las paginas que desee. El diagrama sería algo así:
PC > ROUTER > INTERNET
Ahora, con un proxy en el medio la salida a internet estaría limitada por las reglas que le configuremos:
PC > PROXY > ROUTER > INTERNET
Si en el proxy configuramos una regla donde, por ejemplo, nadie pueda acceder a youtube al intentar hacerlo aparecerá un mensaje como éste:
Para instalarlo solo necesitamos a nuestro querido apt-get:
sudo apt-get install squid
Una vez instalado procedemos a configurarlo, para ello editamos el siguiente archivo:
sudo nano /etc/squid/squid.conf
1. Con Ctrl + W buscamos la siguiente linea: http_port 3128
En esta linea configuramos el puerto por el cual Squid "escuchará" las peticiones. Por defecto viene el 3128, podemos cambiarlo por ejemplo al 8080. En mi caso, dejo el que viene por defecto.
2. Nuevamente con Ctrl + W buscamos la siguiente linea: cache_mem 8 MB
Aquí configuraremos la cantidad de memoria asignada para la caché de Squid. Ésta valor va a depender de la cantidad de RAM de la máquina, pero si tenemos 1GB podemos asignarle unos 256 MB. No olviden descomentar las líneas (quitar el simbolo #)
3. Buscamos la linea: cache_dir ufs /var/spool/squid 100 16 256
Este parámetro se encarga de asignar un espacio en el disco para almacenar la caché de Squid. Ufs es el formato con el que Squid guarda la caché en disco, luego viene la ruta donde se almacenará la misma y, por ultimo, aparece el tamaño máximo en disco que Squid utilizará.
Al primer valor (100) le asignaremos 1000 (MB), este valor no puede ser menor que el que hemos asignado antes a la memoria caché. Luego vienen los parámetro de directorio primario (16) y directorio secundario (256) en niveles. Establecerá 16 directorios de primer nivel y 256 subdirectorios de segundo nivel. Estos valores conviene dejarlo por defecto.
Hasta fue la configuración del proxy. Ahora seguimos con las listas de control de acceso:
1. Buscamos la linea: acl CONNECT method CONNECT
Aquí crearemos la primera regla que luego permitiremos (o denegaremos). La regla debe comenzar con "acl" y luego elegiremos el nombre de la misma, el metodo de acceso y por ultimo el rango de acceso. Por ejemplo:
acl redlocal src 192.168.1.0/24
En ésta regla indicamos cual es el origen de las conexiones. En este caso es la dirección de red 192.168.1.0 con mascara 255.255.255.0. Lo que abarca el rango de IP desde 192.168.1.0 hasta 192.168.1.255 (tener en cuenta que la primer dirección y la última no deben utilizarse).
Ahora crearemos otra regla para denegar la conexión a distintas paginas:
acl denegado url_regex "/etc/squid/denegado"
El método url_regex es para que el proxy analice las direcciones de acuerdo a las palabras que anotemos en una lista. En éste ejemplo luego del método colocamos una ruta con un archivo que Squid chequeará antes de permitir la conexión. Ese archivo estará formado por todas las palabras que queremos denegar. En lugar de la ruta podríamos escribirlas todas una al lado de la otra, separadas por espacios, pero si son muchas quedaría bastante desprolijo. Entonces, las 2 reglas que creamos quedaron de la siguiente forma:
2. Para permitir o denegar las reglas que creamos en el paso anterior debemos buscar la siguiente linea: http_access y debajo de la linea que dice # Only allow cachemgr access from localhost agregamos:
http_access deny denegado
http_access allow redlocal
Con esto denegamos el listado de palabras situado en "/etc/squid/denegado" y permitimos las conexiones de nuestra red.
Ya con esto estaría configurado el archivo squid.conf. Presionamos Ctrl + O para guardar, ENTER para mantener el nombre del archivo y Ctrl + X para salir.
Ahora crearemos el archivo con las palabras que deseamos denegar, para ello escribimos en la terminal:
sudo nano /etc/squid/denegado
Acá ingresamos todas aquellas palabras que queremos denegar una debajo de la otra. Guardamos con Ctrl + O, presionamos ENTER para mantener el nombre del archivo y Ctrl + X para salir.
3. Para activar el servicio escribimos en la terminal:
sudo /etc/init.d/squid restart
También podemos usar el parámetro "reload" en lugar de "restart" si en lugar de reiniciar el servicio solo queremos "recargar" la configuración del archivo squid.conf. Otros parametros posibles son "start" para iniciar el servicio o "stop" para detenerlo.
Aclaración: Cuando seguí estos pasos con Ubuntu 10.10 a la hora de reiniciar el servicio me encontré con que no estaba en /etc/init.d/squid sino en /etc/default/squid. Así que si no les llega a funcionar el paso anterior prueben escribiendo directamente "sudo squid restart" (si les dice que "Squid is already running!" deberán primero "matarlo" con "sudo kill NumeroProcessID" . En Debian 6.0 Squeeze funciona todo tal cual fue descripto.
Para hacer efectivo la configuración de nuestro proxy debemos configurarlo en el navegador.
1. Para Internet Explorer vamos a "Herramientas" > "Opciones de internet" > Pestaña "Conexiones" > "Configuración LAN"
Tildamos "Usar un servidor proxy para la LAN", en dirección escribimos la direccion IP de la máquina en la que está corriendo Squid y en puerto el 3128 (si es que no lo cambiamos). También debemos tildar la opción "No usar servidor proxy para direcciones locales".
Y listo, ya no deberia permitirnos ingresar a las palabras claves del archivo "denegado" ubicado en "/etc/squid/"
2. Por supuesto que el proxy se puede configurar en cualquier navegador. Por ejemplo para Chromium con Debian / Ubuntu debemos ir a "Herramientas" > "Opciones" ("Preferencias") > "Avanzadas" > "Cambiar la configuración del proxy" > "Configuración manual del proxy".
3. Para Firefox: "Herramientas" > "Opciones" o "Editar" > "Preferencias" > "Avanzadas" > Pestaña "Red" > "Configuración" > "Configuracion manual del proxy"
Y así con todos :)
Para que el proxy nos devuelva los mensajes de error en español debemos editar el archivo de configuración:
sudo nano /etc/squid/squid.conf
Luego buscamos la linea "error_directory /usr/share/squid/errors/en" la descomentamos y al final en lugar de "en" (inglés) escribimos "es" (español).
Guardamos con Ctrl + O, presionamos ENTER para mantener el nombre del archivo y Ctrl + X para salir.
Para que haga efecto la nueva configuración ejecutamos en la terminal:
sudo /etc/init.d/squid reload
Si deseamos editar los mensajes de error debemos seguir la ruta "/usr/share/squid/errors/es" y editar el mensaje que queramos. Dentro de esa carpeta aparecen todos los archivos con los mensajes de error que al ser abiertos a traves de un editor de texto podremos ver que están hechos con HTML con lo cual podremos editarlas facilmente y dejar el mensaje como queramos. Por ejemplo, yo edité el mio y quedó así:
Por ultimo, y ya para finalizar el tutorial, decirles que si desean ver el log con los intentos de acceso a las palabras clave denegadas pueden hacerlo abriendo el archivo ubicado en /var/log/squid/access.log.
Eso ha sido todo, a denegar! :P
Referencia: Instalación de un servidor proxy Squid en Ubuntu
IMPORTANTE: Si lo que queres es bloquear una sola página, o unas pocas, quizás te convenga hacerlo editando el archivo hosts como expliqué una vez aquí. Ahí no vas a tener que instalar ni configurar nada, basta con editar un solo archivo.
Etiquetas:
Debian,
Internet,
Linux,
Navegadores,
Seguridad,
Squid,
Tips,
Tutoriales,
Ubuntu
Suscribirse a:
Entradas (Atom)

