Criando regras no iptables

1. Criando regras no iptables

EMERSON SANTOS GUIMARAES
emerson2703

(usa CentOS)

Enviado em 12/01/2009 - 18:29h

Ja tentei de varias maneiras configurar o meu iptables para que funcione em modo transparente mas não conseguir ter sucesso, então resolvir refazer aconfiguração do iptables e gostaria que vocês me ajuda-se, para criar as regras em cima da configuração do squid:
Gostaria que me ajuda-se nesta batalha pois já tentei em vários foum e nada eu consigo para que meu firewall funcione.


Obs: como eu tenho certeza que as regras do iptables estão funcionando. que a internet que as estações estão passando pelo iptables pra depois passar pelo squid.


http_port 8080 transparent

cache_mem 376 MB
maximum_object_size_in_memory 128 KB
maximum_object_size 4096 KB
minimum_object_size 0 KB
cache_swap_low 90
cache_swap_high 95
cache_dir ufs /var/spool/squid 12288 16 256
cache_access_log /var/log/squid/access.log
cache_log /var/log/squid/cache.log
cache_store_log /var/log/squid/store.log

visible_hostname Firewall-Lauro

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
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
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 ip_liberado src "/etc/squid/ip_liberado.txt"
acl ip_restrito src "/etc/squid/ip_restrito.txt"
acl sites_liberados url_regex -i "etc/squid/sites_liberados.txt"



http_access allow manager localhost
http_access deny manager
http_access allow ip_liberado
http_access deny ip_restrito !sites_liberados
http_access allow localhost
http_access deny all



  


2. Re: Criando regras no iptables

Richard Andrade
richardandrade

(usa Debian)

Enviado em 12/01/2009 - 18:40h

não precisa de 2 tópicos para obter ajuda amigao

regra do iptables para proxy transparente

iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080


3. Iptables

EMERSON SANTOS GUIMARAES
emerson2703

(usa CentOS)

Enviado em 13/01/2009 - 07:22h

Amigo, ja adicionei esta regra mas não funciona, eu gostaria que me ajudase nas regras do iptables com a relação com meu squid, imaginando que não usei ainda nenhuma regra.


4. Re: Criando regras no iptables

Richard Andrade
richardandrade

(usa Debian)

Enviado em 13/01/2009 - 08:57h

olha só se o proxy estiver em outro servidor a regra de iptables seria

iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination IP:porta

caso for firewall+proxy(1 só servidor)

será a regra acima para redirecionar qualquer acesso a porta 80 para a porta 8080 que é o seu caso.

ps: pq você não deixa a porta padrão do squid 3128?

http_port 3128 transparent


5. regra

Franklin Candido da Silva
franklincsilva

(usa Ubuntu)

Enviado em 13/01/2009 - 09:05h

usa:

iptables -A INPUT -i eth0 -p tcp --dport 8080 -j ACCEPT


6. Iptables

EMERSON SANTOS GUIMARAES
emerson2703

(usa CentOS)

Enviado em 14/01/2009 - 10:25h

Ja adcionei esta regra e nada
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m state --state INVALID -j DROP
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -s 192.168.0.0/24 -p tcp --dport 8080 -j ACCEPT
iptables -A INPUT -s 192.168.0.0/24 -p tcp --dport 10000 -j ACCEPT
iptables -A FORWARD -m state --state INVALID -j DROP
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth1 -j MASQUERADE
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080


7. Configuração da rede

Elgio Schlemer
elgio

(usa OpenSuSE)

Enviado em 14/01/2009 - 10:49h

Será que tua estrutura de rede está do jeito que todos nós esperamos ao responder este tópico?

Para que o squid funcione de modo transparente, é necessário que o tráfego que iria para a Internet passe pelo filtro. Por isto as regras iptables DEVEM estar no roteador, supondo que ele seja uma máquina usando LINUX. O squid pode ou não estar na mesma máquina. Só funciona se tiveres uma topologia parecida com esta:


Rede Interna (Gw= 10.1.0.1, DNS = (algum)
.......|
.......|
10.1.0.1 (Gw Linux)
** regra iptables aqui
.......|
.......|
INTERNET

Ou seja, o caminho dos teus clientes até a Internet DEVE passar pelo firewall onde estão as regras. E mais, os teus clientes PRECISAM TER DNS, pois eles pensam que acessam a Internet. Se tu não tem DNS que funcione, dançou. Se o DNS está fora da rede, precisa fazer mascaramento da porta UDP 53.

Exemplo 1
Rede cliente: 10.1.0.0/24
Placa rede cliente: eth0
Gw 10.1.0.1
DNS: 172.16.1.5 (FORA DA REDE)
Proxy: 172.16.1.10 (nao o GW)

Neste caso seria:

# DNS
iptables -t nat -I POSTROUTING -d 172.16.1.5 -p udp --dport 53 -j MASQUERADE

iptables -t nat -I PREROUTING -s 10.1.0.0/24 -i eth0 -p tcp --dport 80 -j DNAT --to 172.16.1.10:8080

Exemplo 2: proxy é o mesmo gateway
# DNS
iptables -t nat -I POSTROUTING -d 172.16.1.5 -p udp --dport 53 -j MASQUERADE

iptables -t nat -I PREROUTING -s 10.1.0.0/24 -i eth0 -p tcp --dport 80 -j REDIRECT --to 8080



8. Re: Criando regras no iptables

Richard Andrade
richardandrade

(usa Debian)

Enviado em 14/01/2009 - 10:53h

modifica as regras de PREROUTING para

iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080

tira a origem deixando qualquer acesso via porta 80 vinda de qualquer lugar direcionando para porta 8080.

tenta ae.







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts