+ Responder ao Tópico



  1. #1
    UPLinux
    Visitante

    Unhappy compartilhamento de conexão e Squid (duvida)

    Amigos estou com dificuldades de fazer um server de rede usando o squid eu tenho instalado aqui o fedora 6.0 com duas placas de rede, estou querendo fazer com que a eth0 receba internet e a eth1 distribui para minha rede o acesso a internet, a minha conexão aqui é de 1mb e o provedor é brasil telecom com ip dinãmico.
    Sei que tenho que fazer uma MASCARA com o iptables para compartilhar internet segue os procedimentos que fiz durante as configurações.

    Placas de rede:

    eth0
    ONBOOT=YES
    IPADDR=DHCP

    eth1
    ONBOOT=YES
    IPADDR=192.168.1.1
    NETMASK=255.255.255.0
    GATEWAY=""


    No squid:

    http_port 3128
    visible_hostname ServerGun
    hierarchy_stoplist cgi-bin ?
    acl QUERY urlpath_regex cgi-bin \?
    cache deny QUERY
    acl apache rep_header Server ^Apache
    broken_vary_encoding allow apache
    access_log /var/log/squid/access.log squid
    refresh_pattern ^ftp: 1440 20% 10080
    refresh_pattern ^gopher: 1440 0% 1440
    refresh_pattern . 0 20% 4320
    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 to_localhost dst 127.0.0.0/0
    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 CONNECT method CONNECT
    acl rede_interna src 192.168.2.2/24
    http_acess allow rede_interna
    httpd_accel_host virtual
    httpd_accel_port 80
    httpd_accel_with_proxy on
    httpd_accel_uses_host_header on
    http_access allow manager localhost
    http_access deny manager
    http_access deny !Safe_ports
    http_access deny CONNECT !SSL_ports
    http_access allow localhost
    http_access deny all
    http_reply_access allow all
    icp_access allow all
    coredump_dir /var/spool/squid

    iptables

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

    Está aí as configurações do server de rede que fiz
    Consigo pingar em ambas redes, mas as maquinas cliente não navegam na internet e somente a eth0 pinga pra fora.

  2. #2

    Padrão

    vc configurou o DNS nas maquinas da rede ?

    aconselho voce rodar um servidor de dns LOCAL (mesma maquina do squid)..

  3. #3

    Padrão

    Olá companheiro tudo bem?

    Vamos tentar solucionar este problema juntos.

    Pela primeira análise que fiz nas suas configurações já encontrei alguns erros.

    A primeira delas é o endereço da sua rede interna:

    IPADDR=192.168.1.1 (eth1)

    Isso quer dizer que a faixa de IP da sua rede é 192.168.1.0.

    Pois bem a ACL que você criou para liberar o acesso através do squid para a sua rede interna está com um IP em outra faixa (acl rede_interna src 192.168.2.2/24 ).

    O correto seria (acl rede_interna src 192.168.1.0/255.255.255.255).

    Outra coisa coloque esta acl (rede_interna) imediatamente acima da acl que bloqueia tudo (http_access deny all).

    Se seu modem está fazendo a autenticação e ele mesmo se conectando com a brasiltelecom é o ideal. Neste cado ele vai receber o IP válido, fazer um NAT, compartilhando a conexão com sua máquina LINUX.

    Agora se ele estiver fazendo PPPoe não vai dar certo. Neste cado para começar quem deve fazer a autenticação é o próprio PC não o modem. Ainda neste caso a máquina com o LINUX iria receber em sua placa de rede eth0 um IP válido diretamente da brasiltelecom. E o que é pior, um IP diferente a cada conexão.

    Você fez todos aqueles passos para configurar o squid?

    Criou o cache? # squid -z

    De qualquer forma dê este comando e veja se tem algum erro nos logs do sistema.

    # cat /var/log/syslog | grep -i squid

    Depois tente esse também
    # cat /var/log/syslog | grep -i squid | grep -i error

    Se o seu modem é quem faz a autenticação então não tem problemas. Vamos tentar estas alteraçãoes primeiro depois você me diz o que aconteceu.

    Abraços. MARIANO.