Problemas com Roteamento

1. Problemas com Roteamento

Victor
achmed

(usa Conectiva)

Enviado em 19/03/2008 - 16:24h

Fala Galera Blz??

Bom, montei um servidor de internet com o Conectiva 10, intalei squid, sarg, apache, bind, configurei as placas de rede, arquivos de configuração...
Defini que o squid libera o acesso por meio de listas de ips acl_rede_permitida(onde ficam os ips dos micros que tem acesso...)
o problema é que a internet funciona no servidor mas não nas estações. todos os serviços estão funcionando: Squid, Named, Httpd, Myfirewall(iptables), network...

Não tenho ideia do que pode estar errado.

- eth0 (internet)
IP 192.168.0.191
Netmask 255.255.255.0
Gateway 192.168.0.150

- eth1 (distribui o sinal rede 1)
IP 192.168.0.152
Netmask 255.255.255.0

-eth2 (distribui o sinal rede 2)
IP 192.168.1.152
Netmask 255.255.255.0

agradeço desde já

abç


  


2. dicas...

Eduardo Henrique Roque
duhboy

(usa Debian)

Enviado em 19/03/2008 - 16:51h

- primeiro você ja conferiu se os modulos do iptables/nat estão carregados?
- segundo você esta recebendo a conexão do IP 150 pelo que vi, quem eh ele?? não tem firewall nele?nda que bloqueie?
- verifique como ficou sua rota primaria (route -n)

até


3. vamos lá..

Harry Potter
harryy.potter

(usa Suse)

Enviado em 19/03/2008 - 17:17h

Se você quer Rotear sua internet...



supondo que ela entre por eth0
digite os comandos como root:

## primeiro digite isso:
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
echo 1 > /proc/sys/net/ipv4/ip_forward
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

## Limpe as tabelas!

iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -F INPUT
iptables -F FORWARD
iptables -t nat -F PREROUTING
iptables -t nat -F POSTROUTING

### bloquei TUDO!

iptables -P INPUT DROP


## agora redirecione para a porta do squid

iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128


### agora vá liberando as portas conforme precisa!

posso não estar totalmente certo, mas aqui isso funfa direitinhoo!










4. hummm

fox
foxl

(usa Debian)

Enviado em 19/03/2008 - 18:04h

tu nao recebe a net deireto nao e isso?
a rede funciona so no serve e nao distribui pros outros pcs e isso?



5. ....

Victor
achmed

(usa Conectiva)

Enviado em 19/03/2008 - 18:35h

Então tenho um server que recebe o sinal do 192.168.0.150 e redistribui para duas redes 192.168.0.152 e para 192.168.1.152.

testei todas as tabelas. Na configuração do meu firewall carrago os modulos ip_tables, iptable_nat, ip_conntrack_ftp e ip_nat_ftp... (carrego o serviço e não dá erro nenhum!)
#!/bin/sh
#chkconfig: 345 20 80 #
###############################
#####Checando se a rede está ok

. /etc/rc.d/init.d/functions
. /etc/sysconfig/network

if [ ${NETWORKING} = "no" ]
then
exit 0
fi

case "$1" in
start)
gprintf "Iniciando %s services: [ OK ] " "myfirewall"
echo 1 > /proc/sys/net/ipv4/ip_forward
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

#Bloqueia PINGs externos
iptables -A FORWARD -i eth0 -p icmp --icmp-type echo-request -j DROP
iptables -A FORWARD -i eth0 -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
iptables -A FORWARD -i eth0 -p tcp -m limit --limit 1/s -j ACCEPT
iptables -A FORWARD -i eth0 -p tcp --tcp-flags SYN,ACK FIN,RST -m limit --limit 1/s -j ACCEPT
#iptables -A FORWARD -i eth0 -m unclean -j DROP
iptables -t filter -A FORWARD -m state –state INVALID -j DROP

#Bloqueia PINGs rede academica
iptables -A FORWARD -i eth2 -p icmp --icmp-type echo-request -j DROP
iptables -A FORWARD -i eth2 -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
iptables -A FORWARD -i eth2 -p tcp -m limit --limit 1/s -j ACCEPT
iptables -A FORWARD -i eth2 -p tcp --tcp-flags SYN,ACK FIN,RST -m limit --limit 1/s -j ACCEPT
#iptables -A FORWARD -i eth2 -m unclean -j DROP
iptables -t filter -A FORWARD -m state –state INVALID -j DROP

#Carrega modulos
/sbin/modprobe ip_tables
/sbin/modprobe iptable_nat
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_nat_ftp

iptables -A FORWARD -s 192.168.0.0/24 -d 0/0 -j ACCEPT
iptables -A FORWARD -s 192.168.1.0/24 -d 0/0 -j ACCEPT
iptables -A FORWARD -d 192.168.0.0/24 -s 0/0 -j ACCEPT
iptables -A FORWARD -d 192.168.1.0/24 -s 0/0 -j ACCEPT
iptables -P FORWARD DROP

###############################################################################

iptables -t nat -A PREROUTING -p tcp -s 192.168.0.0/24 -d 192.168.0.150 -j ACCEPT

############################################################################### iptables -t nat -A PREROUTING -p tcp -s 192.168.0.0/24 --dport 1025:65535 -j DROP #Bloqueia o restante
iptables -t nat -A PREROUTING -p tcp -s 192.168.1.0/24 --dport 1025:65535 -j DROP #Bloqueia o restante

#Mascaramento da rede
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

echo
;;
stop)
gprintf "Interrompendo %s services: [ OK ] " "myfirewall"
iptables -F; iptables -Z; iptables -F -t nat
echo
;;
status)
iptables -L
;;
restart)
$0 stop
$0 start
echo
;;
*)
gprintf "Use: %s (start|stop|status|restart)" iptables
exit 1
echo
;;
esac

exit 0




6. tenta isso...

Harry Potter
harryy.potter

(usa Suse)

Enviado em 20/03/2008 - 08:05h

O seu firewall deve funcionar mais ou menos dessa forma...
troque os ips pelos ips da sua rede..
eth0, eth1, etc..
testee!


#!/bin/bash
#
#sendo eth0 a placa de internet
#eth1 a rede 1
#eth2 a rede 2

# carrega biblioteca de função.
if [ -f /etc/init.d/functions ] ; then
. /etc/init.d/functions
elif [ -f /etc/rc.d/init.d/functions ] ; then
. /etc/rc.d/init.d/functions
else
exit 0
fi

# evita usar o temporario do root
unset TMPDIR

# codigo de configuracao da rede.
. /etc/sysconfig/network

# verifica de a rede está funcionando.
[ ${NETWORKING} = "no" ] && exit 0

SERVICE_DESC="Firewall Empresa"

RETVAL=0

#redes

REDE1=192.168......../24
REDE2=192.168......../24

#### Micro de comunicação com as duas redes

CROSSOVER=192.168.....

########################################### INICIANDO FIREWALL #########################################

start() {
gprintf "Iniciando %s: " "$SERVICE_DESC"

if ! [ -f /root/.fwcnlck ]; then #criar arquivo de lock
touch /root/.fwcnlck
fi

# Carrega modulos

modprobe ip_conntrack_ftp
modprobe ip_nat_ftp

####### Bloqueia todo pacote que tenta entrar

iptables -P INPUT DROP

####### Aceita passagem de conexoes estabelecidas e relacionadas

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

####### Libera o loopback para localhost

iptables -A INPUT -i lo -j ACCEPT
iptables -A FORWARD -i lo -j ACCEPT

####### Liberando passagem de pacotes CROSSOVER entre as 2 redes

iptables -A FORWARD -s $CROSSOVER -d $REDE2 -m state --state NEW -j ACCEPT
iptables -A FORWARD -s $CROSSOVER -d $REDE1 -m state --state NEW -j ACCEPT

####### Bloqueando repasse de pacotes entre redes internas

iptables -A FORWARD -s $REDE1 -d $REDE2 -m state --state NEW -j DROP
iptables -A FORWARD -s $REDE2 -d $REDE1 -m state --state NEW -j DROP

####### Liberando repasse de pacotes para a internet

iptables -A FORWARD -s $REDE1 -d 0/0 -m state --state NEW -j ACCEPT
iptables -A FORWARD -s $REDE2 -d 0/0 -m state --state NEW -j ACCEPT

####### Libera saida para portas de Email

iptables -t nat -A POSTROUTING -p TCP --dport 25 -s $REDE1 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -p TCP --dport 25 -s $REDE2 -d 0/0 -j MASQUERADE

iptables -t nat -A POSTROUTING -p TCP --dport 110 -s $REDE1 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -p TCP --dport 110 -s $REDE2 -d 0/0 -j MASQUERADE

####### Liberando acesso remoto interno via terminal service

iptables -A INPUT -i eth0 -p TCP --dport 3389 --syn -j ACCEPT
iptables -A INPUT -i eth0 -p UDP --dport 3389 -j ACCEPT

iptables -A FORWARD -i eth0 -o eth1 -s 200.*.*.* -d 192.*.*.* -p TCP --dport 3389 -j ACCEPT
iptables -A FORWARD -i eth0 -o eth1 -s 200.*.*.* -d 192.*.*.* -p UDP --dport 3389 -j ACCEPT

iptables -t nat -A PREROUTING -i eth0 -p TCP --dport 3389 -j DNAT --to-destination 192.*.*.*:3389
iptables -A FORWARD -i eth0 -d 192.*.*.*/32 -p TCP --dport 3389 -j ACCEPT

iptables -t nat -A PREROUTING -i eth0 -p UDP --dport 3389 -j DNAT --to-destination 192.*.*.*:3389
iptables -A FORWARD -i eth0 -d 192.*.*.*/32 -p UDP --dport 3389 -j ACCEPT


####### Liberando porta do apache

iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
iptables -A INPUT -p tcp --dport 8180 -j ACCEPT

####### Liberando saida do DNS

iptables -t nat -A POSTROUTING -p TCP --dport 53 -s $REDE1 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -p TCP --dport 53 -s $REDE2 -d 0/0 -j MASQUERADE

iptables -t nat -A POSTROUTING -p UDP --dport 53 -s $REDE1 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -p UDP --dport 53 -s $REDE2 -d 0/0 -j MASQUERADE

####### Liberando porta para acesso remoto (ssh)

iptables -A INPUT -p TCP -s $REDE1 --dport 22 -m state --state NEW -j ACCEPT
iptables -A INPUT -p TCP -s $REDE2 --dport 22 -m state --state NEW -j ACCEPT
iptables -A INPUT -p TCP -s $REDE1 --dport 2022 -m state --state NEW -j ACCEPT
iptables -A INPUT -p TCP -s $REDE2 --dport 2022 -m state --state NEW -j ACCEPT
####### Liberando porta do squid

iptables -A INPUT -p TCP -s $REDE1 --dport 3128 -m state --state NEW -j ACCEPT
iptables -A INPUT -p TCP -s $REDE2 --dport 3128 -m state --state NEW -j ACCEPT

iptables -A INPUT -p TCP -s $REDE2 --dport 53 -m state --state NEW -j ACCEPT
iptables -A INPUT -p UDP -s $REDE1 --dport 53 -m state --state NEW -j ACCEPT

####### Liberando porta do DG

iptables -A INPUT -p TCP -s $REDE1 --dport 8000 -m state --state NEW -j ACCEPT
iptables -A INPUT -p TCP -s $REDE2 --dport 8000 -m state --state NEW -j ACCEPT

####### Liberando acesso direto CROSSOVER

iptables -t nat -A POSTROUTING -s $CROSSOVER -d 0/0 -j MASQUERADE
iptables -t nat -A PREROUTING -p TCP -i eth2 --dport 4662:4672 -j DNAT --to $CROSSOVER
iptables -t nat -A PREROUTING -p UDP -i eth2 --dport 4662:4672 -j DNAT --to $CROSSOVER
iptables -t nat -A PREROUTING -p UDP -i eth1 --dport 7681 -j DNAT --to $CROSSOVER

#Setando como ativas regras necess�ias

echo 1 > /proc/sys/net/ipv4/ip_forward
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

echo_success
echo""
}

stop() {
gprintf "Parando %s: " "$SERVICE_DESC"

if [ -f /root/.fwcnlck ]; then #apaga arquivo de lock
rm -f /root/.fwcnlck
fi

iptables -P INPUT ACCEPT

#Setando como ativas regras necess�ias
echo 0 > /proc/sys/net/ipv4/ip_forward
echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

echo_success
echo""

}

restart() {
limpa_regras
stop
start
}


lstatus() {
if [ -f /root/.fwcnlck ]; then #criar arquivo de lock
gprintf "Firewall CN rodando\n"
else gprintf "Firewall CN parado\n"
fi
}


limpa_regras() {
iptables -F
iptables -F INPUT
iptables -F FORWARD
iptables -t nat -F PREROUTING
iptables -t nat -F POSTROUTING
}

case "$1" in
start)
limpa_regras
start
;;
stop)
limpa_regras
stop
;;
restart)
restart
;;
status)
lstatus
;;
*)
gprintf "Usage: %s {start|stop|restart|status|}\n" "$0"
exit 1
esac

exit $?



7. parte 1 do problema resolvido...

Victor
achmed

(usa Conectiva)

Enviado em 20/03/2008 - 14:19h

Consegui fazer o servidor funcionar mas somente configurrando o proxy micro a micro.

O proxy transparente não funciona.

adicionei as 4 linhas no squid.conf e as duas linhas de conexão no iptables...

não tenho ideia do que pode estar errado.

o meu squid é o 2.5.stable5 então inseri as linhas no squid.conf.

#ativa o proxy transparente

httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on

e no Myfirewall

#Redireciona porta 80 para o proxy squid

iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --toport 3128


iptables -t nat -A PREROUTING -i eth2 -p tcp --dport 80 -j REDIRECT --toport 3128

As duas redes não se comunicam, por isso distribuo o sinal pelo servidor para cada uma das ethernets.

Dai não tenhi ideia do que pode estar faltando..

tanto o squid quanto o firewall estão rodando, poise se eu paro o firewall os comandos de bloqueio de pings externos não funcionam e se eu paro o squid a internet não funciona, lembrando que esta funcionando nas estações mas não com o proxy transparente..

abç



8. Mais uma..

Victor
achmed

(usa Conectiva)

Enviado em 20/03/2008 - 15:46h

Fala Galera Blz?

mais uma agora, entrei para ver o relatório do sarg e a fonte está gigante, onde eu arrumo isso??

fuçei no sarg.conf e não achei nada...

abç


9. Sarg

Sérgio Abrantes Junior
pelo

(usa Debian)

Enviado em 20/03/2008 - 16:51h

teste essas opções:
# TAG: font_size
# Especify the text font size
#
font_size 9px

# TAG: header_font_size
# Especify the header font size
#
header_font_size 9px

# TAG: title_font_size
# Especify the title font size
#
title_font_size 11px


Sérgio Abrantes

[]'s


10. sarg.conf

Victor
achmed

(usa Conectiva)

Enviado em 20/03/2008 - 17:46h

o meu sarg.conf ta assim e mesmo assim ainda ta gigante. o cabeçalho, a perte dos links pra top-user e o rodape ta ok mas a perte onde4 mostra os acessos ta bixada....Fonte Gigante!!!

header_color darkblue
header_bgcolor blanchedalmond
font_size 9px
header_font_size 9px
title_font_size 11px
background_color white
text_color black
text_bgcolor lavender
title_color green
logo_image none
logo_text_color black

abç


11. hummm

fox
foxl

(usa Debian)

Enviado em 20/03/2008 - 19:02h

tenta deletar e cria outro
pode ser que de certo
pq aparentemente ta certo
;(


12. squid sarg...

Victor
achmed

(usa Conectiva)

Enviado em 20/03/2008 - 20:50h

vlw galera!!

Recriei o qrquivo sarg.conf... continua na mesma. mas o mais importante seria fazer o proxy tranparente funcionar...não tem mais nenhum arquivo relacionado nessa tarefa???

Alguma sugestão???

abç



01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts