Conectar pfsense a un proxy externo



  • Saludos colegas, explico misituacion y solicito ayuda. Resulta que mi coneccion a internet proviene mediante un proxy que se enceuntra en la oficina central de mi empresa. A ella me conecto por ADSL con un modem. Me dieron la tarea de montar una red interna con un active directory y un proxy interno en mi oficina que la internet la reciba subordinada al proxy central.

    Para ello instale un proxmox y virtualice pfsense y un server 12 r2 donde pongo mi dominio. Resulta que ahora no se si configurar el pfsense con bridge y y squid, o existe algun otra configuracion que me permita conectar mi red wan a la lan y dar la internet, recordando siempre que paso por un proxy central, y claro que debo montar mi propio proxy. Ser'a posible como lo digo o existe algo mejor??



  • Disculpa pero no comprendí bien lo que queres hacer.
    Decis que tu conexión a internet proviene mediante un proxyque se encuentra en la oficina y para realizar dicha conexión usas un modem ADSL? ¿Es así?

    Lo del proxmox, aunque lo use en mis pruebas personales, no podría decirte nada porque es un foro de pfSense.

    Para lo que traté de comprender, supongo que creaste dos tarjetas virtuales para el pfSense donde una sería la WAN la cual tomaría una IP del router ADSL, en caso que sea un Modem/Router y la otra tarjeta virtual para la red, dejando a pfSense como DHCP/Proxy y el AD, para control de la red interna.

    OJO, te funcionaría bien, dependiendo de las especificaciones de equipo donde montaste el Proxmox, pero si es un equipo básico o justo, vas a tener problemas de desempeño.



  • OK explico. Yo pertenezco a una empresa. Por lo que soy un sub dominio. La empresa queda a unos km de mi oficina. A ellos me conecto por adsl, y mi internet me entra mediante un proxy padre. Tengo instalado un pfsense, donde logro tener internet en mis pc en LAN configurando en sus navegadores mi proxy padre, pero eso no es lo que quiero. Lo que quiero es configurar mi propio proxy en pfsense para que me funcione con AD de mi dominio. El problema radica en que no me deja descargar los paquetes que necesito, me dice ¨ Unable to retrieve package information.¨ y al intentar hacerlo por comandos me dice que se requiere autenticacion. Antes le configure mi proxy padre en Miscelaneous con su correspondiente autenticacion pero no funciona. Si me pudieras ayudar le agradecería...



  • @LeoYoel

    En Miscelaneos, colocas Proxy es para que el Pfsense tenga salida a internet como cliente, es decir para poder actualizarlo o descargar paquetes.

    Lo que quieres hacer se llama "Parent Proxy"

    http://www.squid-cache.org/Doc/config/cache_peer/

    Serian opciones puras de Squid que debes setear en el pfsense en "opciones avanzadas del squid" ya que si mal no recuerdo, no están soportadas por el frontend web.

    Ahora, yo no enredaría el "papayago o cometa" yo simplemente solicitaría que a mi Proxy (tu pfsense) le den salida Directa internet. De esta forma el proxy tendría salida a internet sin problemas y los usuarios apuntarían a ese proxy para navegar.



  • @j-sejo1 Saludos amigo. Buena tu respuesta, me ha funcionado a la perfección. Solo que ahora me sirve nada más para los sitios HTTP, no para los que tienen seguridad SSL. Le activo la opcion en el Squid y configuro igual a informaciones que he obtenido pero nada. Acá dejo como tengo la configuracion.

    http_port 10.12.1.3:3128 ssl-bump generate-host-certificates=on dynamic_cert_mem_cache_size=10MB cert=/usr/local/etc/squid/serverkey.pem capath=/usr/local/share/certs/ cipher=EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA384:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH+aRSA+RC4:EECDH:EDH+aRSA:HIGH:!RC4:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS tls-dh=prime256v1:/etc/dh-parameters.2048 options=NO_SSLv2,NO_SSLv3,SINGLE_DH_USE,SINGLE_ECDH_USE

    http_port 127.0.0.1:3128 intercept ssl-bump generate-host-certificates=on dynamic_cert_mem_cache_size=10MB cert=/usr/local/etc/squid/serverkey.pem capath=/usr/local/share/certs/ cipher=EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA384:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH+aRSA+RC4:EECDH:EDH+aRSA:HIGH:!RC4:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS tls-dh=prime256v1:/etc/dh-parameters.2048 options=NO_SSLv2,NO_SSLv3,SINGLE_DH_USE,SINGLE_ECDH_USE

    https_port 127.0.0.1:3129 intercept ssl-bump generate-host-certificates=on dynamic_cert_mem_cache_size=10MB cert=/usr/local/etc/squid/serverkey.pem capath=/usr/local/share/certs/ cipher=EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA384:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH+aRSA+RC4:EECDH:EDH+aRSA:HIGH:!RC4:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS tls-dh=prime256v1:/etc/dh-parameters.2048 options=NO_SSLv2,NO_SSLv3,SINGLE_DH_USE,SINGLE_ECDH_USE

    icp_port 0
    digest_generation off
    dns_v4_first on
    pid_filename /var/run/squid/squid.pid
    cache_effective_user squid
    cache_effective_group proxy
    error_default_language es
    icon_directory /usr/local/etc/squid/icons
    visible_hostname midominio.com
    cache_mgr meEmail@midominio.com
    access_log /var/squid/logs/access.log
    cache_log /var/squid/logs/cache.log
    cache_store_log none
    netdb_filename /var/squid/logs/netdb.state
    pinger_enable on
    pinger_program /usr/local/libexec/squid/pinger
    sslcrtd_program /usr/local/libexec/squid/ssl_crtd -s /var/squid/lib/ssl_db -M 4MB -b 2048
    sslcrtd_children 5
    sslproxy_capath /usr/local/share/certs/
    sslproxy_options NO_SSLv2,NO_SSLv3,SINGLE_DH_USE,SINGLE_ECDH_USE
    sslproxy_cipher EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA384:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH+aRSA+RC4:EECDH:EDH+aRSA:HIGH:!RC4:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS
    sslproxy_flags DONT_VERIFY_PEER
    sslproxy_cert_adapt setValidBefore all

    logfile_rotate 0
    debug_options rotate=0
    shutdown_lifetime 3 seconds
    forwarded_for on
    uri_whitespace strip

    cache_mem 64 MB
    maximum_object_size_in_memory 256 KB
    memory_replacement_policy heap GDSF
    cache_replacement_policy heap LFUDA
    minimum_object_size 0 KB
    maximum_object_size 4 MB
    cache_dir ufs /var/squid/cache 100 16 256
    offline_mode off
    cache_swap_low 90
    cache_swap_high 95
    cache allow all

    refresh_pattern ^ftp: 1440 20% 10080
    refresh_pattern ^gopher: 1440 0% 1440
    refresh_pattern -i (/cgi-bin/|?) 0 0% 0
    refresh_pattern . 0 20% 4320

    cache_peer 200.0.xxxx.75 parent 3128 7 no-query default allow-miss login=miUser:miPass*

    acl safeports port 21 70 80 210 280 443 488 563 591 631 777 901 3128 3129 1025-65535
    acl sslports port 443 563

    acl purge method PURGE
    acl connect method CONNECT

    acl HTTP proto HTTP
    acl HTTPS proto HTTPS

    acl step1 at_step SslBump1
    acl step2 at_step SslBump2
    acl step3 at_step SslBump3
    acl allowed_subnets src 100.122.xxx.0/24
    http_access allow manager localhost

    http_access deny manager
    http_access allow purge localhost
    http_access deny purge
    http_access deny !safeports
    http_access deny CONNECT !sslports

    http_access allow localhost

    request_body_max_size 0 KB
    delay_pools 1
    delay_class 1 2
    delay_parameters 1 -1/-1 -1/-1
    delay_initial_bucket_level 100
    delay_access 1 allow allsrc

    url_rewrite_program /usr/local/bin/squidGuard -c /usr/local/etc/squidGuard/squidGuard.conf
    url_rewrite_bypass off
    url_rewrite_children 16 startup=8 idle=4 concurrency=0

    ssl_bump peek step1
    ssl_bump splice all

    http_access allow allowed_subnets

    http_access deny allsrc

    He buscado informacion en internet pero todo lo que he visto es posteando problemas nadie llega a una solucion en concreto. En esera de una esperanza que me ayude con el tema, lo retomo, por favor si alguien sabe algo que me ayude. Gracias....



  • Explico el error que me da es SSL_ERROR_RX_RECORD_TOO_LONG



  • Buenos alli si desconozco un poco el tema de filtro SSL, ya que yo uso mas Proxy No transparente por que lo integro con Ldap o AD.



  • @j-sejo1 Si, en mi caso tambien, pero n así funciona, lo puse transparente a ver que pasaba, pero ni eso....



  • Entonces tu proxy a la final tiene salida a internet directa pero a través de un proxy transparente el cual es el de la oficina central.

    La salida de tu pfsense debe ser limpia, directa. Sino siempre vas a tener casos como que: estas bloqueando algo, pero no eres tu, es el control que tienes en la oficina central.



  • Pero asi me funciona ok, me da acceso a toda la red, simplemente me da ese error cunado trato de acceder a las SSL, comprendo lo que dices, pero antes de tener pfsense tenia un squid en ubuntu con las mismas caracter'isticas y funcionaba ok...


Log in to reply