BFW – Firewall simples e rápido

logo-bfw

Esse artigo me foi enviado pelo Lucas França, ele é Instrutor do Curso Técnico em Redes do Senac Minas, ele tem acompanhado o portal e utilizado os conhecimentos em aula, além de produzir muito conteúdo interessante para seus alunos que ele resolveu compartilhar conosco.

Segue o artigo:

BrazilFW é uma mini Linux distribuição projetado para ser usado como um Firewall e Roteador que roda facilmente em computadores mais antigos.

Um PC antigo rodando BrazilFW é muito mais poderoso e eficiente do que o software comercial para roteamento em escritórios e residências em execução em um computador “poderoso”.

BrazilFW é baseado no Coyote Linux , que foi projetado por Joshua Jackson que interromperam Coyote Linux na versão 2.24 em agosto de 2005. Dando lugar ao BFW.

Existem atualmente as versões 2.x e as versões 3.xx onde “x” representa n versões.

Suas funções principais são compartilhar conexões de Internet e promover proteção de firewall para os computadores conectados.

O BrazilFW 2.x roda em um velho 486 “DX” 66 com pelo menos 16 MB de RAM. Você não precisa de disco rígido, mas se desejar, pode naturalmente instalar num, o que é recomendado em termos de confiabilidade e velocidade. Além disso, o Squid está completamente estável para uso, e somente em disco rígido. A imagem de CD pode ser descarregada através do fórum do projeto, e possui aproximadamente 60 MB de tamanho, podendo ser gravada e instalar em qualquer computador.

O BrazilFW torna possível instalar serviços de rede rapidamente como compartilhamento de internet, firewalls, ou pontos de acesso sem fio.

O BrazilFW 3.xx dá suporte as muitas novas tecnologias no mercado, com o kernel linux 3.x. Este novo projeto consegue atender desde o pequeno distribuidor de internet até grandes estruturas de redes, com enfase na simplicidade e praticidade.

BrazilFW é uma iniciativa privada sem fins lucrativos, e de código fonte aberto, encontrado no site http://www.brazilfw.com.br .

Considerando ter a ETH0 como interface interna (LAN) e a ETH1 como interface externa (WAN), vamos ao boot e instalação.

Na tela de boot selecione a opção “boot witch single/multi processor support”

1-boot-bfw

Após o boot, esta será a tela do BFW. Para acessar o BFW Web admin use https://192.168.0.1:8181
Verifique diversas informações sobre o Sistema e Hardware, tipo:

Versão
Hostname do PC
Processador
Porta SSH
Endereço HTTPS
Nome de Login

2-tela-login-bfw

Após o logar como usuário root com senha root , digite “install” no terminal para instalar o BFW no disco rígido.

[brasilfw]/# install

Na tela inicial da instalação aperte enter em continue.
3-instalacaobfw-welcome

Selecione o disco rígido em que será feita a instalação, recomendado utilizar o disco unicamente para o BFW.
4-instalacaobfw-disco

Agora está informando que a instalação irá preparar o primeiro disco ( /dev/sda ) e nele será criado uma tabela de partições assim como o sistema de arquivos. !!!

Pressione

05-instalacaobfw-disco

Informativo : será apagado todo o conteúdo do HD, se você tem certeza do que está fazendo, pressione ou para cancelar a instalação.
06-instalacao-formatacao

Após toda a instalação, remova o disco do drive de CD/DVD e pressione

Após o termino da instalação, o BFW irá retornar o shell para tela de login. Reparem que ele informa um endereço para acesso via HTTPS, este acesso permite que uma máquina da rede acesse o BFW e toda sua configuração através de um navegador.

Para isso precisamos de um micro na mesma faixa de endereços que o BFW. Mais tarde iremos trocar
estes endereços para se adequarem a nossa rede.

Vamos começar a configuração:

De uma máquina na rede acesse pelo browser: https://192.168.0.1:8181

Se acontecer “erro do certificado” selecione:

[Continuar neste site]

Conforme mostra a imagem abaixo:
08-erro-certificado-browser

Na tela de login que aparecer no browser entre com usuário root e senha root .

Essa é a tela inicial do BFW.

09-tela-inicial-bfw

Vamos alterar a senha do administrador que está meio manjada 🙂

10-alterando-senha-root

11-alterando-senha-root

Por padrão o BFW já vem com o serviços DNS e DHCP instalados, já configurados e em execução (CUIDADO COM A INTERFACE EM MODO BRIDGE). Se já tivermos estes serviços sendo executado, vamos desabilitar o DNS e DHCP

12-desabilita-dns

12-desabilita-dns-1

13-desabilita-dhcp

13-desabilita-dhcp-1

Dica: Toda configuração feita no BFW deverá ser salva, pois ao desligar ou em uma queda de energia, irá apagar toda configuração feita. Para isso clique em [Configurações] depois em [Salvar configurações]

14-salvar-configuracoes

Se as interfaces estiverem corretamente designadas basta configurá-las, isto é, se ETH0 for a local e ETH1 (ou mais) for a externa (internet) estiverem corretamente conectadas ao cabeamento adequado. Se não estiverem de acordo com as configurações de sua rede edite cada uma em [Configurações], [Conexões], [Fisica] e altere a função de acordo com suas necessidades, mas CUIDADO ao fazê-lo ou nada irá funcionar como deve 🙂

Para configurar a rede acesse [Configurações], [Conexões], [Lógica]

tela-01

Depois clique na interface que deseja editar:
tela-02

Na tela de configuração temos que alterar os valores para os que utilizamos e ter cuidado de salvar antes de sair, podemos alterar inclusive o peso deste link caso tenhamos mais de um que precisarmos fazer load balance entre eles, pesos diferentes significam links diferentes.

23-intefaces-web

Os campos são auto explicativos, mas se não entender algo estude, quer dizer pergunte 🙂

IP adicional para ter mais de um IP nas mesma interface, Download e Upload para regular as velocidades desta interface,

Lembre que é preciso salvar as configurações, salve e reinicie o BFW para aplicar as configurações de rede ou entre no terminal do BFW e digite:

[brasilfw]/# /etc/rc.d/rc.inet

E ele vai reiniciar as interfaces de rede com as novas configuracões. Feito isso pode acessar pelo browser com novo endereço local, caso tenha mudado a configuração desta interface, por: https://IP-LOCAL:8181

Com o BFW usado como um GATEWAY podemos efetuar inúmeras tarefas e um exemplo é monitorar o tráfego
que passa por ele. Tráfego da interface ligada à internet e também o tráfego da rede local
15-monitorar-trafego

16-grafico-trafego

Mais opções de monitoração:

18-consumo-por-ip

19-relatorio-consumo-por-ip

Podemos ter acesso à todos os arquivos do sistema, assim como também modificá-los, apagá-los entre outras coisas.
17-arquivos-12

Podemos fazer qualquer alteração pelo navegador Web, mas precisaremos de um emulador do shell para algumas funções que por sua vez precisa do pacote PHP 5.x instalado. Então vamos precisar de acesso à internet para baixar este e outros pacotes. Pra isso, acessar o modo texto do BFW.

Assim como qualquer Linux, basta digitar o usuário, que neste caso é root, e a senha que você colocou para o root. Toda configuração deve ser salva como foi dito antes, e no modo texto deverá ser feita digitando o comando backup no terminal:

[brasilfw]/# backup

Algumas ferramentas necessitam da instalação de pacotes adicionais. No BFW podemos instalar algumas destas ferramentas que não vem por padrão por esta tela:

24-addon

Será necessário desbloquear pop-up no seu browser, faça isso e repita a operação se necessário.
Caso dê erro de certificados, aceite como antes e continue.

Aguarde…. Enquanto ele obtém uma lista com os softwares disponíveis.

25-lista-software

Pronto! Segue a lista com diversos softwares para implementação do BFW. Escolha o que desejar, existem diversos softwares interessantes.

26-lista-software

27-lista-software

Após selecionarmos o programa, clicar em “instalar”, aguarde enquanto se faz o download.

28-install-software

Lembre-se instalar o Php.5 e mais algumas outras ferramentas legais:
29-install-software

Após instalar os pacotes adicionais, vamos testar utilizando tais softwares:

30-utilizando-software

Nesta ferramenta selecionada, podemos definir os bloqueios de sites, palavras , conteúdos
entre outras coisas, veja:
31-dansguardian

Bloquear as extensões de arquivos : .ppt, .exe, .bat, .sh .css .asp
32-dansguardian

33-dansguardian

34-dansguardian

Além de bloqueios de site podemos criar regras por aplicação (Layer7), regras de NAT, publicar portas de acesso externo, VPN (Servidor e Cliente), QOS, DHCP, DNS, etc.

Espero que gostem do artigo do Lucas França e o incentivem a escrever mais.

Os contatos dele são:
Lucas Marcelo França
Graduação: Tecnologia em Redes de Computadores
Contatos: e-mail: [email protected] / LinkedIN: br.linkedin.com/pub/lucas-frança/6b/583/129/
Instrutor de Curso técnico em Redes – Senac Minas

Não esqueçam de compartilhar, comentar e perguntar.

  • Cléio Sousa

    Bom dia!

    Muito bom o artigo, utilizo atualmente o Pfsense como firewall, e tenho visto no próprio fórum o pessoal com problemas para configurar o Failover de internet e squid, gostaria de saber se o BrasilFW trabalha bem dessa forma, failover de internet (2 links) e Squid no mesmo servidor?

    • Cara ja usei o BFW mas atualmente uso o Endian Firewal, ele é semelhante e a instalação é tão simples quanto essa. No youtube vc encontra muita referencia a ele, uso-o para backup de links e proxy integrado ao AD.

      • Lucas França

        Olá João, como vai ?

        Eu também gosto bastante do EndianFW.
        A interface fácil e simples, além de muitas ferramentas como Proxy autenticado com base de dados do Active Directory, IPS,( Snort) entre outros.

        Inclusive já existe um artigo feito por mim, com o Vagner. Brevemente teremos novidades…

        Um abraço

  • Marcos Flávio

    Ficou muito bom o artigo, Lucas… meus parabéns!

  • Lucas F. Jesus

    Muito bacana. Um software bastante útil sendo muito bem explicado. Parabéns.

  • Lucas França

    Olá Clésio Sousa

    A instalação do Squid é bem simples:

    você faz ‘logon’ como root (linha de comando )e digite os comandos abaixo:

    mt
    cd /mnt

    wget http://www.brazilfw.com.br/downloads/addons/bfw2.x/others/squid/squid-2.32.x/squid.tgz

    Em seguida ele irá baixar e instalar o squid.
    após a instalação não se esqueça de executar o comando “backup”
    Reinicie a máquina. Para configuração basta acessar o BFW de um navegador Web e efetuar suas configurações.

    Já a parte do FailOver ,
    Dentro do diretório /etc/brazilfw/logical estão os arquivos de configuração das interfaces de rede( local , internet e se possuir link redundante : internet_1 ). Nos arquivos de config. das interfaces que recebem o link de internet, existe a opção ” LINK_WEIGHT= ” . É aqui que você define prioridade de cada Interface.

    Na verdade estas opções são para LoadBalance. Estarei pesquisando e efetuando testes para você. Quem sabe não seja este o tema do próximo post ??

    Um abraço amigo, espero ter ajudado de alguma forma.

    • Cléio Sousa

      Boa tarde Lucas!

      Seria uma ótima se funcionar neste cenário, Failover/Load balancing e squid na mesma máquina.
      Fico no aguardo do próximo artigo.
      Abraço!

  • Lucas França

    Obrigado pelos elogios Marcos Flávio e Lucas !!!

    Que bom que gostaram BFW. A facilidade de implementação é um grande diferencial da ferramenta.

    Um Abraço amigos

  • Davi

    Parabéns Vagner

    Ficou muito bom. Muito completo o artigo.

  • José Carlos

    Olá!

    Antes de mais nada, parabéns pelo artigo!
    Em ambientes que tem entre 15 e 20 computadores (Pequenos escritórios) é possível instalar esse tipo de solução em computadores com uma única placa de rede (por exemplo, um NUC Intel)?

    • Lucas França

      Olá José Carlos
      Que bom que gostou do artigo.

      No seu caso, é possível sim efetuar a instalação do BFW em um Hardware com apenas uma interface de rede. Assim você precisa apenas criar uma placa virtual.

      Se desejar executar a tarefa no modo texto, você terá 2 diretórios a trabalhar. O primeiro é o /etc/brazilfw/physical e o outro é o /etc/brazilfw/logical. Dentro destes, contém os arquivos de configuração de suas interfaces. O que você tem que fazer é criar (ou copiar uma já existente) um novo arquivo de configuração da placa que você deseja. Depois, você vai na pasta logical, edite o arquivo e altere o campo “LINK_CONNECTION” fazendo um apontamento para a interface física real. =)

      Já no modo gráfico (web) é mais tranquilo, basta acessar a página inicial do BFW,

      [ Configurações ]
      [ conexões ]
      [Virtual]

      Clique em [Adicionar] e faça as devidas configurações.

      Espero ter ajudado amigo
      Uma boa noite e ótimo Final de Semana.

  • Henrique Lorran

    Distribuição muito interessante Lucas, parabéns, ficou ótimo!

  • Lucas França

    Obrigado pelos elogios Henrique e Davi.

    Que bom que gostaram do artigo.

    Agradeço ao Vagner Fonseca e toda equipe CooperaTI, por acreditar e publicar este meu artigo.
    Brevemente tem mais novidades, quentinhas , saindo do forno

    Aguardem …..

    =}

  • patrick rocha

    Estou com um erro, no cache do bfw, vcs já viram este erro?
    Ele usa a memoria em 100% e trava ai ninguém acessa mais a net, só se eu desativar o cache. Mas preciso usa o cache por causa do proxy.

  • José Carlos

    Wagner,
    Eu consigo “rodar” esse firewall em um Raspeberry PI? Apenas como laboratório…
    Grato!

    • José,

      O RPi utiliza processador ARM e o BFW até o momento pe compilado para processador x86, por isso não é possível utilizá-lo no RPi.

  • Alcir

    olá, eu já uso o bfw á algum tempo e estou problema sério com banco do brasil eu deixo o site liberado mais o site se tornou muito lento em algumas partes ele nem entra e cai a conexão rapidamente…
    alguma dica para resolver isto?

    • Nossa, pra mim foi site bb.com.br que mais melhor com o bfw…

  • Beto Ribeiro

    Galera, no final das contas qual seria o melhor Firewall?
    Endian. BFW ou pfsense? Estou em d’uvida.

    • Lucas

      Beto,

      BFW é uma solução. O firewall que executa com ele é o iptables !!!
      Se sua dúvida é sobre firewall temos o iptables, o pf, o IPFW ……

      Já soluções, Depende muito do quanto estará disposto à investir, Temos soluções embarcadas como o Endian (Linux) , o pfSense (FreeBSD) e o ServerU (FreeBSD)

      até logo

      • Beto Ribeiro

        Lucas,

        Obrigado por esclarecer. Agora ficou claro que “eles” são Solucões.

        Irei instalar conforme seu artigo e depois instalar outra soluções e ver quais delas me identifico ou que seja máis fácil de manipular ou entender.

        O artigo muito bem elaborado. Parabéns!

  • Juliano Oliveira

    Cara shown de bola seu tutorial, é de grande importância para iniciantes e aprendizes como eu, sou um grande fã desse firewall da pra ver pelo meu e-mail. Rsrsrs Abraço ao amigo!

  • Fábio

    O cache do BFW em um atom com 2gb de ram e um SSD pequeno concerta até a navegação ruim da OI.