[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Roteamento pela origem



ola amigos,

agradeço a ajuda, porem esta quase no fim.
A ajuda do nosso amigo anderson silva me deu esta funcionando bem.
Externamento consigo acessar meu firewall de ambas as interfaces.

A unica coisa que nao consigo é acessar meu server windows que esta respondendo a porta 3389.
Tentei e abusei do MARK, mas mesmo assim nao vai.

E mais uma vez... se eu excluir a rota default funciona bem.

Consigo colocar uma regra na rota pela origem juntamento com laguma função de porta?

ex: o que vier de 192.168.0.x porta 3389 ir para o link embratel?

Att
Gustavo

O unico problema que t otendo agora é o seguinte

2008/6/2 Anderson Silva <abnerdoom@gmail.com>:
Olá Gustavo,

tenho algo parecido funcionando, mas não documentei nada assim, não tenho certeza dos passos necessários para alcançar o funcionamento, assim posso te ajudar e quando você chegar na solução poste na lista...

- primeiramente instale o pacote iproute
- configure o iproute
Adicione duas linhas no seu arquivo /etc/iproute/rt_tables
101     velox
102     embratel

-faça um script, que tanto pode ser acionado pelo seu script de firewall, quanto pode ser colocado dentro do script de firewall:
#########################################################################
#!/bin/bash

IPT="/sbin/iptables"
IP="/bin/ip"


WAN1_NAME="velox"
WAN1_IF="ethX"
WAN1_IP="100.100.100.2"
WAN1_GW="100.100.100.1"
WAN1_NET="100.100.100.0/24"
WAN1_MARK=101
WAN1_WEIGHT=8

WAN2_NAME="embratel"
WAN2_IF="ethY"
WAN2_IP="200.200.200.2"
WAN2_GW="200.200.200.1"
WAN2_NET="200.200.200.0/24"
WAN2_MARK=102
WAN2_WEIGHT=4

# Local Interface Information
LAN_IF="ethZ"
LAN_IP="192.168.0.254"
LAN_NET="192.168.0.0/24"
LAN_BCAST="192.168.0.255"

# Localhost Interface
LO_IF="lo"
LO_IP="127.0.0.1"
LO_NET="127.0.0.0/8"

# This target allows packets to be marked in the mangle table
/sbin/modprobe ipt_mark
/sbin/modprobe ipt_MARK

# This target affects the TCP MSS
/sbin/modprobe ipt_tcpmss

# This enables source validation by reversed path according to RFC1812.
# In other words, did the response packet originate from the same interface
# through which the source packet was sent?  It's recommended for single-homed
# systems and routers on stub networks.  Since those are the configurations
# this firewall is designed to support, I turn it on by default.
# Turn it off if you use multiple NICs connected to the same network.
if [ "$SYSCTL" = "" ]
then
    echo "0" > /proc/sys/net/ipv4/conf/all/rp_filter
else
    $SYSCTL net.ipv4.conf.all.rp_filter="0"
fi

# This option can be used to accept or refuse source routed
# packets.  It is usually on by default, but is generally
# considered a security risk.  This option turns it off.
if [ "$SYSCTL" = "" ]
then
    echo "1" > /proc/sys/net/ipv4/conf/all/accept_source_route
else
    $SYSCTL net.ipv4.conf.all.accept_source_route="1"
fi

# However, we'll ensure the secure_redirects option is on instead.
# This option accepts only from gateways in the default gateways list.
if [ "$SYSCTL" = "" ]
then
    echo "0" > /proc/sys/net/ipv4/conf/all/secure_redirects
else
    $SYSCTL net.ipv4.conf.all.secure_redirects="0"
fi

$IPT -t mangle -N MARK_VELOX
$IPT -t mangle -A MARK_VELOX -j MARK --set-mark $WAN1_MARK
$IPT -t mangle -A MARK_VELOX -j ACCEPT

$IPT -t mangle -N MARK_EMBRATEL
$IPT -t mangle -A MARK_EMBRATEL -j MARK --set-mark $WAN2_MARK
$IPT -t mangle -A MARK_EMBRATEL -j ACCEPT

$IPT -t mangle -N TO_MARK
$IPT -t mangle -A TO_MARK -p tcp --sport 3389 -j MARK_EMBRATEL
$IPT -t mangle -A TO_MARK -j MARK_VELOX

# Apaga tabelas de roteamento
$IP route flush table velox
$IP route flush table embratel

# Regras do iproute para direcionar marcas para as tabelas de roteamento
$IP rule add fwmark $WAN1_MARK table velox
$IP rule add fwmark $WAN2_MARK table embratel

$IP rule add from $WAN1_IP table velox
$IP rule add from $WAN2_IP table embratel

# Copia rotas da tabela principal para as outras tabelas de roteamento
$IP route show | grep -v ^default | while read rota; do
        $IP route add table velox $rota
        $IP route add table embratel $rota
done

# Definindo rota default de cada tabela de roteamento
# Tabela WAN1
$IP route add default via $WAN1_GW dev $WAN1_IF table velox

# Tabela WAN2
$IP route add default via $WAN2_GW dev $WAN2_IF table embratel

# Tabela default
$IP route add default via $WAN1_GW dev $WAN1_IF

# LIMPANDO CACHE
echo "Limpando cache de rotas."
ip route flush cache
########################################################################






2008/6/2 gunix <gustavo.grupos@gmail.com>:

Tenho o CENARIO

CLIENTE ACESSANDO (3389)
                |
                |
   ROTEADOR                         VELOX
            |                                      |
            |                                      |
            ------------SERVIDOR----------
                            LINUX DEFAULT VELOX
                           
                                |
                                |
                          SWITCH
                                |
                                |
                SERVER RESPONDENDO 3389
             SAIDA DA INTERNET PELO VELOX

O cliente faz a requisicao do 3389 no ip fixo.
Este mesmo chega até o roteador, e do roteador no servidor firewall.
Porem no firewall minha rota padrao onde saem todas as maquinas é o velox.
Se eu deixar desta forma o servidor nao consegue responder.
TEnho umas regras DNAT nata que aponta a conexao para o server.
Porem se eu colocar a conexao default o Embratel e deixar o Velox de lado, ai funciona normalmente.

O que pode ser?

Att
Gustavo


2008/6/2 Junior Polegato - Linux <linux@juniorpolegato.com.br>:

gunix escreveu:
Na verdade meu link entra no meu firewall, por isso nao ta fazendo...
Tenho que fazer estar rotas nao mao para funcionar.
Porem vi uns assuntos que é possivel eu direcionar somente porta. Ex: Tudo da rede na porta 3389 passa pelo link. o que nao for passa pelo velox.

2008/6/2 Junior Polegato - Linux <linux@juniorpolegato.com.br <mailto:linux@juniorpolegato.com.br>>:


   gunix escreveu:

       alguem poderia me dizer como faço para criar um roteamento
       pela origem?
       Porem gostaria de fazer o seguinte.
       Tenho 3 placas de rede:
       eth0 - LAN
       eth1 - Velox
       eth2 - Embratel Dedicado
       Tudo que sai da rede gostaria que sai-se pelo Velox.
       E tudo que sai da porta 3389 Gostaria que sai-se pelo Embratel.
       Na verdade as pessoas vão se conectar pela porta 3389 no meu
       server pelo embratel. E deve retornar pelo mesmo link.
       O Velox estando default da problema.
       Algeum pode me ajudar?


        Não estou muito certo, mas pelo visto vai ter um servidor
   respondendo na porta 3389, é isso? Se sim, então basta
   "anunciá-lo" pelo link da Embratel e a tabela de roteamento cuida
   do resto. Já tentou fazer ou monitorar isso?
        Se quer a entrada pelo link da Velox e saído pelo da
   Embratel, acho complicado, creio que não tenha um jeito simples.


Olá,

     Primeira pergunta não respondida: vai ter um servidor respondendo na porta 3389?

     Se a resposta for sim, então você precisa acessá-lo através o link da Embratel, aí todo o fluxo entre esse servidor e o cliente trafega pelo link da Embratel "naturalmente".

     Se a resposta for não, você está querendo acessar um servidor, isto é, você é o cliente, é só colocar uma rota estática para este servidor.

     Descreva melhor seu cenário.

[]'s
        Junior Polegato





Reply to: