Descreverei os passos que segui para criar um servidor seguro, usando um sistema muito conhecido no mundo BSD*s e agora portado para o Linux na sua versão de kernel 2.6.x.
Uma bridge é uma interface de rede lógica composta por uma ou mais
interfaces de rede física operando em nível 2 enviando pacotes
através de MAC addresses.
Sua operação é transparente na rede, podendo ser usada como um
switch/firewall, estação de monitoração, etc. Aqui descreverei
como montar uma bridge simples. As possibilidades são diversas
e uma configuração bem feita pode detectar ataques, protocolos
desconhecidos até vírus complexos de rede.
É necessário um dos seguintes requerimentos para se montar uma bridge:
kernel com suporte a bridge ativado (na configuração de rede)
estou usando o kernel 2.6.6
o pacote bridge-utils instalado.
No exemplo abaixo, assumirei a utilização do nome de dispositivo
"br0" para se referir a bridge no sistema.
Segue um script que fiz. fica em /etc/rc.d/rc.bridge:
#!/bin/bash
#
# Eduardo Assis - Wed Jun 2 13:50:01 BRT 2004
#
# Script de inicialização da bridge
IFCONFIG=/sbin/ifconfig
BRCTL=/usr/sbin/brctl
BR_IFACE=br0
EXT_IFACE="eth0"
INT_IFACE="eth1"
LO_IFACE="lo"
LO_IP="127.0.0.1"
$IFCONFIG $EXT_IFACE down
$IFCONFIG $INT_IFACE down
$IFCONFIG $EXT_IFACE 0.0.0.0
$IFCONFIG $INT_IFACE 0.0.0.0
[1] Comentário enviado por y2h4ck em 18/06/2004 - 09:10h
Bem interessante o Artigo Sr. Eduardo, eu ja conhecia esse Bridge apenas no OpenBSD, vi uns testes uma vez utilizando ele para criar uma interface de analise para barrar requisições de Spoof MAC
em redes que utilizavam Wlan.
Seria interessante se esse recurso fosse adicionado no kernel da versao 2.4 tambem, bom quem sabe neh.
[2] Comentário enviado por y2h4ck em 18/06/2004 - 13:13h
Eduardo gostaria de perguntar uma coisa ... digamos que eu utilize pppoe certo, entao quando eu iniciar o script que vai dar um down em minha interface... nao ira fazer com que minha conexão caia ?
Caso sim como contornar esse problema ?
[3] Comentário enviado por Ragen em 18/06/2004 - 13:54h
Olá Eduardo,
Vou usar como gancho nos 2 posts acima. Como ficaria por exemplo conexoes que fazem conexoes VPN com um roteador que por sua vez prove conexao externa/interface externa, ou seja:
eth0 -> ppp0 (grupo de interface externa)
eth1 (interface interna)
[4] Comentário enviado por xereguis em 19/06/2004 - 17:25h
Ola y2h4ck
Sua conexão irá cair, pois em se tratando de bridge sua máquina naum pode alocar um ip, a bridge trabalhará como um switch. Neste caso vc tem que obter uma outra máquina que trabalhe como router da rede. Neste caso é utilizado como bridge para aumentar a segurança da rede sendo, que naum eh possível acessar a bridge e passa transparente pelo o usuário (traceroute nunca mais).
[6] Comentário enviado por WSBiasi em 08/07/2004 - 13:36h
Fala Ediardo,
Fico muito honrado em ver meu arquivo de configuração em seu artigo, não é todo dia que alguém rouba o trabalho da gente e coloca o próprio nome, ainda por cima sai falando que foi você quem fez.
{Segue um script que fiz. fica em /etc/rc.d/rc.bridge:}
Assim o pessoal desse site vai acabar pensando que os seus artigos são idéias suas, e se alguém te contratar para fazer alguma coisa parecida, sará que vc consegue ...
[9] Comentário enviado por nas51 em 08/12/2006 - 10:15h
Boa dia Eduardo,
Sou novato no Linux , tentei fazer rodar seu script para fazer a Bridge Transparente em uma máquina dentro de uma Lan , no final aparece a seguinte MSG SIOCSIFADDR: No Such Device
O que pode ter acontecido , se eu configurei no Kernel 2.4.31 do Slackware a opção 802.1d ETHERNET BRIDGING
[11] Comentário enviado por pedrortljunior em 08/12/2007 - 17:59h
Quero saber se posso usar esse servidor bridge com Squid + proxy transparente + cache. Quero criar um servidor de cache que fique armazenando tudo que passa por ele pra quando houver requisição ele pegar direto do cache dessa bridge.