Página 1 de 21 123456 ... ÚltimoÚltimo
+ Responder ao Tópico



  1. #1

    Padrão Detalhando proxy paralelo com o linux

    Olá pessoal,
    Hoje eu vou detalhar como configurar o proxy paralelo ao squid linux, tema que vem deixando muita gente com dúvidas.

    Note: O material disposto aqui é auto explicativo. Definirei por passos.

    Créditos: Adaptação do material Linux: Proxy em paralelo com o mikrotik [Artigo]


    Vamos dar início ao material.

    Note: Neste servidor contém 3 placas de rede.

    Passo 1:
    ■ Como de costume, eu nomeio as interfaces:

    /interface set ether1 name=internet
    /interface set ether2 name=rede
    /interface set ether3 name=linux



    Passo 2:
    ■ Ajustar os ips das interfaces:

    /ip address add address=200.221.4.2/30 interface=internet
    /ip address add address=10.10.1.1/24 interface=rede
    /ip address add address=15.15.0.1/30 interface=linux



    Passo 3:
    ■ Ajustar o gateway:

    /ip route add gateway=200.221.4.1


    Passo 4:
    ■ Ajustar o dns:

    /ip dns set primary-dns=200.221.4.1
    /ip dns static add name="DNS Clientes" address=10.10.1.1
    /ip dns static add name="DNS Linux" address=15.15.0.1



    Passo 5:
    ■ Compartilhar à internet com o linux e os clientes:

    /ip firewall nat add chain=srcnat src-address=10.10.1.0/24 action=masquerade comment="Masquerade para rede mikrotik-cliente"
    /ip firewall nat add chain=srcnat src-address=15.15.0.0/30 action=masquerade comment="Masquerade para a rede mikrotik-linux"



    Passo 6:
    ■ Configurar o web-proxy:

    /ip web-proxy set port=3127 hostname=proxy transparent-proxy=yes
    parent-proxy=15.15.0.2 cache-administrator=webmaster cache-drive=system max-cache-size=none max-ram-cache-size=unlimited enabled=yes max-object-size=4096


    Note: O parent proxy port terá que ser setado pelo winbox para 3128 ou porta que você configurar no squid.conf.


    Passo 7:
    ■ Redirecionar a rede mikrotik-clientes para o proxy:

    /ip firewall nat chain=dstnat in-interface=network src-address=10.10.1.0/24 dst-address=!192.168.1.4 protocol=tcp dst-port=80 action=redirect to-ports=3127

    Note: A parte destacada acima indica que toda rede 10.10.1.0/24 com destino à... pela porta 80 será redirecionada para o proxy exceto o ip da interface de internet. Isto se dá porque você poderá acessar o seu servidor ou outro aparelho na rede remotamente e ser redirecionado para o proxy.


    Passo 8:
    ■ Permitir e bloquear acesso ao web-proxy:

    /ip web-proxy access add src-address=10.10.1.0/24 action=allow comment="permite acesso para rede"

    /ip web-proxy access add action=deny comment="bloqueia acesso de outras redes"


    Passo 9:
    ■ Bloquear acesso externo ao proxy:

    /ip firewall filter add chain=input dst-address=192.168.1.4 protocol=tcp dst-port=3127 in-interface=internet action=drop


    Passo 10:
    ■ Configurar conexão no linux:

    # ifconfig eth0 15.15.0.2 netmask 255.255.255.0 up
    # route add default gw 15.15.0.1



    Passo 11:
    ■ Compartilhar conexão:

    # modprobe iptable_nat
    # echo 1 > /proc/sys/net/ipv4/ip_forward
    # iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE


    Note: Isto não é necessário, mas por via das dúvidas, melhor aplicar.

    Bônus:
    ■ squid.conf

    Código :
    # CONFIGURACAO DO SQUID LINUX PARALELO AO MIKROTIK
    #por Raniel Guimaraes [Mr. RG]
     
    http_port 3128 transparent
    visible_hostname server
     
    # Configuracao do cache
    cache_mem 32 MB
    maximum_object_size_in_memory 64 KB
    maximum_object_size 512 MB
    minimum_object_size 0 KB
    cache_swap_low 90
    cache_swap_high 95
    cache_dir ufs /var/spool/squid/ 2048 16 256
     
    # Localizacao do log de acesso do Squid
    cache_access_log /var/log/squid/access.log
     
    refresh_pattern ^ftp:  15 20% 2280
    refresh_pattern ^gopher: 15 0% 2280
    refresh_pattern .  10 20% 2280
     
    acl all src 0.0.0.0/0.0.0.0
    acl manager proto cache_object
    acl localhost src  127.0.0.1/255.255.255.255
    acl SSL_ports port 443 563
    acl Safe_ports port 80 # http
    acl Safe_ports port 21 # ftp
    acl Safe_ports port 443 563 # https, snews
    acl Safe_ports port 70 # gopher
    acl Safe_ports port 210 # wais
    acl Safe_ports port 1025-65535 # unregistered ports
    acl Safe_ports port 280 # http-mgmt
    acl Safe_ports port 488 # gss-http
    acl Safe_ports port 591 # filemaker
    acl Safe_ports port 777 # multiling http
    acl Safe_ports port 901 # swat
    acl purge method PURGE
    acl CONNECT method CONNECT
     
    http_access allow manager localhost
    http_access deny manager
    http_access allow purge localhost
    http_access deny purge
    http_access deny !Safe_ports
    http_access deny CONNECT !SSL_ports
     
    # Libera para a rede local
    acl redelocal src 15.15.0.0/30
    http_access allow localhost
    http_access allow redelocal
     
    # Bloqueia acesso externo
    http_access deny all
    Note: É altamente recomendável verificar se o squid está mesmo sendo executado.


    Considerações:

    ■ Este esquema foi aplicado com a seguinte disposição:

    mikrotik 2.9.27
    slackware linux
    squid 2.6 stable14


    É isto aí... discutiremos ao decorrer do post.

    Espero que tire algumas dúvidas.

    Até mais.

  2. #2

    Padrão

    Amigo qual a vantagem de possui um proxy paralelo utilizando a conexão de internet do MK?
    Não seria mais viavel se o proxy em linux tivesse uma conexão com a internet independente do MK?



  3. #3

    Padrão

    Grande Mr. RG., muito bom mesmo sua explicação, será muito proveitoso pra muitos aqui no forum, inclusive para mim.
    Valeu por compartilhar um pouco do seu conhecimento!!!

  4. #4

    Padrão

    /ip address add address=200.221.4.2/30 interface=internet
    /ip address add address=10.10.1.1/24 interface=rede
    /ip address add address=15.15.0.1/30 interface=linux
    ____________________________________________________________________________
    ■ Redirecionar a rede mikrotik-clientes para o proxy:

    /ip firewall nat chain=dstnat in-interface=network src-address=10.10.1.0/24 dst-address=!192.168.1.4 protocol=tcp dst-port=80 action=redirect to-ports=3127

    Ok amigo, amanha vou fazer isso, mais ja estou com duvidas, rsrsrs: nao consigo entender qual ip devo colocar no dst-address nesse seu exemplo vc colocou os ips das interfaces diferentes do dst-address (192.168.1.4) pq? E "in-interface=network" seria interface=rede? Me desculpa to começando agora a mexer com isso e tenho muito que aprender...
    Última edição por simprao; 22-06-2008 às 19:16.



  5. #5

  6. #6