Attik Firewall

Attik é um firewall que possui administração Web e utiliza, para filtragem dos pacotes, exclusivamente o iptables. Sua proposta é permitir que a administração de um firewall seja uma tarefa mais segura, organizada e simples.

[ Hits: 15.649 ]

Por: Felipe em 29/05/2012


Instalação



Site temporário do projeto:
Para realizar a instalação ou atualização de versão do Attik, basta que tenha a última versão do pacote "attik-betax.x.x.tar.gz". Ele é composto por 2 (dois) executáveis e 1 (um) diretório.

Os arquivos de execução são:
  • install: Como o próprio nome induz, é responsável por realizar a instalação do Attik propriamente dita.
  • update: Esse executável faz a atualização de versão do Attik. Portanto, apenas deve ser executado se já tiver o Attik instalado em versões anteriores.
  • files: O diretório contém os demais arquivos necessários para instalação.

Para iniciar, faça o download do Attik em:
Descompacte o arquivo:

tar -xzvr attik-betax.x.x.tar.gz

Execute a instalação automática do Attik da seguinte forma:

# ./install

Terminada a instalação, é hora de acessar o Attik da seguinte forma:

http://IP_DO_FIREWALL_ATTIK

Sua navegabilidade dispensa explicações, então irei me ater a mostrar uma sequência lógica para começar a usar o seu firewall.

Em 'Painel de configuração', faça:

- Acessos:

Altere a senha do usuário padrão. De preferência, crie um novo usuário com o perfil de administrador e exclua o usuário padrão.

Cadastre todos os usuários que precisarão ter acesso ao sistema. Compartilhar uma única senha para vários usuários não é uma opção segura.

- Configurações diversas:

Crie um backup e escreva que trata-se de uma cópia da base limpa. Dessa forma, se um dia precisarmos limpar todas as configurações feitas, bastará restaurar este backup.

- Cadastre as rotas:

Nas opções gerais configure conforme a sua melhor conveniência. Cadastre as suas interfaces de rede.

Observação importante: o Attik não cria e nem altera a interface do sistema operacional. Ele apenas verifica se ela existe e a partir daí, permite o seu cadastro para que possa ser utilizado posteriormente nas regras de firewall.

Então, já deixe as interfaces de rede configuradas no SO antes de começar esta configuração.

- Em Firewall, faça:

Registre os endereços de rede que precisará para criar as regras de firewall. Basicamente, são os endereços do seu ambiente. Caso necessite de algum protocolo que não esteja cadastrado, proceda com o registro.

Defina a política padrão conforme a sua conveniência. Destacando que deixá-la como 'Aceitar', não é uma opção segura.

Pronto, agora já pode criar as regras de firewall conforme sua necessidade. Ao criar as regras elas ainda não estarão aplicadas, sendo necessário depois que terminar de realizar as operações que precisa, clicar em "Aplicar regras" (neste momento as regras serão criadas).

O Attik cria automaticamente duas regras para cada administrador, permitindo sempre o seu acesso a console de Web, uma permitindo a ida e outra, a volta no acesso à porta do serviço Web. Por essa razão, no cadastro de usuários, o campo Endereço IP é obrigatório.
Linux: Attik Firewall

Exportando regras para outro firewall na cadeia de confiança

Caso tenha em seu ambiente diversos firewalls, o uso do recurso de exportação de regras facilitará muito o uso, pois em uma Extranet, ou mesmo Intranet, existem diversas regras que são igualmente aplicadas em vários firewalls da rede.

Exemplo: Se você administra uma rede de supermercados, é muito provável que em cada filial exista um conjunto de regras iguais para acessar o sistema da loja.

Seja qual for o seu ambiente, o Attik disponibiliza este recurso, bastando que você crie a regra apenas uma vez e a exporte para quantos firewalls desejar. Veja abaixo, as regras para uso deste recurso.

Exportação de regras

1. Em 'Painel de Configurações', cadastre primeiramente os firewalls que poderão ter regras exportadas.

2. Após o cadastro, é necessário que permita no firewall remoto, a conexão via MySQL a partir do firewall que irá exportar as regras. Este procedimento ainda não é automática e necessita da configuração manual do usuário.

3. Agora, no módulo Firewall, se estiver criando uma regra que envolva um protocolo que ainda não esteja cadastrado no firewall remoto, o Attik irá replicar juntamente com a regra, de forma automática. O mesmo ocorre com os endereços de rede, mas neste último, é necessário observar algumas regras:

Ao cadastrar os endereços de rede defina os que serão locais e os que serão globais.

A diferença é:
  • Endereços locais: Na hora de replicar as regras será feita uma busca de um endereço que tenha exatamente esse nome. Por exemplo, em uma regra você pode ter um registro que seja a rede interna o qual iremos chamar de RI.

    Logicamente que, cada rede terá a sua própria classe de IP RI, então, este nome deve estar padronizado em seu ambiente. Desta forma, o Attik irá replicar a regra, preservando os endereços locais de cada unidade.

    Caso contrário, será replicado o mesmo registro com os endereços do firewall local. Marque sempre como local os endereços que só existem no ambiente do firewall local.

  • Endereços globais: Na hora de replicar as regras, será feita uma busca de um novo que tenha exatamente o endereço IP de cada variável. Por exemplo, em uma situação onde haja um registro que será o mesmo em todo ambiente, como o endereço do serviço de e-mail.

    Neste caso deverá ser marcada a opção de global. Se o endereço não existir no firewall remoto, o Attik irá replicar automaticamente o registro. Dessa forma, caso queira liberar o a acesso a um determinado endereço em todos os firewalls de uma só vez, basta que o registro desse enderenço de destino seja global.

    Após criar a regra, definir os firewalls que terão a regra exportada, pronto, todos já terão essa mesma liberação.

4. Uma outra observação importante é que o Attik não aplica e nem deleta uma regra exportada automaticamente.

Ele cria e atualiza em todos os firewall que estiverem na regra exportada, sendo necessário que após a exportação ou atualização de uma regra já exportada, seja feita conexão no firewall remoto e aplicada a regra.

Para facilitar no uso deste recurso, eleja um firewall que será o Master da cadeia de confiança, e apenas exporte regras a partir dele. Isto facilitará bastante a administração.

    Próxima página

Páginas do artigo
   1. Instalação
   2. O projeto Attik
Outros artigos deste autor

FproxyAdmin - Gerenciador WEB do Proxy

Leitura recomendada

Computação Forense - Entendendo uma perícia

Integração de servidores Linux com Active Directory

Consegue guardar um segredo?

Introdução ao Conceito de Hardening

Tornando seu Apache mais seguro com o ModSecurity

  
Comentários
[1] Comentário enviado por cesarfrrrk em 29/05/2012 - 16:40h

Dando uma checada no projeto.
Amigo, qual o usuário e senha após a instalação?

[2] Comentário enviado por leandro2103 em 29/05/2012 - 20:17h

é eu também não consegui logar, depois de instalado.

[3] Comentário enviado por felipetsi em 29/05/2012 - 23:22h

Opa, me esqueci de colocar essa informação no artigo.

O usuário e senha é "attikadmin".

[4] Comentário enviado por leandro2103 em 30/05/2012 - 08:51h

Oi bom dia, quando estou tentando logar aparece esse código ICCST001F.

[5] Comentário enviado por felipetsi em 30/05/2012 - 10:07h

Leandro, O erro ICCST001F ocorre quando não é possível verificar a base de usuários para autenticação. Creio que tenha ocorrido algum erro durante a sua instalação. Verifique se de fato os bancos foram criados. Para o correto funcionamento do Attik, é necessário que existam os bancos cc_backup, cc_firewall e controlcenter. Verifique se estes bancos existem com o comando abaixo:

# mysql -u root -p -e "show databases"

Será solicitado a senha do root e na sequência as três bases citadas acima deverão aparecer. Caso contrário, significa que o script de instalação não conseguiu criar os bancos de dados durante a execução, então tente manualmente com o comando abaixo:

# mysql -u root -p < /DIRETORIO_ATTIK/files/attik.sql

Substitua "DIRETORIO_ATTIK" pelo caminho do diretório onde foi extraído o pacote attik-betax.x.x.tar.gz. Na sequência execute:

# mysql -u root -p -e "GRANT ALL PRIVILEGES ON cc_backup.* TO attikuser@localhost IDENTIFIED BY 'PASSWORD'"
# mysql -u root -p -e "GRANT ALL PRIVILEGES ON cc_firewall.* TO attikuser@localhost IDENTIFIED BY 'PASSWORD'"
# mysql -u root -p -e "GRANT ALL PRIVILEGES ON controlcenter.* TO attikuser@localhost IDENTIFIED BY 'PASSWORD'"

Substitua "PASSWORD" pela senha que queira atribuir para o usuário do attik no BD.

Ao término da execução de cada um desses comandos, será solicita a senha do usuário root do BD, basta digitá-la e a execução será concluída.

Para testar se tudo está correto, faça:

# mysql -u attikuser -p controlcenter -e "select * from user"

Mais uma vez será solicitada a senha, agora do usuário do attik no BD (PASSWORD). O retorno do comando deverá ser a exibição do registro do usuário Administrador do sistema, o único que vem criado por padrão.

Prontinho. Agora é para tudo funcionar normalmente.

Para que possamos entender e evitar este mesmo erro ocorra com outras pessoas, solicito que me responda as seguintes perguntas:
- Qual distribuição Linux você está usando?
- A instalação do Attik foi realizada em uma máquina limpa, ou seja, sem ter nada anteriormente instalado, só o SO?
- Na máquina instalada tem conexão direta com a Internet?

[6] Comentário enviado por leandro2103 em 30/05/2012 - 11:36h

Oi, Uso o ubuntu 10.04 LTS, A instalação foi feita em uma máquina limpa, tem conexão com a internet sim.

[7] Comentário enviado por felipetsi em 30/05/2012 - 11:48h

Leandro, não testei ainda no Ubuntu. A princípio não é para ter problema, mas de qualquer forma depois irei homologar.

O Attik foi homologado apenas para o Debian 5 ou superior.

Como a base do Ubuntu é Debian, não creio que haverá problemas, mas de qualquer forma, é preciso validar.

Com os passos acima você conseguiu o acesso?

[8] Comentário enviado por junior em 30/05/2012 - 13:20h

O projeto é interessante, com alguns conceitos já abordados em outras ferramentas.
Entretanto, na minha opinião, como é uma ferramenta voltada a usuários que nem sempre são "experts" em firewall, este layout está um pouco poluído.

Talvez a interface deveria se repensada.

[9] Comentário enviado por felipetsi em 30/05/2012 - 17:14h

Junior, obrigado pelas considerações, sem dúvida são muito úteis.

Discordo em relação a finalidade. O Attik é uma solução também recomendada para usuários "experts", como você disse, por isso ele é busca oferecer o máximo de recursos possíveis, dentro dos limites de tempo para o desenvolvimento do projeto. Com ele o administrador de firewall pode ter um nível de gerenciamento amplo, ágil, organizado e seguro.

Justamente por entender que existem algumas necessidades que a interface web não oferece, ao ter o Attik instalado na máquina, todos os recursos do sistema operacional continuam disponíveis e podem ser utilizados da melhor forma que o Administrador desejar, inclusive a criação de regras via iptables diretamente na linha de comando.

[10] Comentário enviado por nanatinho em 30/05/2012 - 22:03h

Formidável em!!!

Meus parabéns Felipe, pelos tantos anos dedicados ao desenvolvimento desta ferramenta.

Esta versão está supimpa, principalmente a parte dos filtros de consulta, para localizar os endereços no momento da criação das regras.


Abraço e fique com DEUS!!!

[11] Comentário enviado por rafaeljrssg em 12/06/2012 - 12:20h

Na minha instalação, Linux Debian 6, também ocorreu o erro ICCST001F.

Conferi e realmente não havia sido criada a base de dados.

Executei os comandos mencionandos acima, porém continua exibindo o erro ICCST001F, apesar das bases haverem sido criadas e o usuário attikadmin está resultado através do último comando solicitado.

O que mais pode ser feito???

[12] Comentário enviado por felipetsi em 25/06/2012 - 09:40h

Nanatinho, muito obrigado pelos elogios e consideração.

[13] Comentário enviado por felipetsi em 25/06/2012 - 09:46h

rafaeljrssg, estranho ter ocorrido este erro também com você. O instalador cuida para que nenhum problema ocorra, mas já que ocorreu, vamos "debugar". quando você executa:
# mysql -u attikuser -p controlcenter -e "select * from user

É retornado para você o usuário attikadmin? Caso a resposta seja positiva, certifique-se que a senha do usuário attikuser está corretamente digitada no arquivo:
/var/.incti/.access/.access_exec.php

A sintaxe do arquivo acima tem que ser:
<?php $INCTIPW = "SENHA_DO_USUARIO_ATTIK_NO_BD"; ?>

Logicamente que apenas o trecho SENHA_DO_USUARIO_ATTIK_NO_BD deve ser substituído pela senha real do usuário attikuser.

Caso o comando "mysql -u ..." não retorne corretamente o usuário, é porque o usuário attikuser ainda não está criado no Mysql ou não possui permissão para acesso as bases do Attik. Digite então:

# mysql -u root -p -e "GRANT ALL PRIVILEGES ON cc_backup.* TO attikuser@localhost IDENTIFIED BY 'PASSWORD'"
# mysql -u root -p -e "GRANT ALL PRIVILEGES ON cc_firewall.* TO attikuser@localhost IDENTIFIED BY 'PASSWORD'"
# mysql -u root -p -e "GRANT ALL PRIVILEGES ON controlcenter.* TO attikuser@localhost IDENTIFIED BY 'PASSWORD'"

Não esqueça de substituir a o trecho PASSWORD pela senha real do usuário attikuser.

Observe que o usuário do BD é attikuser e o de acesso ao sistema via interface Web é attikadmin.

Bom, agora deve dá tudo certo, teste aí.

[14] Comentário enviado por marciods em 27/06/2012 - 15:28h

Esta pedindo uma key para instalar.... comentei o codigo que solicita a key instaei porem fica pedindo para ativar o attik???????? não é free?

[15] Comentário enviado por felipetsi em 28/06/2012 - 09:04h

marciods, o problema apenas está acontecendo porque não está utilizando a última versão do Attik, que é a 2.0.3.

Até a versão 2.0.1, o Attik vinha com a opção de controle por chave, mas para simplificar o procedimento de instalação resolvi tirar esse recurso que não agrega na solução.

Use conforme o link do artigo, ele te direcionará sempre para a última versão.

http://sourceforge.net/projects/attik/files/latest/download?source=files

[16] Comentário enviado por flavio_conceicao em 11/07/2012 - 13:32h

Olá.

Tem como integrar com minhas regras em uso?


[17] Comentário enviado por felipetsi em 11/07/2012 - 13:49h

Flávio.

Ainda não foi desenvolvido um script para importar as regras do iptables para o Attik, mas pensando nessa possibilidade, o Attik disponibiliza o arquivo /etc/attikpersonalscript.sh para que sejam inseridas regras manuais de iptables. Caso tenha alguma regra neste arquivo, sempre que aplicar as regras no Attik, ele automaticamente irá executar esse arquivos.

Importante destacar que a sintaxe precisa está perfeita para que haja sucesso na operação.

[18] Comentário enviado por felipetsi em 14/10/2013 - 20:22h

Pessoal, identifiquei uma falha na versão 2.0.4. Segue o passo a passo para corrigir;
- acesso o arquivo /var/www/attik/includes/control_session.php
- na linha 3, consta os seguintes dados:
if ((!empty($_SESSION['USER']))&&(verifyLicenseAttik()=="ok"))
troque por:
if (!empty($_SESSION['USER']))

Essa alteração é porque em versões anteriores o Attik fazia controle de licença, mas resolvi tirar essa opção.

[19] Comentário enviado por felipetsi em 02/11/2013 - 01:26h

Olá a todos.

Corringindo os problemas apontados, gerei uma nova versão do Attik, a 2.0.5.

Qualquer coisa, estou a disposição.

[20] Comentário enviado por felipetsi em 30/11/2013 - 17:47h

Disponibilizada a versão 2.0.6. Com ela os seguintes recursos foram inclusos, além da correção de alguns pequenos bugs:
- Possibilidade de criar conexões VPN, este módulo também foi habilitado; e
- Possibilidade de escolher se quer que o firewall trabalhe ou não em modo state full.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts