Buenas, estoy tratando de instalar un servidor proxy en una VM, pero si lo instalo ahí, ya que no es un PC real, me capara toda la red de casa cuando yo la VM abierta o tiene que ser un PC real?
Un saludo.
Buenas, estoy tratando de instalar un servidor proxy en una VM, pero si lo instalo ahí, ya que no es un PC real, me capara toda la red de casa cuando yo la VM abierta o tiene que ser un PC real?
Un saludo.
#2 y #3 gracias por contestar tan rápido
Ya tengo la máquina en adaptador puente, y el squid instalado, sé que la config del squid está en /etc/squid3/squid.conf pero de este fichero no sé tocar casi nada.
Lo estoy haciendo en Ubuntu Server 13.04 y hay poca documentación sobre esta nueva versión, no sé si será lo mismo seguir guías de la 12.10 o cambia algo.
Simplemente quiero aprender a capar páginas web en la red de mi casa ( las webs que yo quiera) eso tengo entendido que se hace con listas de control de acceso pero no tengo mucha idea.
Saludos!
#4 Yo te puedo ayudar, justamente hace nada que hemos estado haciendo un proxy con el squid3 y me lo se de memoria.
Antes que nada, haz una copia del squid.conf y ejecuta este comando sobre el original, eso lo limpiara para dejarlo con lo basico y necesario, a partir de ahi ya puedes añadir acl y aplicarlas:
sed -i "/#/d;/ *$/d" /etc/squid/squid.conf
Aqui unos cuantos comandos utiles:
squid3 -z - regenera los directorios de la cache por si los cambias de sitio o algo
squid3 -k reconfigure - reinicia la configuracion para aplicar las nuevas entradas del squid.conf sin interrumpir el funcionamiento.
#5 Gracias por los pasos.
Los he seguido pero sigue sin funcionar, te pongo capturas a ver si he hecho algo mal :S.
Cuando he tocado el fichero squid.conf he hecho un restart al servicio para que los cambios se apliquen con "sudo service squid3 restart"
La máquina está recién instalada sin ningún servicio más, puede ser por eso? Hace falta DNS o poner la IP en estática? La tengo en adaptador puente y en DHCP.
Lo digo de memoria pero, creo que esta mal.
En el squid.conf debes indicar 3 cosas fundamentalmente:
1- la red a la que va a afectar las reglas: Acl red src 192.168.2.0/255.255.255.0
2- el fichero: Acl no_permitidos src "/path/no_permitidos"
3- Por ultimo: http_access deny no_permitidos !localhost
Por lo tanto en squid.conf debes tener esas 3 lineas.
En el fichero "no_permitidos" tendras los dominios.
Cada cambio necesita reiniciar squid.
Te recomiendo que busques tutoriales por la red, hay miles y todos sirven. La distro da igual. Encuentra un tuto facil, solo para que compruebes que funciona, luego ya haras una conf mas avanzada, si es que la necesitas o interesa.
Luego, una vez hecho esto, para probarlo deberas indicar en el proxy de tu navegador la ip y puerto del squid. Si quieres hacerlo transparente tendrás que rediriguir todo el trafico para que pase por el squid.
No recuerdo como era con una lista de dominios en un archivo, aunque en tu denegadas.txt lo tienes mal escrito.
Pero vamos si quieres denegar youtube por ejemplo, en el squid.conf
acl localnet src 192.168.0.0/16 -aqui pones tu red, eso por si solo no hace nada, solo identifica el trafico-
acl dominios_denegados dstdomain .youtube.com
http_access allow localnet !dominios_denegados -esto es donde le dices que hacer con el trafico que has identificado en las ACL-
#7 estas 3 lineas las añado tal cual en el fichero squid.conf?
Acl red src 192.168.2.0/255.255.255.0
Acl no_permitidos src "/path/no_permitidos"
http_access deny no_permitidos !localhost
Si al final de todo, pero cambia la red, la ruta al fichero de denegación y fijate que la acl de localhost este definida en el fichero.
Si te das cuenta ahi dice que denege el servicio a las urls especificadas excepto a localhost.
Luego miras la ip de la maquina virtual (ifconfig) y configuras el proxy de tu navegador con los datos del servidor.
#10 Ok, luego lo miro y comento.
Pero yo lo que quiero es, en una maquina virtual instalar el squid, y que este afecte a toda mi red, es decir, a mi pc, portatiles que se conecten a mi red por wifi, etc. Es eso posible o el proxy solo afectará a la maquina virtual?
Si está la tarjeta de red en modo puente lógicamente será como otro equipo de la red, pero para que te afecte a todos los equipos como dices deberías montar un proxy transparente y usarlo como puerta de enlace. Otro modo es tener que configurar todos los equipos de la red para que usen el proxy. Para que sea transparente tendrás que hacer una regla en iptables que redirija el tráfico al puerto del Squid, por defecto el 3128. Pero de todos modos el equipo tiene que ser la puerta de enlace, lo que significa que necesitas 2 tarjetas de red en el equipo donde tienes el proxy configurado, conectar a una de ellas un switch/punto de acceso con los equipos de la red y la otra tarjeta conectarla a tu router y activar el NAT para que los equipos conectados al proxy puedan acceder a la red del router y por supuesto a Internet.
Otro método como he dicho es forzar a los navegadores de todos los equipos de la red a conectarse al proxy Squid, teniendo que configurarlos manualmente. O con un ataque man in the middle podrías hacer que se redirijan las peticiones al proxy si suplantas a la puerta de enlace.
#12 Y hay algún manual en Internet de como hacer todo eso? Lo que me gustaría es que yo no tuviera que configurar los navegadores de cada PC, que el proxy se ponga automáticamente, a eso se le llama proxy transparente no?
Para hacer el proxy transparente deberas indicar en cada pc que la puerta de enlace es la maquina virtual.
Luego en la maquina virtual definir las reglas iptables. Asi como indicarle al squid que va actuar de forma transparente, en internet tienes tutos. Busca: squid transparent.
Y claro, deberas tener la maquina virtual encendida siempre para que puedan navegar.