Configurar link (IP) dedicado - compartilhando a internet

1. Configurar link (IP) dedicado - compartilhando a internet

leandro batista
sowbra

(usa Debian)

Enviado em 07/03/2010 - 18:11h

Srs.

Boa Tarde!

A minha empresa contratou um link dedicado (IP FIXO) a GVT forneceu um router que fica dentro da empresa gostaria de saber como devo proceder para compartilhar a internet sem a utilizacao de um modem colocando o ip fixo direto na eth0.


auto lo

iface lo inet loopback

#Placa de rede internet IP DEDICADO configuração passado pela telefonia

auto eth0

#iface eth0 inet dhcp

iface eth0 inet static


address 189.57.67.75

netmask 255.255.255.248

network 189.57.67.72

broadcast 189.57.67.79

gateway 189.57.67.73


#Placa de rede interna

auto eth1

iface eth1 inet static

address 172.18.20.253

netmask 255.255.255.0

network 172.18.20.0

broadcast 172.18.20.255


######o DNS da operadora eh : 200.175.182.139

200.175.5.189


Deem uma olhada no meu aqruivo de firewall, ja crio as regras junto com o compatilhamento... mas ta forma que coloquei a placa de rede configurado acima nao consigo navegar, apenas se eu configurar o ip dedicado em um modem e do modem passar para a eth0, queria fazer isso sem o modem, visto que ja tenho um ip valido da da GVT. na empresa eu tenho um router da cisco por onde sai o ip dedicado.


Criei um arquivo na pasta: /etc/init.d/firewall

## INDICAR O INICIO/REINICIO DO FIREWALL
case $1 in
start|restart)
echo "Firewall - By LEandro"

## VARIAVEIS DAS PLACAS DE REDE
NET=eth0
RLOCAL=eth1
REDE="172.18.20.0/24"

## CARREGAR MODULOS
modprobe ip_tables
modprobe iptable_nat
modprobe iptable_filter
modprobe ip_conntrack
modprobe ip_nat_ftp
modprobe ip_conntrack_ftp
modprobe ipt_MASQUERADE
modprobe ipt_LOG

## LIMPAR REGRAS ANTERIORES
iptables -F
iptables -t nat -F

# DEFINIR POLITICA PADRAO (NEGAR TUDO)
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP

## COMPARTILHAR CONEXAO DE INTERNET
## IP DINAMICO
iptables -t nat -A POSTROUTING -o $NET -j MASQUERADE

## ATIVAR ROTEAMENTO
echo "1" > /proc/sys/net/ipv4/ip_forward

## LIBERAR A PROPRIA MAQUINA LOOPBACK PARA ACESSO A INTERNET
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT


### Aceita entrada DNS ###
iptables -A OUTPUT -o $NET -p UDP --dport 53 -j ACCEPT

#Bloquear portas

#iptables -A FORWARD -s $REDE -p tcp -m multiport --dport 0:65535 -j DROP

## Estabilizar conexoes
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

## LIBERAR/BLOQUEAR A REDE LOCAL
iptables -A INPUT -s 172.18.20.0/24 -j ACCEPT

### libera acesso ao TS
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A PREROUTING -p tcp -i $NET --dport 3389 -j DNAT --to 172.18.20.20
iptables -t nat -A POSTROUTING -d 172.18.20.20 -j SNAT --to 172.18.20.253

### libera acesso ao SSH
#echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A PREROUTING -p tcp -i $NET --dport 22 -j DNAT --to 172.18.20.33
iptables -t nat -A POSTROUTING -d 172.18.20.33 -j SNAT --to 172.18.20.253

### libera acesso ao TELNET (FTP)
iptables -A INPUT -i $NET -p TCP --dport 20 -j ACCEPT
iptables -A INPUT -i $NET -p TCP --dport 21 -j ACCEPT

#Nat para FTP
iptables -t nat -A PREROUTING -p tcp -i $NET --dport 20 -j DNAT --to 172.18.20.253:20
iptables -t nat -A PREROUTING -p tcp -i $NET --dport 21 -j DNAT --to 172.18.20.253:21


## Liberando acesso a NFE (Nota fiscal Eletronica) Homologacao
iptables -t nat -I PREROUTING -p tcp --dport 443 -s $REDE -d 200.241.32.196 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp -d 200.241.32.196 -j ACCEPT
iptables -A FORWARD -p tcp -d 200.241.32.196 -j ACCEPT

## Liberando acesso a NFE (Nota fiscal Eletronica) PRODUCAO
#IP 189.31.180.195
iptables -t nat -I PREROUTING -p tcp --dport 443 -s $REDE -d 189.31.180.195 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp -d 189.31.180.195 -j ACCEPT
iptables -A FORWARD -p tcp -d 189.31.180.195 -j ACCEPT

#IP 200.241.32.197
iptables -t nat -I PREROUTING -p tcp --dport 443 -s $REDE -d 200.241.32.197 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp -d 200.241.32.197 -j ACCEPT
iptables -A FORWARD -p tcp -d 200.241.32.197 -j ACCEPT

#IP 201.49.164.105
iptables -t nat -I PREROUTING -p tcp --dport 443 -s $REDE -d 201.49.164.105 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp -d 201.49.164.105 -j ACCEPT
iptables -A FORWARD -p tcp -d 201.49.164.105 -j ACCEPT

## Liberando acesso a update no SUBVERSION ACBR
iptables -t nat -I PREROUTING -p tcp --dport 443 -s $REDE -d svn.sourceforge.net -j ACCEPT
iptables -t nat -A PREROUTING -p tcp -d svn.sourceforge.net -j ACCEPT
iptables -A FORWARD -p tcp -d svn.sourceforge.net -j ACCEPT

## Liberando acesso a update no Flex ADOBE
#iptables -t nat -I PREROUTING -p tcp --dport 80 -s $REDE -d crl.verisign.net -j ACCEPT
#iptables -t nat -A PREROUTING -p tcp -d crl.verisign.net -j ACCEPT
#iptables -A FORWARD -p tcp -d crl.verisign.net -j ACCEPT




### Libera Windows Update

iptables -A INPUT -i $NET -p tcp -s 69.44.123.167/32 --sport 80 -j ACCEPT
iptables -A OUTPUT -o $NET -p tcp -d 69.44.123.167/32 --dport 80 -j ACCEPT
iptables -A FORWARD -o $NET -p tcp -d 69.44.123.167/32 --dport 80 -j ACCEPT
iptables -A INPUT -i $NET -p tcp -s 69.44.123.167/32 --sport 443 -j ACCEPT
iptables -A OUTPUT -o $NET -p tcp -d 69.44.123.167/32 --dport 443 -j ACCEPT
iptables -A FORWARD -o $NET -p tcp -d 69.44.123.167/32 --dport 443 -j ACCEPT
iptables -A INPUT -i $NET -p tcp -s 207.46.198.93/32 --sport 443 -j ACCEPT
iptables -A OUTPUT -o $NET -p tcp -d 207.46.198.93/32 --dport 443 -j ACCEPT
iptables -A FORWARD -o $NET -p tcp -d 207.46.198.93/32 --dport 443 -j ACCEPT

## Download 8081
iptables -A OUTPUT -o $NET -p TCP --dport 8081 -j ACCEPT
iptables -A OUTPUT -o $NET -p TCP --dport 8084 -j ACCEPT

#Libera maquina do firewall

#iptables -I FORWARD -p tcp -d 172.18.20.22 -j ACCEPT
#iptables -t nat -I PREROUTING -p tcp -d 172.18.20.22 -j ACCEPT



### Libera trafego ping rede externa ###
#iptables -A INPUT -i $NET -p icmp -j ACCEPT
iptables -A OUTPUT -o $NET -p icmp -j ACCEPT
iptables -A FORWARD -o $NET -p icmp -j ACCEPT

### Libera trafego ping rede interna ###
iptables -A INPUT -i $RLOCAL -p icmp -j ACCEPT
iptables -A OUTPUT -o $RLOCAL -p icmp -j ACCEPT


# LIBERAR A PORTA 3128
iptables -A FORWARD -i $NET -p tcp --dport 3128 -d $REDE -j ACCEPT

iptables -t nat -A PREROUTING -i $RLOCAL -s $REDE -p TCP --dport 80 -j REDIRECT --to-port 3128


###Acesso a navegacao ###
iptables -A OUTPUT -o $NET -p TCP --dport 80 -j ACCEPT
iptables -A OUTPUT -o $NET -p TCP --dport 800 -j ACCEPT
iptables -A OUTPUT -o $NET -p TCP --dport 1880 -j ACCEPT
iptables -A OUTPUT -o $NET -p TCP --dport 443 -j ACCEPT
iptables -A OUTPUT -o $NET -p TCP --dport 21 -j ACCEPT
iptables -A OUTPUT -o $NET -p TCP --dport 20 -j ACCEPT
iptables -A OUTPUT -o $NET -p TCP --dport 8080 -j ACCEPT
iptables -A OUTPUT -o $NET -p TCP --dport 3389 -j ACCEPT



# msn #

#iptables -A OUTPUT -o $NET -p TCP --dport 1863 -j ACCEPT
#iptables -A FORWARD -o $NET -p TCP --dport 1863 -j ACCEPT
#iptables -A FORWARD -o $RLOCAL -p TCP --dport 1863 -j ACCEPT
iptables -A FORWARD -s 172.18.20.22 -p TCP --dport 1863 -j ACCEPT


## LIbera acesso ao FTP ##
iptables -A FORWARD -o $NET -p TCP --dport 20 -j ACCEPT
iptables -A FORWARD -o $NET -p TCP --dport 21 -j ACCEPT
iptables -A FORWARD -o $RLOCAL -p TCP --dport 21 -j ACCEPT

## Servidor de E-mail SMTP (25) POP3 (110)##
iptables -A FORWARD -o $NET -p TCP --dport 25 -j ACCEPT
iptables -A FORWARD -o $NET -p TCP --dport 110 -j ACCEPT


## Servidor TS
iptables -A FORWARD -o $NET -p TCP --dport 3389 -j ACCEPT
iptables -A FORWARD -o $RLOCAL -p TCP --dport 3389 -j ACCEPT

## Servidor SSH
iptables -A FORWARD -o $NET -p TCP --dport 22 -j ACCEPT
iptables -A FORWARD -o $RLOCAL -p TCP --dport 22 -j ACCEPT

#Liberar MYSQL

iptables -A FORWARD -o $NET -p TCP --dport 3306 -j ACCEPT
iptables -A FORWARD -o $RLOCAL -p TCP --dport 3306 -j ACCEPT


## Liberar porta 2082/2083

iptables -A FORWARD -o $NET -p TCP --dport 2082 -j ACCEPT
#iptables -A FORWARD -o $RLOCAL -p TCP --dport 2082 -j ACCEPT

iptables -A FORWARD -o $NET -p TCP --dport 2083 -j ACCEPT
#iptables -A FORWARD -o $RLOCAL -p TCP --dport 2083 - j ACCEPT

##Liberar Postgresql

iptables -A FORWARD -o $NET -p TCP --dport 5432 -j ACCEPT
iptables -A FORWARD -o $RLOCAL -p TCP --dport 5432 -j ACCEPT


## Protocolo TCP entrada ##
iptables -A INPUT -i $RLOCAL -p TCP -s $REDE -d $REDE -j ACCEPT

## Protocolo UDP saida ##
iptables -A OUTPUT -o $RLOCAL -p UDP -s $REDE -d $REDE -j ACCEPT

## Protocolo TCP saida ##
iptables -A OUTPUT -o $RLOCAL -p TCP -s $REDE -d $REDE -j ACCEPT

;;

stop)
echo "CUIDADO SUA MAQUINA ESTA SEM FIREWALL - ATENCAO!!!..."
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -F
iptables -t nat -F

;;

*)
echo "Digite start, restart ou stop para ativar/reativar/desativar"
exit 1
;;

esac


Dar permissão no arquivo e torna-lo executável:

chmod 777 /etc/init.d/firewall
chmod +x /etc/init.d/firewall

Coloca-lo p/ inicializar no boot do linux:

cd /etc/rc2.d
ln –s /etc/init.d/firewall /etc/rc2.d/S99firewall

Só para constar uso proxy trasnparente!!

Desde já agradeço a atenção de todos.


  


2. Re: Configurar link (IP) dedicado - compartilhando a internet

Ricardo Libanio
riesdra

(usa Debian)

Enviado em 07/03/2010 - 19:00h

Na minha opinião você deixaria a configuração da eth0 por dhcp, pois ela vai receber o ip direto da operadora independente de ser dedicado ou não, e usaria o pppoe para fazer a autenticação dele com a operadora, a placa eth1 está sim eu deixaria como fixo.

Quanto seu firewall eu não entendo muito destas regras e ele é bem extenso. :)



3. Re: Configurar link (IP) dedicado - compartilhando a internet

leandro batista
sowbra

(usa Debian)

Enviado em 07/03/2010 - 20:01h

A operadora nao aceita por DHCP e nao por ser um link dedicado eu nao preciso de autenticacao.
O firewall eh extenso por causa das particularidades. = )


4. Re: Configurar link (IP) dedicado - compartilhando a internet

Adriano
ferrerinha

(usa Debian)

Enviado em 07/03/2010 - 23:46h

Primeira mente visualizei alguns erros no seu script

Na linha de "ATIVAR ROTEAMENTO" o comando esta com aspas a qual não é necessario.

# echo "1" > /proc/sys/net/ipv4/ip_forward

Logo a baixo em "libera acesso ao TS"
Você repete a linha agora sem as aspas.

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

Outro erro que reparei é na linha "LIBERAR A PORTA 3128"
Esta linha é um pouco estranha pois você redireciona tudo da placa da rede com saida da rede.

# iptables -t nat -A PREROUTING -i $RLOCAL -s $REDE -p TCP --dport 80 -j REDIRECT --to-port 3128

Também nesta linha tem o comando a qual você libera um FORWARD da internet para na porta 3128 destinado a sua Rede.

# iptables -A FORWARD -i $NET -p tcp --dport 3128 -d $REDE -j ACCEPT

Desta forma fica a pergunta. Você utiliza do PROXY para acessar da internet a rede?

Você também utiliza de acesso ao seu banco de dados via internet?
Se não a linha "Liberar Postgresql" com o comando abaixo não possui utilidade.

# iptables -A FORWARD -o $NET -p TCP --dport 5432 -j ACCEPT

Da mesma forma o MySQL.

Obs: O '#' é apenas para destacar o comando.

Dica: Revise o seu script de Firewall


5. ferrerinha

leandro batista
sowbra

(usa Debian)

Enviado em 14/03/2010 - 12:03h

JA dei uma revissa no meu script, porem o problema persisti....

alguma sugestao????






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts