-
Por Favor :( estou ficando louco com iptables
Por favor, já li varios e varios tutoriais mas nao sei o que esta errado.
Configuracao :
Slackware 10.1
eth0 : 192.168.254.1/24 ( ligado ao router velox 192.168.254.254 )
eth1 : 10.0.10.254/24 ( ligado a rede interna )
gateway do servidor : 192.168.254.254
em resolv.conf coloquei nameserver 200.149.55.142 / 200.165.132.154
O roteamento ip_forward esta ativado já na inicializacao ( rc.inet2 )
fiz um script 'simples assim'para o firewall :
iptables -P INPUT ACCEPT
iptables -F INPUT
iptables -P OUTPUT ACCEPT
iptables -F OUTPUT
iptables -P FORWARD DROP
iptables -F FORWARD
iptables -t nat -F
iptables -A FORWARD -i eth0 -o eth1 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
iptables -A FORWARD -j LOG
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
No servidor consigo pingar as duas redes. As estacoes da rede interna sao windows e coloquei assim :
IP : 10.0.10.n ( <> 254 ) mask : 255.255.255.0
Gateway : 10.0.10.254 DNS : os mesmos do servidor , tentei tambem com 192.168.254.254
O que ocorre : ao abrir o navegador e digitar qualquer site aparece na barra de status que o site foi encontrado e fica tentando indefinidamente abrir o site mas nao aparece nada.
Ao pingar www.cade.com.br aparece como resposta o ip do cade mas há uma grande perda de pacotes. Alterei o script para :
iptables -F
iptables -t nat -F
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
e tambem assim fica igual ao descrito acima, também tentei
iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to 192.168.254.1 e também nao funciona . alguma luz ??? Por favor
-
Por Favor :( estou ficando louco com iptables
Amigo o problema está bem claro, você está tentando fazer um acesso mas não liberou as portas necessárias.
Quando você digitou:
iptables -P FORWARD DROP
você bloqueou todo o acesso que passe pelo firewall
daí para funcionar algo você tem que liberar primeiro.
Experimenta trocar o código mostrado acima por:
iptables -P FORWARD ACCEPT
Falows
-
Por Favor :( estou ficando louco com iptables
ja fiz isso e tb nao funciona
-
Firewall
alimasilva,
Tenta utilizar o seguinte script:
#!/bin/bash
#######################################
# Configuracao das variaveis
IPC=/usr/sbin/iptables
# INTER (Interface para Internet) - INTRA (Interface Rede Local)
INTER=eth0
INTRA=eth1
## Habilitacao do iptables no kernel ##
## Substitua os 1s por 0s para desabilitar alguma opcao ##
# source address verification
if [ -e /proc/sys/net/ipv4/conf/all/rp_filter ]
then
echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter
fi
# syn cookies protection
if [ -e /proc/sys/net/ipv4/tcp_syncookies ]
then
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
fi
# handle dynamic IP masquerading
if [ -e /proc/sys/net/ipv4/ip_dynaddr ]
then
echo 1 > /proc/sys/net/ipv4/ip_dynaddr
fi
# packet forwarding
if [ -e /proc/sys/net/ipv4/ip_forward ]
then
echo 1 > /proc/sys/net/ipv4/ip_forward
fi
# Flushing all
$IPC -F
$IPC -X
$IPC -Z
$IPC -t nat -F
$IPC -t nat -X
$IPC -t nat -Z
## Esta secao define "logging" ##
$IPC -N LDROP
$IPC -A LDROP -p tcp -j LOG --log-level 3 --log-prefix "DROP"
$IPC -A LDROP -p udp -j LOG --log-level 3 --log-prefix "DROP"
$IPC -A LDROP -p icmp -j LOG --log-level 3 --log-prefix "DROP"
$IPC -A LDROP -f -j LOG --log-level 3 --log-prefix "DROP"
$IPC -A LDROP -j DROP
$IPC -N LREJECT
$IPC -A LREJECT -p tcp -j LOG --log-level 3 --log-prefix "REJECT"
$IPC -A LREJECT -p udp -j LOG --log-level 3 --log-prefix "REJECT"
$IPC -A LREJECT -p icmp -j LOG --log-level 3 --log-prefix "REJECT"
$IPC -A LREJECT -f -j LOG --log-level 3 --log-prefix "REJECT"
$IPC -A LREJECT -j REJECT
$IPC -N LACCEPT
$IPC -A LACCEPT -p tcp -j LOG --log-level 3 --log-prefix "ACCEPT"
$IPC -A LACCEPT -p udp -j LOG --log-level 3 --log-prefix "ACCEPT"
$IPC -A LACCEPT -p icmp -j LOG --log-level 3 --log-prefix "ACCEPT"
$IPC -A LACCEPT -f -j LOG --log-level 3 --log-prefix "ACCEPT"
$IPC -A LACCEPT -j ACCEPT
$IPC -N TREJECT
$IPC -A TREJECT -p tcp -j REJECT --reject-with tcp-reset
$IPC -A TREJECT -p ! tcp -j REJECT --reject-with icmp-port-unreachable
$IPC -A TREJECT -j REJECT
$IPC -N LTREJECT
$IPC -A LTREJECT -p tcp -j REJECT --reject-with tcp-reset
$IPC -A LTREJECT -p ! tcp -j REJECT --reject-with icmp-port-unreachable
$IPC -A LTREJECT -p tcp -j LOG --log-level 3 --log-prefix "REJECT "
$IPC -A LTREJECT -p udp -j LOG --log-level 3 --log-prefix "REJECT "
$IPC -A LTREJECT -p icmp -j LOG --log-level 3 --log-prefix "REJECT "
$IPC -A LTREJECT -f -j LOG --log-level 3 --log-prefix "REJECT "
$IPC -A LTREJECT -p tcp -j REJECT --reject-with tcp-reset
$IPC -A LTREJECT -p ! tcp -j REJECT --reject-with icmp-port-unreachable
$IPC -A LTREJECT -j REJECT
## Esta eh a parte magica do router ;) ##
# Setup the actual connection sharing
$IPC -t nat -A POSTROUTING -o $INTER -j MASQUERADE
$IPC -A FORWARD -i $INTRA -j LACCEPT
$IPC -A FORWARD -m state --state ESTABLISHED,RELATED -j LACCEPT
$IPC -A FORWARD -m limit --limit 60/minute --limit-burst 60
## Secao para lidar com port forwarding ##
# Caso queira redirecionar a porta 80 (webserver) para outra maquina
#$IPC -t nat -A PREROUTING -i $INTER -p tcp -d $INTER --dport 80 -j DNAT --to <IP_WEBSERVER>
## Esta secao define o que ira passar pelo firewall ##
# Define a regra de OUTPUT padrao para ACCEPT.
$IPC -P OUTPUT ACCEPT
# Permite o trafego na interface lo (loopback)
$IPC -I INPUT -i lo -j ACCEPT
$IPC -I OUTPUT -o lo -j ACCEPT
$IPC -I INPUT -i ! lo -s 127.0.0.0/255.0.0.0 -j ACCEPT
# Permite a conexao de certos IPs para certos servicos.
# Apenas descomente a linha e adicione as informacoes requeridas.
# Para adicionar mais regras: copia e cole e depois altere :P:).
#$IPC -A INPUT -p tcp -s IP_TO_GIVE_ACCESS_TO/NETMASK -i $INTER --dport PORT_NUMBER -j LACCEPT
# Permite conexoes BitTorrent
$IPC -A INPUT -p tcp -s 0/0 -i $INTER --dport 6881:6889 -j LACCEPT
# Permite conexoes com bit set ack.
# (They are from an established connections)
$IPC -A INPUT -p tcp ! --syn -i $INTER -j LACCEPT
# Abre as portas para as conexoes estabelecidas
$IPC -A INPUT -m state --state ESTABLISHED -j LACCEPT
$IPC -A INPUT -m state --state RELATED -j LACCEPT
# ICMP rules, permite somente o essencial. Todo request de Ping
# e bloqueado
$IPC -A INPUT -p icmp --icmp-type echo-reply -s 0/0 -i $INTER -j LACCEPT
$IPC -A INPUT -p icmp --icmp-type destination-unreachable -s 0/0 -i $INTER -j LACCEPT
$IPC -A INPUT -p icmp --icmp-type time-exceeded -s 0/0 -i $INTER -j LACCEPT
$IPC -A INPUT -p icmp -i $INTER -j LDROP
$IPC -A OUTPUT -p icmp -o $INTER -j LACCEPT
# Define telnet, www, smtp, pop3 e FTP para um minimo de delay
$IPC -t mangle -A OUTPUT -p tcp --dport 21 -j TOS --set-tos Minimize-Delay
$IPC -t mangle -A OUTPUT -p tcp --dport 22 -j TOS --set-tos Minimize-Delay
$IPC -t mangle -A OUTPUT -p tcp --dport 23 -j TOS --set-tos Minimize-Delay
$IPC -t mangle -A OUTPUT -p tcp --dport 25 -j TOS --set-tos Minimize-Delay
$IPC -t mangle -A OUTPUT -p tcp --dport 80 -j TOS --set-tos Minimize-Delay
$IPC -t mangle -A OUTPUT -p tcp --dport 110 -j TOS --set-tos Minimize-Delay
## Esta secao lida com os bloqueios ##
# Block nonroutable IPs
# Note that you might want to comment in one of these if your I-Net provider is
# using one of them (for my Road Runner I would have to comment in the 10.*)
$IPC -A INPUT -s 10.0.0.0/8 -i $INTER -j LDROP
$IPC -A INPUT -s 127.0.0.0/8 -i $INTER -j LDROP
$IPC -A INPUT -s 172.16.0.0/12 -i $INTER -j LDROP
$IPC -A INPUT -s 192.168.0.0/16 -i $INTER -j LDROP
# Block Multicast
$IPC -A INPUT -s 224.0.0.0/8 -d 0/0 -j LDROP
$IPC -A INPUT -s 0/0 -d 224.0.0.0/8 -j LDROP
# Block Back Orifice
$IPC -A INPUT -p tcp -i $INTER --dport 31337 -j LDROP
$IPC -A INPUT -p udp -i $INTER --dport 31337 -j LDROP
# Block NetBus
$IPC -A INPUT -p tcp -i $INTER --dport 12345:12346 -j LDROP
$IPC -A INPUT -p udp -i $INTER --dport 12345:12346 -j LDROP
# Block Trin00
$IPC -A INPUT -p tcp -i $INTER --dport 1524 -j LDROP
$IPC -A INPUT -p tcp -i $INTER --dport 27665 -j LDROP
$IPC -A INPUT -p udp -i $INTER --dport 27444 -j LDROP
$IPC -A INPUT -p udp -i $INTER --dport 31335 -j LDROP
# Droping and logging ident requests. Note that some irc servers might not
# like that very much
$IPC -A INPUT -p tcp -i $INTER --dport 113 -j LDROP
$IPC -A INPUT -p udp -i $INTER --dport 113 -j LDROP
#Blocking access to the X Server ports.
$IPC -A INPUT -p tcp -i $INTER --dport 5999:6003 -j LDROP
$IPC -A INPUT -p udp -i $INTER --dport 5999:6003 -j LDROP
$IPC -A INPUT -p tcp -i $INTER --dport 7100 -j LDROP
$IPC -A INPUT -p tcp -i $INTER --dport 6000 -j LDROP
#Block access to printer(lpd) and netbios-ssn.
$IPC -A INPUT -p tcp -i $INTER --dport 139 -j LDROP
$IPC -A INPUT -p tcp -i $INTER --dport 515 -j LDROP
#DROP everything else
$IPC -A INPUT -i $INTER -j LDROP
Espero que te ajude.
[]'s
Luis Falcão
-
Por Favor :( estou ficando louco com iptables
Então você está com problemas de rotas. Posta aí o retorno do comando route -n.
-
Por Favor :( estou ficando louco com iptables
luis usei o seu script ( reiniciei a maquina primeiro ) e também nao funcionou
-
Por Favor :( estou ficando louco com iptables
caro maverick, estou reinstalando o slack , vou sair da versao 10.1 e voltar para a 10, também estou trocando as placas realteck 8139 por outras ( 3com / Digital ) que estavam em outra maquina funcionando.
Quando escolhi os pacotes na instalacao vi um pacote iproute2 creio que esse pacote deve ser o responsavel por rotas.
O slack 10 ja vem com o modulo iptables compilado no kernell de forma que nao é preciso carrega-lo e em mais de 10 tutoriais sobre o assunto, segundo entendi , estando o ip_forward ativado e no slack é o rc.ip_forward que faz echo 1>/proc/sys/net/ipv4/ip_forward , a principio bastaria 2 linhas para que o compatilhamento com a internet funcionasse que é o :
modprobe iptable_nat
iptables -t nat -A POSTROUTING -o interface_ligada_ao router(eth0) -j MASQUERADE
queria saber com certeza, esquecendo a segurança, basta isso e navega ?
-
Por Favor :( estou ficando louco com iptables
caro maverick, estou reinstalando o slack , vou sair da versao 10.1 e voltar para a 10, também estou trocando as placas realteck 8139 por outras ( 3com / Digital ) que estavam em outra maquina funcionando.
Quando escolhi os pacotes na instalacao vi um pacote iproute2 creio que esse pacote deve ser o responsavel por rotas.
O slack 10 ja vem com o modulo iptables compilado no kernell de forma que nao é preciso carrega-lo e em mais de 10 tutoriais sobre o assunto, segundo entendi , estando o ip_forward ativado e no slack é o rc.ip_forward que faz echo 1>/proc/sys/net/ipv4/ip_forward , a principio bastaria 2 linhas para que o compatilhamento com a internet funcionasse que é o :
modprobe iptable_nat
iptables -t nat -A POSTROUTING -o interface_ligada_ao router(eth0) -j MASQUERADE
queria saber com certeza, esquecendo a segurança, basta isso e navega ?
-
iptables
Precisa também aceitar o FORWARD, ou seja, basta essas duas linhas:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A FORWARD -i eth0 -j LACCEPT
No caso de se usar NAT.
No caso de se usar um scrpt. Eu utilizo este que postei no Slack 8. eu o chamei de rc.firewall e faço o start do mesmo automaticamente no boot.
Caso queira um router linux mais fácil, você pode utilizar um que é bootável a partir de um floppy. O Coyote Linux (www.coyotelinux.com). Existe uma interface gráfica em Windows (tem script para linux também) no qual vc define as opções e ele cria o floppy (router) para você. Depois basta executar o boot pelo floppy. É muito mais prático e nem precisa de uma máquina tão potente (também dispensa o uso de hd).
-
Por Favor :( estou ficando louco com iptables
Resolvi o problema, :P
Nao funcionava pois as placas de rede estavam compartilhando irq com outros perifericos, desabilitei os outros perifericos e funcionou.
O mais estranho era que elas respondiam ao ping sem problemas.
Mas queria uma ajuda se possivel , tenho o script abaixo, funcionando, e preciso que a rede 10.0.10.0/24 tenha acesso ao servidor 10.0.10.254 a vários servicos como telnet / ftp / samba que nao esta ocorrendo e que a maquina 10.0.10.83 nao tenha acesso ao messenger e a um site em especifico 200.234.200.9, alguem poderia me ajudar ?
Agradeço desde já. Obrigado
#!/bin/bash
# ----------------------------------------------------------------
# Scrip para firewall
# ----------------------------------------------------------------
echo "Carregando o firewall..."
# Definindo as variaveis
REDEINT="10.0.10.0/24"
# IPDNSPROVEDOR="192.168.254.254"
ENT="eth1"
SAI="eth0"
# carregando os modulos
modprobe iptable_nat
# limpando as tabelas
iptables -F
iptables -t nat -F
# Protege contra os "Ping of Death"
iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
# Protege contra os ataques do tipo "Syn-flood, DoS, etc"
iptables -A FORWARD -p tcp -m limit --limit 1/s -j ACCEPT
# Permitir repassamento (NAT,DNAT,SNAT) de pacotes etabilizados e os relatados ...
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
# Logar os pacotes mortos por inatividade ...
iptables -A FORWARD -m limit --limit 3/minute --limit-burst 3 -j LOG
# Protege contra port scanners avançados (Ex.: nmap)
iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT
# Protege contra pacotes que podem procurar e obter informações da rede interna ...
iptables -A FORWARD --protocol tcp --tcp-flags ALL SYN,ACK -j DROP
# Protege contra todos os pacotes danificados e ou suspeitos ...
iptables -A FORWARD -m unclean -j DROP
# Bloqueando tracertroute
iptables -A INPUT -p udp -s 0/0 -i $ENT --dport 33435:33525 -j DROP
# Protecoes contra ataques
iptables -A INPUT -m state --state INVALID -j DROP
# Performance - Setando acesso a web com delay minimo
iptables -t mangle -A OUTPUT -o $ENT -p tcp --dport 53 -j TOS --set-tos Minimize-Delay
iptables -t mangle -A OUTPUT -o $ENT -p tcp --dport 80 -j TOS --set-tos Minimize-Delay
# Deixa passar as portas UDP do servidores DNS, e Rejeitar o restante
#iptables -A INPUT -i $ENT -p udp -s $IPDNSPROVEDOR -j ACCEPT
#iptables -A INPUT -i $ENT -p udp -s $IPDNSPROVEDOR -j ACCEPT
iptables -A INPUT -i $ENT -p udp -j ACCEPT
# Bloqueia qualquer tentativa de conexao de fora para dentro por TCP
iptables -A INPUT -i $ENT -p tcp --syn -j DROP
# Mesmo assim fechar todas as portas abaixo de 32000
iptables -A INPUT -i $ENT -p tcp --dport :32000 -j DROP
# Responde pacotes icmp especificados e rejeita o restante
iptables -A INPUT -i $ENT -p icmp --icmp-type host-unreachable -j ACCEPT
iptables -A INPUT -i $ENT -p icmp --icmp-type source-quench -j ACCEPT
iptables -A INPUT -i $ENT -p icmp -j REJECT --reject-with icmp-host-unreachable
# Rejeita o Kazaa (não testado ainda)
#$iptables -A FORWARD -p tcp -m string --string X-Kazaa-Username: -j REJECT --reject-with tcp-reset
# libera acesso interno da rede
iptables -A INPUT -p tcp --syn -s $REDEINT -j ACCEPT
iptables -A OUTPUT -p tcp --syn -s $REDEINT -j ACCEPT
iptables -A FORWARD -p tcp --syn -s $REDEINT -j ACCEPT
# libera o loopback
iptables -A OUTPUT -p tcp --syn -s 127.0.0.1/255.0.0.0 -j ACCEPT
# libera conexoes de fora pra dentro
iptables -A INPUT -p tcp --destination-port 80 -j ACCEPT
#$iptables -A INPUT -p tcp --destination-port 443 -j ACCEPT
#$iptables -A INPUT -p tcp --destination-port 20 -j ACCEPT
#$iptables -A INPUT -p tcp --destination-port 21 -j ACCEPT
#$iptables -A INPUT -p tcp --destination-port 22 -j ACCEPT
#libera conexoes de dentro pra fora:
iptables -A OUTPUT -p tcp --destination-port 80 -j ACCEPT
iptables -A OUTPUT -p tcp --destination-port 3306 -j ACCEPT
iptables -A OUTPUT -p tcp --destination-port 22 -j ACCEPT
iptables -A OUTPUT -p tcp --destination-port 20 -j ACCEPT
iptables -A OUTPUT -p tcp --destination-port 21 -j ACCEPT
iptables -A OUTPUT -p tcp --destination-port 86 -j ACCEPT
iptables -A OUTPUT -p tcp --destination-port 5190 -j ACCEPT
iptables -A OUTPUT -p tcp --destination-port 443 -j ACCEPT
# libera o bittorrent - (não testado)
# troque o X.X.X.X pelo IP da máquina correspondente
#$iptables -A INPUT -p tcp --destination-port 1214 -j ACCEPT
#$iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 1214 -j DNAT --to-dest X.X.X.X
#$iptables -A FORWARD -p tcp -i ppp0 --dport 1214 -d X.X.X.X -j ACCEPT
#$iptables -t nat -A PREROUTING -i ppp0 -p udp --dport 1214 -j DNAT --to-dest X.X.X.X
#$iptables -A FORWARD -p udp -i ppp0 --dport 1214 -d X.X.X.X -j ACCEPT
# faz o icq receber arquivos - (não testado)
# troque o X.X.X.X pelo IP da máquina correspondente
#$iptables -A INPUT -p tcp --destination-port 2000:3000 -j ACCEPT
#$iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 2000:3000 -j DNAT --to-dest X.X.X.X
#$iptables -A FORWARD -p tcp -i ppp0 --dport 2000:3000 -d X.X.X.X -j ACCEPT
#$iptables -t nat -A PREROUTING -i ppp0 -p udp --dport 2000:3000 -j DNAT --to-dest X.X.X.X
#$iptables -A FORWARD -p udp -i ppp0 --dport 2000:3000 -d X.X.X.X -j ACCEPT
# compartilha a web na rede interna
iptables -t nat -A POSTROUTING -s $REDEINT -o $SAI -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward
# bloqueia o resto
iptables -A INPUT -p tcp --syn -j DROP
iptables -A OUTPUT -p tcp --syn -j DROP
iptables -A FORWARD -p tcp --syn -j DROP
# bloqueia ping
echo "0" > /proc/sys/net/ipv4/icmp_echo_ignore_all
# ----------------------------------------------------------------
echo "Firewall carregado..."
-
Por Favor :( estou ficando louco com iptables
Cara de boa isso é muito facil de fazer. Axo que devia dar uma pesquisada primeiro e depois postar aqui suas duvidas.
-
Por Favor :( estou ficando louco com iptables
Carinha, dá uma olhada no script que postei no tópico, na seção:
## Secao para lidar com port forwarding ##
Basta descomentar a linha do $IPC (que é para porta 80), colocando o endereço do destino. Para os outros serviços, basta copiar e colar.
Meu script tem função para bloquear/liberar/forward. Dá uma olhadinha nos comentários. Podem existir funções úteis para você. :good:
[]'s
Luis Falcão
-
Por Favor :( estou ficando louco com iptables
Caro Suport 3, realmente isso parece muito fácil mas depois de 4 dias apanhando, achando-me uma besta pois como fala na rede , "qualquer uma faz um comparilhamento de internet" e depois acabar descobrindo que nao funcionava por causa de compartilhamento de IRQ de placa !!! e isso eu descobri por acaso no google ao ver uma postagem de um sofredor que nao conseguia colocar a quinta placa no firewall e ai descobri uma tal ACPI ( nao tem nada a ver com CPMI/CPI/CPMF :@: ), ai nesse ponto eu acho que :
iptables -A INPUT -s 10.0.10.10/24 -p tcp --dport 20:2000 -j ACCEPT para acesso local de uma máquina ao server e
iptables -A FORWARD -s 10.0.10.0/24 -d 200.234.200.9 -j DROP para nao acessar um site em especifico é fácil realmente, mas em que ponto do script é que é o caso ?!? pois algumas regras nao compreendo e nao posso mais parar a Internet o serviço ficou muito atrasado
-
Por Favor :( estou ficando louco com iptables
vc disse que queria que a rede 10.0.10.0/24 tenha acesso ao servidor 10.0.10.254. Parace que eles estão na mesma rede intão não tem nada a ver com o firewall. Se vc esta tentando fazer uma DMZ ela não esta certa. alguem da internet acessa esse servidor ??? intão não tem porque ele estar atras de um firewall. Se acessar vc tem que refazer a topologia da sua rede.
internet................................rede interna
-------------| firewall |--------------|
.....................................................|
.....................................................|
...............10.0.10.254................|...........................10.0.10.0/24
.................| servidor |----------| switch |-------------rede interna
Viu o servidor não passa pelo firewall...o desenho de cima é sem DM e niguem acessa esse servidor pela internet.
Se alguem acessar o seu servidor pel ainternet ai vc vai ter que colocar outra paca de rede no seu firewall e fazer isso:
internet........................................rede interna
--------------| firewall |------------------|
............................|...............................|
............................|...............................|
............................|...............................|
...................192.168.1.254...............|
.....................| servidor |.....................|...........................10.0.10.0/24
....................................................| switch|---------------rede interna
No desenho desconsidere os pontos. Ta vendo que o servidor esta ligado ao firewall e pra que a rede interna acessar o servidor tem que passar pelo firewall..Essa alternatica é muito mais segura.
Esplica melhor ende ta esse servidor:
heheh gostei de desenhar :D
estranho que vc tenha problemas em bloquear algo ja que vc ta usando
as politicas
ptables -A INPUT -p tcp --syn -j DROP
iptables -A OUTPUT -p tcp --syn -j DROP
iptables -A FORWARD -p tcp --syn -j DROP
mas enfim:
Para bloquear o MSN da 10.0.10.83:
Host que não acessam MSN
# maquinas que NÂO acessão MSN
$NO_MSN= "10.0.10.83"
for HOSTS in $NO_MSN; do
iptables -A FORWARD -p tcp -i $ENT -s $HOSTS -o $SAI --dport 1863 -j DROP
iptables -t nat -A POSTROUTING -p tcp -s $HOSTS -o $SAI --dport 1863 -j SNAT --to $IP_NET
done
maquinas que É PERMITIDO MSN
# coloque entre " " as maquinas que acessão MSN
$YES_MSN= ""
for HOSTS in $YES_MSN; do
iptables -A FORWARD -p tcp -i $ENT -s $HOSTS -o $SAI --dport 1863 -j ACCEPT
iptables -t nat -A POSTROUTING -p tcp -s $HOSTS -o $SAI --dport 1863 -j SNAT --to $IP_NET
done
Ufa. :good:
-
Por Favor :( estou ficando louco com iptables
Obrigado pela resposta mas cheguei a bloquear a porta 1863 e mesmo assim o infeliz do MSN abre e o webmsn nem esta ai.
Como preciso bloquear alguns sites pelo dominio, instalei o squid e a velocidade das paginas aumentou em muito.
mas criei as seguintes regras
acl LAN 10.0.10.0/24 192.168.254.0/24
acl site1 dstdomain arquivosex.com
acl site2 loginnet.passport.com
acl site3 webmessenger.msn.com
http_access allow LAN
http_access deny site1
http_access deny site2
http_access deny site3
http_access deny all
e mesmo assim o site e o msn continua a funcionar, poderiam me ajudar
Quanto a questao do acesso ao servidor bastou eu fazer
iptables -A INPUT -s 10.0.10.0/24 -p tcp --dport 20:2000 -j ACCEPT e ai as maquinas conseguiram acessar o http/ftp/telnet/swat que roda na maquina que é firewal e agora proxy também.
-
Por Favor :( estou ficando louco com iptables
Vc redirecionou a porta 80 para a porta do squid ???? 3128 ou 8080 ???
Axo que vc não esta usando o squid ainda.
-
Por Favor :( estou ficando louco com iptables
-
Por Favor :( estou ficando louco com iptables
Caro Suport3, limitei-me a instalar o squid e alterar o squid.conf se na instalacao o script de instalacao nao direcionou, nao deve estar. Deixei na porta padrao creio que 3128.
Como é feito isso ou testo se esta havendo direcionamento para o proxy ?
Engraçado é que toda vez que entro em um site o led do hd do server acende e na segunda vez que entro 'teoricamente' houve um aumento da velocidade .
Maverick abri o link indicado, creio que me ajudará em muito mas creio que primeiro preciso ver se esta havendo realmente o direcionamento para o squid. Vc sabe como testo isso ?
-
Por Favor :( estou ficando louco com iptables
Amigo bom dia,
Acho q você deveria ler este material abaixo...(é bem pqno) e vai esclarecer a sua duvida... Não fique copiando e colando scripts q vc pega na net tente entender q cada um fez e pegue apenas oq lhe atente pois o FW q e feito para minha rede nem sempre serve para a sua. Leia o artigo e resolva seu problema.
http://www.vivaolinux.com.br/artigos...php?codigo=473
Abraço
-
Por Favor :( estou ficando louco com iptables
alimasilva, para testar se está funcionando o seu proxy, basta dar o seguinte comando no seu arquivo access.log do squid. Lembrando que exibirei o exemplo baseado na minha instalação, pois como nosso amigo lacier disse "a minha nem sempre é igual a sua". Portanto é bom dar uma procurada no seu sistema pelo arquivo access.log do squid.
Abaixo vai o comando:
Código :
tail -f /var/log/squid/access.log
Após digitar o comando, faça um teste colocando outra máquina para acessar a web. Se começar a aparecer várias mensagens na tela é porque seu proxy está transparente.
Blz, Falows
-
Por Favor :( estou ficando louco com iptables
nao ta em branco , dei o comando indicado ai ficou como congelado aguardando ai dei ctrl+c e abri com o vi e estava em branco.
-
Por Favor :( estou ficando louco com iptables
fiz o seguinte coloquei depois da linha que compartilha a internet a seguinte linha :
eth1 = rde interna / eth0 = rede externa, ligado ao router
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128
no squid.conf descomentei
httpd_accel_port 80
httpd_accel_host virtual
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
e fica aparecendo uma pagina com erro ai se ao invés da eth1 e aparece no access.log diversas linhas com access denied se coloco a eth0 nao aparece log algum mas navega.
-
Por Favor :( estou ficando louco com iptables
Acho que é porque tá faltando você configurar a acl mynetwork no squid.
Configura ela para sua rede interna. Ex:
Código :
acl mynetwork src 10.10.1.0/255.255.255.0
Dai verifica se ela está sendo liberada, algo mais ou menos assim:
Código :
http_access allow mynetwork
Quanto a interface de rede, ela precisa ser a eth1 que no seu caso creio que seja a da rede interna.
Blz?
-
Por Favor :( estou ficando louco com iptables
bem a minha rede interna esta liberada na ACLs criei uma
acl LAN src 10.0.10.0/24
http_access allow LAN
quando coloco na linha do firewal a eth1 que é da rede interna da erro e nao aparece nada , aparece varias linhas no access.log como as abaixo
1124128084.892 2 10.0.10.10 TCP_DENIED/400 1889 GET /search?client=navclient-auto&googleip=F;81.52.202.23;721&ch=63435313421&freshness_check=4xncxgz-mIBKvEICGy4V0&ie=UTF-8&oe=UTF-8&querytime=NC&features=Rank&q=info:http%3A%2F%2Fwww%2Egoogle%2Ecom%2Ebr%2F - NONE/- text/html
1124128096.357 2 10.0.10.10 TCP_DENIED/400 1461 GET /terminais/8300.html - NONE/- text/html
1124128096.398 2 10.0.10.10 TCP_DENIED/400 1819 GET /search?client=navclient-auto&googleip=F;64.21.49.62;10&ch=62454349138&ie=UTF-8&oe=UTF-8&features=Rank&q=info:http%3A%2F%2Fwww%2Ecipherlab%2Ecom%2Ebr%2Fterminais%2F8300%2Ehtml - NONE/- text/html
1124128101.096 2 10.0.10.10 TCP_DENIED/400 1423 GET / - NONE/- text/html
1124128101.221 2 10.0.10.10 TCP_DENIED/400 1773 GET /search?client=navclient-auto&googleip=F;64.21.49.56;20&ch=62651919010&ie=UTF-8&oe=UTF-8&features=Rank&q=info:http%3A%2F%2Fwww%2Econsciesp%2Eorg%2Ebr%2F - NONE/- text/html
1124128108.778 2 10.0.10.10 TCP_DENIED/400 1447 GET /produtos.php - NONE/- text/html
1124128108.808 2 10.0.10.10 TCP_DENIED/400 1789 GET /search?client=navclient-auto&googleip=F;64.21.49.62;10&ch=62937727429&ie=UTF-8&oe=UTF-8&features=Rank&q=info:http%3A%2F%2Fwww%2Eesy%2Ecom%2Ebr%2Fprodutos%2Ephp - NONE/- text/html
1124128110.763 2 10.0.10.10 TCP_DENIED/400 1669 GET /search?sourceid=navclient&hl=pt-BR&ie=UTF-8&oe=UTF-8&q=proxy+transparente+slackware&meta=cr%3DcountryBR - NONE/- text/html
1124128113.761 3 10.0.10.10 TCP_DENIED/400 1669 GET /search?sourceid=navclient&hl=pt-BR&ie=UTF-8&oe=UTF-8&q=proxy+transparente+slackware&meta=cr%3DcountryBR - NONE/- text/html
1124128116.283 3 10.0.10.10 TCP_DENIED/400 1669 GET /search?sourceid=navclient&hl=pt-BR&ie=UTF-8&oe=UTF-8&q=proxy+transparente+slackware&meta=cr%3DcountryBR - NONE/- text/html
1124128117.861 3 10.0.10.10 TCP_DENIED/400 1669 GET /search?sourceid=navclient&hl=pt-BR&ie=UTF-8&oe=UTF-8&q=proxy+transparente+slackware&meta=cr%3DcountryBR - NONE/- text/html
1124132222.829 2 10.0.10.10 TCP_DENIED/400 1423 GET / - NONE/- text/html
1124132222.988 3 10.0.10.10 TCP_DENIED/400 1757 GET /search?client=navclient-auto&googleip=F;64.215.169.208;942&ch=62384054996&ie=UTF-8&oe=UTF-8&features=Rank&q=info:http%3A%2F%2Fwww%2Eglobo%2Ecom - NONE/- text/html
1124132432.299 1 10.0.10.10 TCP_DENIED/400 1423 GET / - NONE/- text/html
1124132433.844 1 10.0.10.10 TCP_DENIED/400 1423 GET / - NONE/- text/html
1124132453.223 1 10.0.10.10 TCP_DENIED/400 1445 GET /minitri.flg - NONE/- text/html
1124132453.265 1 10.0.10.10 TCP_DENIED/400 1445 GET /livetri.zip - NONE/- text/html
1124132453.398 1 10.0.10.10 TCP_DENIED/400 1445 GET /minitri.flg - NONE/- text/html
1124132456.418 1 10.0.10.10 TCP_DENIED/400 1445 GET /livetri.zip - NONE/- text/html
-
Por Favor :( estou ficando louco com iptables
resolvi pessoal é que nao havia a linha
httpd_accel_host virtual , apenas a httpd_accel_host e ai descomentar nao gerava efeito algum, bastou acrescentar o virtual, restartar e tudo beleza.
Caramba , que surra !
Agora estou bloqueando uns sites