FACULDADES INTEGRADAS IPIRANGA CURSO DE TECNÓLOGO EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS

Tamanho: px
Começar a partir da página:

Download "FACULDADES INTEGRADAS IPIRANGA CURSO DE TECNÓLOGO EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS"

Transcrição

1 FACULDADES INTEGRADAS IPIRANGA CURSO DE TECNÓLOGO EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS BRUNO VINÍCIUS DA SILVA PINHEIRO EDINALDO JOÃO COSTA DE LA-ROQUE ESDRAS ROBERTO ALVES DE LA-ROQUE JEFFERSON JAMES LOBO GAMA JOSÉ GUSTAVO ANDRADE GOMES ENGENHARIA REVERSA DO SOFTWARE XFWALL - FIREWALL SOFTWARE FOR LINUX BELÉM 2011

2 BRUNO VINÍCIUS DA SILVA PINHEIRO EDINALDO JOÃO COSTA DE LA-ROQUE ESDRAS ROBERTO ALVES DE LA-ROQUE JEFFERSON JAMES LOBO GAMA JOSÉ GUSTAVO ANDRADE GOMES ENGENHARIA REVERSA DO SOFTWARE XFWALL - FIREWALL SOFTWARE FOR LINUX Trabalho de Conclusão de Curso apresentado às Faculdades Integradas Ipiranga como requisito obrigatório para obtenção de grau em Tecnólogo em Análise e Desenvolvimento de Sistemas. Orientador: Prof. Esp. Milton Cardoso BELÉM 2011

3 BRUNO VINÍCIUS DA SILVA PINHEIRO EDINALDO JOÃO COSTA DE LA-ROQUE ESDRAS ROBERTO ALVES DE LA-ROQUE JEFFERSON JAMES LOBO GAMA JOSÉ GUSTAVO ANDRADE GOMES ENGENHARIA REVERSA DO SOFTWARE XFWALL - FIREWALL SOFTWARE FOR LINUX Trabalho de Conclusão de Curso apresentado às Faculdades Integradas Ipiranga como requisito obrigatório para obtenção de grau em Tecnólogo em Análise e Desenvolvimento de Sistemas. Data: / / Bruno Vinícius da Silva Pinheiro Edinaldo João Costa de La-Roque Esdras Roberto Alves de La-Roque Jefferson James Lobo Gama José Gustavo Andrade Gomes Avaliador: Prof. Ricardo Figueiredo

4 Dedico e agradeço, antes de tudo, a Deus por ter proporcionado a oportunidade e alimentado em mim a persistência de vencer esta etapa de minha vida, à minha família que me favorece com um lar harmonioso, aos meus pais, especialmente à minha mãe, Maria do Carmo da Silva Pinheiro, que nunca desistiu de me estimular a ser o melhor de mim. À minha amada, futura esposa, Giselle, por fazer os meus dias mais felizes com a presença de seu amor. Por último e não menos importante, à equipe co-autora deste trabalho, pela amizade que se iniciou neste período de faculdade, em particular ao Edinaldo La-Roque, pelo exemplo de pessoa e profissional que aprendi a admirar. Bruno Pinheiro Dedico este trabalho aos meus filhos Abia Daniela, Débora Glenda, Esdras Roberto, Ester Cristina e ao meu enteado Rafael Botelho. Que Deus os ilumine e guie nas estradas da vida e que possam o estudo e o trabalho, que dignifica o Homem, sempre ter prioridade em suas vidas. Edinaldo La-Roque

5 Dedico este trabalho à minha família, por me dar todo apoio e carinho, para que eu possa continuar forte no meu caminho, em busca dos meus sonhos. Sem dúvidas, esta conquista seria mais difícil sem vocês. Esdras La-Roque Dedico este trabalho primeiramente a Deus, pela saúde, fé e perseverança que tem me dado. A minha esposa Diana, que me apoiou e entendeu as minhas "ausências" em virtude da consecução de mais este objetivo. A minha mãe, que sempre me incentivou nas minhas conquistas nesta jornada da vida. Ao meu pai, pelo esforço empreendido na criação dos seus quatro filhos e nos permitiu a condição de obter êxito na sociedade, e que torce por mim do alto de onde estiver. Jefferson J. Lobo Gama Dedico este trabalho aos meus pais José Guilherme e Arlete Gomes, ao meu irmão Jefferson Gomes e namorada Noelle Cascaes, que me incentivaram e apoiaram nos momentos mais difíceis do curso, e também aos amigos que fiz na turma ASN092, que pelo companheirismo e união, pude concluir esta etapa da minha vida da melhor forma. Obrigado a todos que me ajudaram direta ou indiretamente. José Gustavo Andrade Gomes

6 AGRADECIMENTOS Agradecemos a Deus, às nossas famílias e aos nossos professores das Faculdades Integradas Ipiranga, pela contribuição que deram à nossa obtenção do grau de Tecnólogo em Análise e Desenvolvimento de Sistemas, contribuição essa que culminou neste trabalho de conclusão de curso. São eles (professores em ordem alfabética): Aldo Rocha, Anderson Marques, Claudio Flores, Edson Brito, Elena Carvalho, Ellen Cunha, Emmanuel Farias, Felix Lelis, Helena Santos, Jaime Viana, José Yoshiriro, Lúcia Beckmann, Luiz Alberto, Manuelle Costa, Marcus Braga, Mayckon Domingues, Milton Cardoso e Ricardo Figueiredo. Bruno Pinheiro Edinaldo La-Roque Esdras La-Roque Jefferson J. Lobo Gama José Gustavo Andrade Gomes

7 Este tem sido um dos meus mantras foco e simplicidade. O simples pode ser mais difícil do que o complexo: você precisa trabalhar duro para tornar o seu raciocínio claro para torná-lo simples. Mas vale a pena no final, pois uma vez que chegue lá você pode mover montanhas. Steve Jobs

8 RESUMO Este trabalho tem por objetivo realizar a engenharia reversa do programa XFwall - Firewall Software For Linux (software de firewall para Linux), com o propósito de resgatar a documentação de análise do projeto e, consequentemente, facilitar o entendimento sobre o sistema para novos desenvolvedores. Para alcançar o objetivo, fizeram-se necessárias as análises dinâmica (observação do sistema em funcionamento) e estática (inspeção do código-fonte) do software. Esses processos envolveram a observação das funcionalidades do sistema, a sua configuração e a geração de scripts de firewall, bem como, o estudo do seu código-fonte, extraindo-se as estruturas do sistema, modelagem de dados, e as principais classes e métodos. De posse da compreensão obtida, foram criados os artefatos de engenharia de software, quais sejam: lista de requisitos funcionais (RF), mapeamento de requisitos funcionais para classes e métodos, regras de negócio (RN), diagramas de casos de uso, especificações de casos de uso (UC), modelo entidade-relacionamento (MER), diagramas de fluxo de dados (DFD), diagramas de atividades (DA) e diagrama de atividades com mapeamento para classes e métodos. O trabalho é encerrado sugerindo a refatoração do código-fonte do sistema, adotando-se os atuais padrões de projeto (design patterns), o uso de um servidor de banco de dados relacional como principal repositório de dados, a adoção da linguagem de programação orientada a objetos Java com interface web, e finalmente a inclusão de novas características, tais como proxy (para os serviços HTTP, HTTPS e FTP) e serviços de gateway de com os recursos de antivírus e antispam. Palavras-chave: Desenvolvimento de Software, Segurança de Redes, TCP/IP, Engenharia Reversa. XFwall. Firewall. IPtables. Linux. Artefatos de Engenharia de Software.

9 ABSTRACT The purpose of this work is reverse engineering the software program XFwall - Firewall Software For Linux aiming to rescue the analysis documentation of the project, thus facilitating the understanding of the system project for new developers. In order to achieve this goal, it was necessary to carry out a static analysis (observation of the system running) as well as a dynamic analysis (source code inspection) of the software. These processes involved the observation of the system s features, its settings, and the generation of firewall scripts, as well as the study of its source code, thus extracting the system structures, its data model, and the main classes and methods. With this understanding, the following software engineering artifacts were created: list of functional requirements, mapping of functional requirements to classes and its methods, business rules, use case diagrams, use case specifications, entity-relationship model, data flow diagram, activity diagrams, and activity diagram with class-method mapping. The work is finished with the suggestion for refactoring the source code of the system with the adoption of current design patterns, the use of a relational database server as the main data repository, as well as the adoption of Java object-oriented programming language with the use of a web interface design approach, and finally the addition of new features as proxy (for HTTP and FTP services) and gateway (with antivirus and anti-spam resources) services. Key words: Software Development, Network Security, Reverse Engineering. XFwall. Firewall. IPtables. Linux. Software Engineering Artifacts.

10 LISTA DE ILUSTRAÇÕES FIGURA 1 - Topologia de rede segura usando o XFwall FIGURA 2 - Caso de Uso Principal (UC_00) FIGURA 3 - Caso de Uso Configurar Firewall (UC_01) FIGURA 4 - Caso de Uso Administrar Regras (UC_02) FIGURA 5 - Caso de Uso Controlar Estado do Firewall (UC_03) FIGURA 6 - Caso de Uso Monitorar Firewall (UC_04) FIGURA 7 - Caso de Uso Administrar Backup (UC_05) FIGURA 8 - Caso de Uso Gerar Script de Firewall (UC_06) FIGURA 9 - Diagrama de Atividade - Configurar Firewall (DA_01) FIGURA 10 - Diagrama de Atividade - Manter Regras de NAT (DA_101) FIGURA 11 - Diagrama de Atividade - Manter Regras de Filtro (DA_102) FIGURA 12 - Diagrama de Atividade - Manter Regras de Controle de banda (DA_103) FIGURA 13 - Diagrama de Atividade - Manter Lista Negra de IPs (DA_104) FIGURA 14 - Diagrama de Atividade - Administrar Backup (DA_40) FIGURA 15 - Diagrama de Fluxo de Dados (DFD) FIGURA 16 - Modelo Entidade Relacionamento (MER)... 62

11 LISTA DE ABREVIATURAS E SIGLAS BASH Born Again Shell C Linguagem de programação estruturada C++ Linguagem de programação C orientada a objetos e eventos CBQ Class Based Queuing (Controle de banda no GNU/Linux) DFD Diagrama de Fluxo de Dados DMZ Demilitarized Zone (Zona Desmilitarizada) DNAT Destination NAT (NAT de Destino) DNS Domain Name System (Sistema de Nomes de Dom FTP File Transfer Protocol (Protocolo de Transferência de Arquivo) GNU Gnu Is Not Unix (projeto GNU de software livre) GPL General Public License (Licença) HD Hard Disk Drive (Disco Rígido) HTTP Hypertext Transfer Protocol (Protocolo de Transferência de Hipertexto) ID Identificação IDE Integrated Development Environment (Ambiente Integrado de Desenvolvimento) IP Protocolo Internet (Internet Protocol) IPTABLES Utilitário de configuração do firewall do kernel do GNU/Linux Java EE Java Enterprise Edition (Java versão Enterprise) LAN Local Area Network (Rede Local de Computadores) LOG Registro de eventos para posterior auditoria MER Modelo Entidade-Relacionamento NAT Network Address Translation (Tradução de Endereços de Rede) KDE K Desktop Environment (Ambiente de Trabalho K) POP3 Post Office Protocol (Protocolo de Recebimento de Correio), versão 3 RIA Rich Internet Application (Aplicação Internet Rica) RUP Rational Unified Process (Processo Unificado de Software da IBM) SMTP Simple Mail Transfer Protocol (Protocolo de Transferência Simples de ) SNAT Source NAT (NAT de Origem) SYN Synchronism (sincronismo) TCP Transmission Control Protocol (Protocolo de Controle de Transmissão) TGZ Extensão de arquivo compactado com os utilitários tar e gzip UC Use Case (Caso de Uso) UML Unified Modeling Language (Linguagem Unificada de Modelagem) WEB World Wide Web (Grande Teia Mundial ou Internet)

12 SUMÁRIO 1. INTRODUÇÃO OBJETIVOS OBJETIVO GERAL OBJETIVOS ESPECÍFICOS METODOLOGIA RESULTADOS REQUISITOS FUNCIONAIS MAPEAMENTO FUNCIONALIDADE / CLASSES E MÉTODOS REGRAS DE NEGÓCIO DIAGRAMAS DE CASO DE USO Caso de Uso Principal (UC_00) Caso de Uso Configurar Firewall (UC_01) Caso de Uso Administrar Regras (UC_02) Caso de Uso Controlar Estado do Firewall (UC_03) Caso de Uso Monitorar Firewall (UC_04) Caso de Uso Administrar Backup (UC_05) Caso de Uso Gerar Script de Firewall (UC_06) DIAGRAMAS DE ATIVIDADE Diagrama de Atividade - Configurar Firewall (DA_01) Diagrama de Atividade - Manter Regras de NAT (DA _101) Diagrama de Atividade - Manter Regras de Filtro (DA_102) Diagrama de Atividade - Manter Regras de Controle de Banda (DA_103) Diagrama de Atividade - Manter Lista Negra de IPs (DA_104) Diagrama de Atividade - Administrar Backup (DA_40) ESPECIFICAÇÃO DE CASOS DE USO Configurar Firewall (UC_01) Manter Regras de NAT - Criar Nova Regra (UC_02) Manter Regras de NAT - Apagar Regra (UC_03) Manter Regras de NAT - Editar Regra (UC_04) Manter Regras de NAT - Inserir Nova Regra (UC_05) Manter Regras de Filtro - Criar Nova Regra (UC_06) Manter Regras de Filtro - Apagar Regra (UC_07) Manter Regras de Filtro - Editar Regra (UC_08) Manter Regras de Filtro - Inserir Nova Regra (UC_09) Manter Regras de Controle de Banda - Criar Nova Regra (UC_10)... 46

13 Manter Regras de Controle de Banda - Apagar Regra (UC_11) Manter Regras de Controle de Banda - Editar Regra (UC_12) Manter Regras de Controle de Banda - Inserir Nova Regra (UC_13) Manter Lista Negra de IPs - Criar Novo Registro (UC_14) Manter Lista Negra de IPs - Apagar Registro (UC_15) Manter Lista Negra de IPs - Editar Registro (UC_16) Gerar Script de Firewall (UC_17) Ativar Firewall (UC_18) Desativar Firewall (UC_19) Monitorar o Estado do Firewall (UC_20) Monitorar Eventos do Firewall (UC_21) Forçar Backup (UC_22) Restaurar Backup (UC_23) Apagar Backup (UC_24) DIAGRAMA DE FLUXO DE DADOS (DFD) MODELO ENTIDADE RELACIONAMENTO (MER) CONCLUSÃO REFERÊNCIAS GLOSSÁRIO APÊNDICE A - A HISTÓRIA DO XFWALL APÊNDICE B - TUTORIAL - BAIXANDO E COMPILANDO O CÓDIGO-FONTE DO XFWALL NO UBUNTU LINUX APÊNDICE C - TUTORIAL - USO DO SOFTWARE XFWALL APÊNDICE D - PRINCIPAIS ARQUIVOS DE CONFIGURAÇÃO DO XFWALL APÊNDICE E - PROGRAMAS BINÁRIOS E SCRIPTS APÊNDICE F - INSPEÇÃO DO CÓDIGO-FONTE APÊNDICE G - SCRIPT DE FIREWALL GERADO APÊNDICE H - FERRAMENTAS UTILIZADAS ANEXO A - VISÃO GERAL SOBRE O IPTABLES

14 13 1. INTRODUÇÃO Este trabalho trata da engenharia reversa do produto de software XFwall - Firewall Software For Linux (software de firewall para Linux), visando resgatar a documentação da sua engenharia de software, para, principalmente, facilitar o entendimento sobre o sistema, auxiliar no processo de atualização e correção de bugs (defeitos de software), e viabilizar a adesão de novos desenvolvedores que ajudem no processo de aprimoramento da ferramenta. O XFwall é Software Livre e, portanto, Open Source (código-fonte aberto), liberado para o público na Internet sob a licença de uso GNU/GPL. Trata-se de um software de firewall por filtragem de pacotes, que roda no sistema operacional GNU/Linux. Pode-se entender o XFwall como um sistema de gerenciamento e geração de scripts de firewall IPtables, monitoramento do firewall do kernel do Linux, e backup de todo o conjunto que compõe o sistema. É voltado para clientes com perfil corporativo. Ou seja, o software foi concebido para implantação em empresas de médio e grande portes, com centenas ou milhares de máquinas em sua rede interna, e não para uso doméstico ou em pequenos escritórios que não dediquem uma máquina para a função exclusiva de firewall, com pelo menos duas interfaces de rede (gateway). FIGURA 1 - Topologia de rede segura usando o XFwall A figura 1, dá uma boa noção sobre a aplicabilidade do software XFwall, observandose seu uso tanto como máquina de firewall interno como externo.

15 14 O XFwall pode ser copiado, modificado e usado livremente, para montar máquinas de firewall, com recursos de filtragem de pacotes IP (Internet Protocol ou Protocolo Internet), NAT (Network Address Translation ou Tradução de Endereços de Rede) e Controle de Banda (controle de consumo de velocidade do link com a Internet). Não tem limite quanto ao número de placas ou interfaces de rede que suporta. Conforme relata a história do XFwall, no Apêndice A deste trabalho, o software nasceu no ano de 2000, devido a uma necessidade interna da empresa StarLink e, à medida que foi se tornando necessário, por demanda de grandes empresas (órgãos do governo, principalmente), o software foi recebendo melhorias ao longo de vários anos, saindo de uma versão modesta de linha de comandos, passando por uma versão com menus coloridos em modo texto e, finalmente, chegando a sua versão final com uma interface desktop gráfica, padrão Linux/KDE, com um excelente nível de maturidade e complexidade. A última intervenção significativa no código-fonte do XFwall ocorreu no ano de Desde então, e até os dias atuais (setembro de 2011), o software vem recebendo atualizações mínimas, objetivando apenas mantê-lo operacional ao longo das várias evoluções das distribuições do sistema operacional GNU/Linux, como Debian, Ubuntu, RedHat, Suse e Slackware. No entanto, apesar de todo o esforço de seu autor, por falta de disponibilidade de tempo, tornou-se inviável um trabalho individual no aprimoramento do software. Deve-se considerar que o software XFwall teve o início de seu desenvolvimento há aproximadamente 11 (onze) anos, tendo seu autor usado apenas editores de texto simples para edição do código-fonte, como o editor de textos vi do Linux, bem como compilação e depuração através de linhas de comando no pronto de comandos bash do Linux, tendo por compiladores das linguagens C e C++, o GNU GCC (C padrão) e o G++ (C++ orientado a objeto), em conjunto com as bibliotecas RedHat Newt versão 0.52 (interface com o usuário baseada em janelas no modo texto) e TrollTech Qt versão 3 (interface gráfica padrão KDE). Ou seja, não foram usados os modernos recursos atuais que facilitassem o uso desses componentes, como as IDEs (ambientes gráficos integrados de desenvolvimento), a exemplo do Eclipse, com recursos como auto-complete e sugestão de estruturas padrão, bem como recursos de compilação e depuração automáticas, o que poderia aumentar a produtividade de projetos GNU GCC e G++. Acrescente-se, ainda, que o autor do software usou apenas seu autodidatismo para desenvolver o sistema, sem, porém, ter, na época, o domínio dos modernos processos de desenvolvimento de softwares da atualidade.

16 15 Sendo assim, agora se fez necessário o esforço de geração de artefatos de software, por meio da técnica de engenharia reversa, objetivando documentar o projeto, de forma a facilitar a compreensão das funcionalidades do sistema, viabilizando a adesão de novos desenvolvedores que possam acelerar o processo evolutivo da ferramenta. O termo engenharia reversa tem suas origens no mundo do hardware. Uma empresa desmonta um produto de hardware competitivo na tentativa de conhecer os "segredos" de projeto e fabricação do concorrente. Os segredos poderiam ser facilmente entendidos se fosse possível obter as especificações de projeto e fabricação do concorrente. Mas esses documentos são de propriedade privada e não estão disponíveis para a empresa que está fazendo a engenharia reversa. Essencialmente, uma engenharia reversa bem-sucedida resulta em uma ou mais especificações de projeto e fabricação para um produto pelo exame de amostras atuais do produto. A engenharia reversa para o software é bem similar. Em muitos casos, no entanto, o programa a ser submetido a uma engenharia reversa não é um programa de um concorrente. Em vez disso, é o próprio trabalho da empresa (em geral, feito há muitos anos). Os "segredos" a ser entendidos são obscuros porque nenhuma especificação jamais foi desenvolvida. Portanto, a engenharia reversa para software é o processo para analisar um programa na tentativa de criar uma representação do programa em um nível mais alto de abstração do que o código-fonte. A engenharia reversa é um processo de recuperação do projeto. As ferramentas de engenharia reversa extraem informações do projeto de dados, da arquitetura e procedural com base em um programa existente. (PRESSMAN, 2011, p.669); O resgate do projeto do software XFwall, através de engenharia reversa de software, não apenas viabilizará a atualização da ferramenta, mas também facilitará mais um salto evolutivo do sistema, como por exemplo o lançamento de uma versão Java com interface web e com o uso de banco de dados relacional como repositório principal de dados, em comparação à atual interface gráfica desktop e repositório de dados em arquivos texto puro (ASCII). Essa proposta de salto evolutivo deverá fazer com que o software avance de uma solução desktop que, portanto, roda localmente em uma máquina, para uma solução Internet com todas as facilidades de acesso remoto, usando-se apenas navegadores Internet (browsers), podendo assim ser operado a partir de qualquer sistema operacional, independentemente de ser Linux ou não. Espera-se, com esse trabalho, que novos desenvolvedores venham a sentir-se à vontade com o software e seu código-fonte, e que venham a contribuir com a comunidade Open Source, ajudando no aprimoramento dessa solução brasileira de segurança de redes TCP/IP.

17 16 2. OBJETIVOS 2.1. OBJETIVO GERAL Este trabalho tem por objetivo realizar a engenharia reversa do programa XFwall - Firewall Software For Linux (software de firewall para GNU/Linux), com o propósito de gerar os artefatos de engenharia de software OBJETIVOS ESPECÍFICOS Facilitar o entendimento sobre a modelagem do software; Auxiliar no processo de atualização e correção de bugs; Sugerir a implementação de novas funcionalidades; Viabilizar a adesão de novos desenvolvedores; Ajudar no processo de portar a ferramenta da atual interface desktop para a tecnologia web 2.0 (interface web dinâmica) em plataforma Java 2 EE (Enterprise Edition).

18 17 3. METODOLOGIA Para se atingir o objetivo, se fez a análise dinâmica (observação do sistema em funcionamento) do software XFwall, versão , em distribuição GNU/Linux Ubuntu Essa análise incluiu as funcionalidades do sistema, a configuração e a geração de scripts de firewall. Então, partiu-se para a análise estática 1 (inspeção do código-fonte) da ferramenta, extraindo-se as estruturas, a modelagem de dados e as principais classes e funções de seu código-fonte em linguagem de programação C/C++. De posse da compreensão obtida com esse processo de análise, criou-se uma representação em alto nível do XFwall, seguindo os padrões modernos de engenharia de software, através de representações textuais e diagramáticas, que são: Requisitos Funcionais; Mapeamento de Requisitos Funcionais para Classes e Métodos; Regras de Negócio; Diagramas UML de Caso de Uso; Modelo Entidade Relacionamento (MER); Especificação das Regras de Negócio; Especificação dos Casos de Uso; Diagrama de Fluxo de Dados (DFD); Diagrama de Atividades; 1 A análise estática a que se refere este trabalho é tão somente a inspeção do código-fonte do XFwall, e não a execução de ferramentas que automatizem a análise do código-fonte, visando encontrar erros de codificação ou advertências.

19 18 4. RESULTADOS Como o foco deste trabalho está em engenharia reversa de produto de software, os resultados são artefatos de engenharia de software, que resgatam o projeto XFwall - Firewall Software For Linux. Os artefatos resultantes do trabalho são: Requisitos Funcionais; Lista de Mapeamento de Requisitos Funcionais / Classes e Métodos Regras de Negócio; Diagramas UML de Caso de Uso; Modelo Entidade-Relacionamento (MER); Especificação das Regras de Negócio; Especificação dos Casos de Uso; Diagrama de Fluxo de Dados (DFD); Diagrama de Atividades; Os diagramas UML aqui apresentados foram elaborados segundo a versão 2.3 da UML - Unified Modeling Language (Linguagem Unificada de Modelagem) REQUISITOS FUNCIONAIS Desconsiderando as restrições físicas, as ações que um sistema deve ser capaz de executar e o comportamento de entrada e saída desse sistema, isso tudo é especificado através dos requisitos funcionais. Os requisitos funcionais de um sistema descrevem o que o sistema deve fazer. Esses requisitos dependem do tipo de software que está sendo desenvolvido, dos usuários a que o software se destina e da abordagem geral considerada pela organização ao redigir os requisitos. Quando expressos como requisitos de usuário, eles são geralmente descritos de forma bastante abstrata. No entanto, os requisitos funcionais descrevem a função do sistema detalhadamente, suas entradas e saídas, exceções, etc. (SOMMERVILLE, 2007, p.81);

20 19 Os requisitos funcionais podem ou não ser evidentes para o usuário, porém a lista de requisitos precisa ser complementada por casos de uso, os quais serão mostrados adiante. XFwall: O quadro 1 lista, de maneira abstrata, os principais requisitos funcionais do software QUADRO 1 - Requisitos Funcionais CÓDIGO FUNCIONALIDADE DESCRIÇÃO ATOR Esta funcionalidade envolve a configuração do perfil de sistema de firewall, bem como, as RF_01 Configurar Firewall interfaces de rede (dispositivos), Administrador endereços IP de rede/host, serviços (protocolos, portas e sentido de conexão). Esta funcionalidade envolve a manutenção das tabelas de RF_02 Administrar Regras regras de filtro, NAT, controle de Administrador banda e lista negra de endereços IP. Esta funcionalidade tem a RF_03 Gerar Script de Firewall finalidade de criar o arquivo de Administrador script de firewall. Esta funcionalidade é responsável pela desativação RF_04 total ou pela ativação seletiva das Controlar Estado do regras: de filtro, NAT, controle de Firewall banda, lista negra de endereços Administrador IP, comandos de usuário, LAN DMZ (zona desmilitarizada), rodar como serviço. Esta funcionalidade tem a finalidade de monitorar o estado RF_05 Monitorar Firewall do firewall (ativado ou Administrador desativado), bem como, os eventos (pacotes RF_06 Administrar Backup Esta funcionalidade envolve as operações de forçar, restaurar e apagar backup. Administrador O quadro 1, mostra que o ator, para as funcionalidades do sistema, é o administrador. Isso reflete a realidade do software, que só permite que o usuário administrador (root) do Linux possa executá-lo.

21 MAPEAMENTO FUNCIONALIDADE / CLASSES E MÉTODOS O mapeamento dos principais requisitos funcionais do sistema para as classes e métodos do código-fonte, em linguagem C++, do software, é mostrado no quadro 2. Esta abordagem permite ao desenvolvedor, que se propuser a baixar o código-fonte do XFwall e nele dar manutenção, uma fácil localização dos pontos-chave do sistema. QUADRO 2 - Requisitos Funcionais x Principais Funções REQUISITOS FUNCIONAIS PRINCIPAIS FUNÇÕES CÓDIGO FUNCIONALIDADE ITEM CLASSE MÉTODO/FUNÇÃO RF_01 Configurar Firewall 9 Main_Menu Config_Tab() RF_02 RF_03 RF_04 Administrar Regras Gerar Script de Firewall Controlar Estado do Firewall 10, 11 e 12 Main_Menu Nat_Editor(), Custom_Tab() e Bw_Control() 8 Main_Menu Rebuilds_Firewall() 6 e 7 Main_Menu Starts_Firewall() e Stops_Firewall() RF_05 Monitorar Firewall 14 Main_Menu Status_Tab() RF_06 Administrar Backup 13 Main_Menu Backup_Tab() 4.3. REGRAS DE NEGÓCIO As regras de negócio detalham funcionalidades específicas do sistema, facilitando aos programadores o desenvolvimento de métodos de tratamento de exceções, limitando, dessa forma, ações anormais relativas ao funcionamento do sistema. O RUP (Rational Unified Process) define as regras de negócio como declarações de políticas ou condições que devem ser cumpridas pelo sistema a fim de atender a um objetivo do negócio. Enquanto os requisitos de negócio e de usuário definem o que o cliente deseja que o sistema faça, já as regras de negócio definem, entre outras coisas, parâmetros para que o sistema possa garantir a qualidade e integridade dos dados. A identificação das regras de negócio ocorrem em conjunto com a elicitação de requisitos. Ao transcrever estes requisitos para as especificações, deve-se verificar quais itens se encaixarão como regras de negócio. (

22 21 Para o software XFwall - Firewall Software For Linux, foram identificadas as seguintes regras de negócio: RN_01: Execução do Sistema Somente o administrador do sistema operacional Linux (a conta do usuário root ou um usuário com id 0 de sistema) poderá executar o XFwall. RN_02: Configuração Inicial do Sistema Na primeira execução do XFwall, é obrigatório que seja realizada a configuração inicial, envolvendo a definição do perfil do firewall, tipo de conexão externa, dispositivos de rede, alertas do sistema, servidor DNS para tradução dos endereços IP. RN_03: Criação de Interfaces de Rede Para criar uma interface de rede, é necessário que essa interface conste na lista de dispositivos default (/etc/fwall/defaults/interfaces), bem como, as velocidades possíveis para essa interface também constem na lista de velocidades default (/etc/fwall/defaults/interface_rates). RN_04: Criação de Endereços de Rede / Host Para criar um item de endereço de rede ou de host, é necessário que a interface de rede vinculada a esse endereço esteja previamente cadastrada (RN_003). RN_05: Criação de Serviço de Rede Para criar um item de serviço de rede, é necessário que o nome do protocolo vinculado a esse endereço esteja previamente cadastrado na lista de protocolos default (/etc/fwall/defaults/protocols). RN_06: Criação de Regra de NAT e de Filtro Para criar uma regra de NAT e de Filtro, é necessário que as interfaces (RN_003), os endereços (RN_004) e os serviços (protocolos, portas e bit de SYN) (RN_005) estejam previamente cadastrados. RN_07: Criação de Regra de Controle de Banda Para criar uma regra de Controle de Banda, é necessário que as interfaces (RN_003), os endereços (RN_004), serviços (protocolos, portas e bit de SYN) (RN_005) e velocidades de tráfego (/etc/fwall/defaults/user_rates) estejam previamente cadastrados.

23 22 RN_08: Restauração e Exclusão de Backup Para restaurar ou excluir um backup, é necessário que exista arquivo de backup compactado disponível no diretório /var/fwall, que termine com a extensão tgz. RN_09: Ativação e Desativação do Firewall Para ativar ou desativar o firewall, é necessário que exista o seguinte arquivo: /etc/init.d/firewall DIAGRAMAS DE CASO DE USO Os diagramas de caso de uso mostram, de forma abstrata e em alto nível, a que o sistema se propõe. Trata-se de uma visão externa do sistema, representando, de forma gráfica, os atores, os casos de uso e os relacionamentos entre esses elementos. Os casos de uso constituem uma técnica baseada em cenários para elicitação de requisitos e foram introduzidos inicialmente no método Objectory (Jacobson, et al., 1993). Eles se tornaram uma característica fundamental da notação UML para descrição de modelos de sistemas orientados a objetos. Em sua forma mais simples, um caso de uso identifica o tipo da interação e os agentes envolvidos. (SOMMERVILLE, 2001, p.102) O principal objetivo dos diagramas de caso de uso é apresentar uma ilustração com alto nível de abstração, com relação aos elementos externos que interagem com as funcionalidades do sistema. Assim, têm por finalidade apresentar um tipo de diagrama de contexto, mostrando os elementos externos ao sistema, bem como a forma como tais elementos externos utilizam o sistema. A seguir, somente os principais casos de uso foram documentados Caso de Uso Principal (UC_00) Este caso de uso mostra as principais funcionalidades do sistema. É importante destacar que os casos de uso fundamentais para a criação e ativação do firewall são:

24 23 Configurar Firewall; Administrar Regras; Gerar Script de Firewall; Controlar o Estado do Firewall. Os casos de uso Monitorar Firewall e Administrar Backup são funções administrativas do sistema. Outro ponto importante a destacar é que somente o administrador do sistema operacional GNU/Linux (root) tem permissão para administrar o firewall. FIGURA 2 - Caso de Uso Principal (UC_00)

25 Caso de Uso Configurar Firewall (UC_01) Para poder criar regras de firewall, é necessário primeiramente fazer a parametrização do XFwall, envolvendo: Configuração inicial do sistema; Cadastramento de interfaces de rede (dispositivos); Cadastramento de serviços (protocolos, portas e sentido das conexões); Cadastramento de endereços de origem e destino. FIGURA 3 - Caso de Uso Configurar Firewall (UC_01) Caso de Uso Administrar Regras (UC_02) Este caso de uso é dependente do caso de uso UC_01 (Configurar Firewall).

26 25 Após a configuração inicial do sistema, o administrador tem as seguintes funções, que não são obrigatórias: Manter Regras de Filtro; Manter Regras de NAT; Manter Regras de Controle de Banda; Manter Lista Negra de Endereços IP. FIGURA 4 - Caso de Uso Administrar Regras (UC_02) Essas funcionalidades compreendem às inclusões, exclusões, alterações, ativações e desativações de cada regra. Após a execução deste caso de uso, o administrador do sistema poderá gerar o script de firewall e ativá-lo.

27 Caso de Uso Controlar Estado do Firewall (UC_03) O controle do estado do firewall é independente das demais funcionalidades. Mesmo que o sistema não tenha sido configurado previamente, nem regra alguma de firewall tenha sido definida, é possível ativar ou desativar o firewall. Isto deve-se ao fato de o sistema já vir com proteções básicas por padrão (default). FIGURA 5 - Caso de Uso Controlar Estado do Firewall (UC_03) Caso de Uso Monitorar Firewall (UC_04) O monitoramento do firewall compreende a visualização do estado das tabelas internas de firewall do GNU/Linux, através do programa utilitário iptables. Este caso de uso é o responsável pelo acesso às opções de visualização do estado do firewall, bem como, da visualização dos eventos que são dinamicamente registrados nos arquivos de log do sistema operacional, relativos às funcionalidades de firewall.

28 27 O usuário poderá configurar o sistema para mostrar automaticamente eventos importantes apenas no momento em que eles ocorram, ou poderá simplesmente acionar as janelas de monitoramento no momento que julgar oportuno. FIGURA 6 - Caso de Uso Monitorar Firewall (UC_04) Caso de Uso Administrar Backup (UC_05) O software XFwall tem opções para administração de arquivos de backup completos do sistema de firewall. Os arquivos de backups são criados automaticamente toda vez que o administrador executar o caso de uso Gerar Script de Firewall (UC_06).

29 28 FIGURA 7 - Caso de Uso Administrar Backup (UC_05) Essa funcionalidade facilita grandemente a recuperação do sistema, caso o administrador cometa algum erro de configuração, já que toda geração de script de firewall é precedida pela criação de um arquivo de backup completo, contendo todas as configuradas usadas pelo XFwall. Além do backup automático, o sistema tem opção para forçar a criação de um arquivo de backup a qualquer momento, independente do caso de uso UC_06 ser acionado ou não Caso de Uso Gerar Script de Firewall (UC_06) Este é o caso de uso que reúne todas as configurações efetuadas no XFwall, verifica quais funcionalidades foram marcadas como ativas, e gera o resultado final e principal do sistema, que é o script de firewall, contendo todas as regras configuradas pelo administrador, além das regras-padrão do software, para proteção das máquinas que estarão atrás do firewall.

30 29 FIGURA 8 - Caso de Uso Gerar Script de Firewall (UC_06) Pelo diagrama da figura 8, observa-se que a geração do script de firewall inclui, de forma obrigatória, as proteções default do sistema, sendo opcionais os demais módulos de proteção. Ainda, visando garantir que o script de firewall será ativado durante a inicialização da máquina de firewall, este caso de uso tem a funcionalidade de ativar o script de firewall como serviço da máquina, garantindo sua execução durante a inicialização (boot) da máquina DIAGRAMAS DE ATIVIDADE Por meio da representação gráfica do fluxo de interação e de eventos em um cenário específico, o diagrama de atividades UML complementa o caso de uso, de forma similar a um fluxograma. O fluxo descreve o que precisa ser feito pelo sistema, representando as atividades do sistema, com suporte a comportamentos condicionais e paralelos.

31 30 Seu objetivo é mostrar o fluxo de atividades em um único processo, descrevendo como uma atividade depende da outra. Nas primeiras versões da UML, esse diagrama era considerado um caso especial de diagrama de máquina de estados, passando a ser independente na versão 2.0 da UML. Ele apresenta muitas semelhanças com os fluxogramas, pois é utilizado para descrever os passos a serem percorridos até a conclusão de um método ou de um algoritmo específico. (SBROCCO, 2011, p.116). Esse tipo de diagrama permite determinar a ordem em que os passos serão executados, sendo mostradas somente as principais regras de sequências Diagrama de Atividade - Configurar Firewall (DA_01) O diagrama de atividade da figura 9 mostra os principais pontos de configuração do software XFwall. No entanto, para que se possa instalar com sucesso o sistema em uma máquina de firewall, é indispensável à configuração das interfaces de rede interna e externa, além da indicação se a máquina será roteadora de pacotes (gateway). FIGURA 9 - Diagrama de Atividade - Configurar Firewall (DA_01)

32 31 Com relação às configurações de DNS, POP3, SMTP, Proxy e Radius, trata-se de liberação de acesso a servidores confiáveis para a própria máquina de firewall Diagrama de Atividade - Manter Regras de NAT (DA _101) O diagrama da figura 10 mostra os principais pontos de manutenção das regras de NAT (Network Address Translation) ou regras de tradução de endereços de rede. Esta opção do sistema permite a manutenção (criação, exclusão, alteração e inserção em qualquer ponto) das regras de NAT. FIGURA 10 - Diagrama de Atividade - Manter Regras de NAT (DA_101)

33 Diagrama de Atividade - Manter Regras de Filtro (DA_102) O diagrama da figura 11 mostra os principais pontos de manutenção das regras de filtro de pacotes, comumente conhecidas como regras de firewall. Esta opção do sistema permite a manutenção (criação, exclusão, alteração e inserção em qualquer ponto) das regras de filtragem de pacotes. FIGURA 11 - Diagrama de Atividade - Manter Regras de Filtro (DA_102) Diagrama de Atividade - Manter Regras de Controle de Banda (DA_103) O diagrama da figura 12 mostra os principais pontos de manutenção das regras de controle de banda. O controle de banda é usado para desacelerar a velocidade de acesso tanto de conexões entrantes quanto saintes. É um recurso muito útil para impedir que certos acessos consumam exageradamente, ou de forma descontrolada, o link com a Internet,

34 33 garantindo assim melhores performances de acesso aos pontos que realmente precisem desse recurso. FIGURA 12 - Diagrama de Atividade - Manter Regras de Controle de banda (DA_103) Diagrama de Atividade - Manter Lista Negra de IPs (DA_104) A lista negra de endereços IP é uma lista simples, contendo apenas os endereços que devem ser bloqueados pelo firewall, tanto para pacotes saintes quanto para pacotes entrantes no firewall.

35 34 FIGURA 13 - Diagrama de Atividade - Manter Lista Negra de IPs (DA_104) Diagrama de Atividade - Administrar Backup (DA_40) O sistema de backup do XFwall funciona de maneira automática, toda vez que o administrador do sistema executa o caso de uso Gerar Script de Firewall (UC_06). Porém, há a opção de forçar a criação de um novo arquivo de backup a qualquer momento.

36 35 FIGURA 14 - Diagrama de Atividade - Administrar Backup (DA_40) 4.6. ESPECIFICAÇÃO DE CASOS DE USO Um caso de uso conta um tipo de estória sobre como o usuário interage com o sistema, no desempenho de um conjunto de papéis possíveis, sob circunstâncias específicas. Um caso de uso representa o software pela ótica de um usuário final. Portanto, os casos de uso devem ser definidos sob o ponto de vista dos atores, cujos papéis podem representar pessoas (usuários) ou outros sistemas. Os casos de uso vão especificar o comportamento do sistema de software (ou parte dele), descrevendo as funcionalidades desejadas desempenhadas pelos atores. Os casos de uso equivalem a cenários que contêm uma sequência de passos que descrevem a interação de um usuário (um ator) com o sistema. (SBROCCO, 2011, p.71). Um caso de uso não descreve como o sistema deve ser construído, mas como deverá se comportar quando estiver pronto. Normalmente, não se usa termos técnicos em um caso de uso, preferindo-se a linguagem do usuário final do sistema. Os casos de uso são desenvolvidos conjuntamente por técnicos e usuários finais. A seguir, a especificação dos principais casos de uso do software XFwall - Firewall Software For Linux.

37 Configurar Firewall (UC_01) Descrição: Esta funcionalidade envolve a configuração do perfil de sistema de firewall, bem como, as interfaces de rede (dispositivos), endereços IP de rede/host, serviços (protocolos, portas e sentido de conexão). Ator: Administrador Pré-condição: Somente o administrador do sistema operacional Linux (a conta do usuário root ou um usuário com id de sistema 0) poderá executar o XFwall (RN_001). Fluxo Principal: I. O ator acessa a opção de configuração do sistema; II. O sistema apresenta a tela principal de configuração, contendo as opções de seleção da interface de rede externa (com opção de NAT por mascaramento), interna e definição da máquina como gateway (roteador) da rede; III. O ator seleciona a interface da rede externa, informa seu endereço IP e indica se a rede interna será ou não mascarada pelo IP da interface externa; IV. O ator seleciona a interface da rede interna e informa seu endereço de rede com netmask (máscara de rede); V. O ator define se a máquina será ou não o gateway (roteador) da rede; VI. O ator confirma as opções selecionadas. Fluxo Alternativo: FA_01: Refinamento de Opções de Log I. O ator seleciona a aba Log;

38 37 II. III. IV. O sistema apresenta opções de emissão de beep sonoro, modos de visualização das janelas de monitoramento e de registro dos eventos de log em banco de dados; O ator seleciona as opções desejadas; O ator confirma as informações selecionadas. FA_02: Ativação da janela de monitoramento I. O ator seleciona a aba Monitor; II. O sistema apresenta opção de ativação da janela de monitoramento de comandos; III. O ator define se a janela de status de comandos deverá ou não ser exibida; IV. O ator confirma a operação. FA_03: Opções de servidores DNS confiáveis I. O ator seleciona a aba DNS; II. O sistema apresenta as seguintes opções de uso de servidores DNS: a. Usar servidores DNS do próprio sistema operacional; b. Usar qualquer servidor DNS c. Não usar nenhum servidor DNS III. O ator seleciona a opção desejada; IV. O ator confirma a operação. FA_04: Opções de servidores POP3 confiáveis I. O ator seleciona a aba POP3; II. O sistema apresenta as seguintes opções de uso de servidores POP3: a. Permitir conexão a qualquer servidor POP3; b. Desativar conexão a qualquer servidor POP3; III. O ator seleciona a opção desejada; IV. O ator confirma a operação. FA_05: Opções de servidores SMTP confiáveis I. O ator seleciona a aba SMTP; II. O sistema apresenta as seguintes opções de uso de servidores SMTP:

39 38 III. IV. a. Permitir conexão a qualquer servidor SMTP; b. Desativar conexão a qualquer servidor SMTP; O ator seleciona a opção desejada; O ator confirma a operação. FA_06: Opção de servidor Proxy confiáveis I. O ator seleciona a aba Proxy; II. O sistema apresenta campo para informar o endereço IP de um servidor Proxy confiável; III. O ator informa o endereço IP do servidor Proxy; IV. O ator confirma a operação. FA_07: Opção de servidor Radius confiáveis I. O ator seleciona a aba Radius; II. O sistema apresenta campo para informar o endereço IP de um servidor Radius confiável; III. O ator informa o endereço IP do servidor Radius; IV. O ator confirma a operação. Fluxo de Exceção: Não há fluxo de exceção para este caso de uso Manter Regras de NAT - Criar Nova Regra (UC_02) Descrição: Ator: Este caso de uso descreve a criação de uma nova regra de NAT. Administrador

40 39 Pré-condição: Para quaisquer operações com as regras de firewall, é necessário que o sistema tenha sido previamente configurado (RN_002); Para o caso de inclusão de novas regras, é necessário que as interfaces de rede (RN_003), endereços de rede/host (RN_004) e os serviços de rede (RN_005) estejam previamente cadastrados. Fluxo Principal: I. O ator acessa a opção de regras de NAT; II. O sistema apresenta a tela de manutenção das regras de NAT; III. O ator seleciona a opção Nova; IV. O sistema apresenta os campos a serem preenchidos para a nova regra (Estado, Log, Origem, Destino, Serviços de Rede, Ação, Endereço, Porta e Comentário); V. O ator seleciona os campos com as informações previamente cadastradas (Estado, Log, Origem, Destino, Serviços de Rede, Endereço para SNAT ou DNAT e Ação) e, opcionalmente, preenche os campos Porta e Comentário; VI. O ator confirma as opções selecionadas e/ou preenchidas. Fluxo de Exceção: Se o ator não selecionar ou não preencher um ou mais dos seguintes campos: Origem, Destino, Serviços de Rede, Ação ou Endereço, o sistema apresentará a mensagem "Campo em branco não permitido" Manter Regras de NAT - Apagar Regra (UC_03) Descrição: Este caso de uso descreve a deleção de uma regra de NAT.

41 40 Ator: Administrador Pré-condição: Para usar esta funcionalidade, é necessário que exista pelo menos uma regra; Fluxo Principal: I. O ator acessa a opção de regras de NAT; II. O sistema apresenta a tela de manutenção das regras de NAT; III. O ator seleciona a regra a ser apagada; IV. O ator seleciona a opção Apagar; V. O sistema exclui a regra selecionada; Fluxo de Exceção: Não há fluxo de exceção para este caso de uso Manter Regras de NAT - Editar Regra (UC_04) Descrição: Este caso de uso descreve a edição (alteração) de uma regra de NAT. Ator: Administrador Pré-condição: Para usar esta funcionalidade, é necessário que exista pelo menos uma regra;

42 41 Fluxo Principal: I. O ator acessa a opção de regras de NAT; II. O sistema apresenta a tela de manutenção das regras de NAT; III. O ator edita informações de uma ou mais regras; IV. O ator confirma as alterações. Fluxo de Exceção: Não há fluxo de exceção para este caso de uso Manter Regras de NAT - Inserir Nova Regra (UC_05) Descrição: Este caso de uso descreve a inserção de uma nova regra de NAT um nível acima de outra já existente, com o objetivo de determinar a ordem (sequência) de execução das regras. Ator: Administrador Pré-condição: Para quaisquer operações com as regras de firewall, é necessário que o sistema tenha sido previamente configurado (RN_002); Para o caso de inclusão de novas regras, é necessário que as interfaces de rede (RN_003), endereços de rede/host (RN_004) e os serviços de rede (RN_005) estejam previamente cadastrados.

43 42 Fluxo Principal: I. O ator acessa a opção de regras de NAT; II. O sistema apresenta a tela de manutenção das regras de NAT; III. O ator seleciona a opção Inserir; IV. O sistema insere uma nova regra acima da regra selecionada e apresenta os campos a serem preenchidos para a nova regra (Estado, Log, Origem, Destino, Serviços de Rede, Ação, Endereço, Porta e Comentário); V. O ator seleciona os campos com as informações previamente cadastradas (Estado, Log, Origem, Destino, Serviços de Rede, Endereço para SNAT ou DNAT e Ação) e, opcionalmente, preenche os campos Porta e Comentário; VI. O ator confirma as opções selecionadas e/ou preenchidas. Fluxo de Exceção: Se o ator não selecionar ou não preencher um ou mais dos seguintes campos: Origem, Destino, Serviços de Rede, Ação ou Endereço, o sistema apresentará a mensagem "Campo em branco não permitido" Manter Regras de Filtro - Criar Nova Regra (UC_06) Descrição: Este caso de uso descreve a criação de uma nova regra de filtragem de pacotes. Ator: Administrador Pré-condição: Para quaisquer operações com as regras de firewall, é necessário que o sistema tenha sido previamente configurado (RN_002);

44 43 Para o caso de inclusão de novas regras, é necessário que as interfaces de rede (RN_003), endereços de rede/host (RN_004) e os serviços de rede (RN_005) estejam previamente cadastrados. Fluxo Principal: I. O ator acessa a opção de regras de Filtro; II. O sistema apresenta a tela de manutenção das regras de Filtro; III. O ator seleciona a opção Nova; IV. O sistema apresenta os campos a serem preenchidos para a nova regra (Estado, Log, Origem, Destino, Serviços de Rede, Ação e Comentário); V. O ator seleciona os campos com as informações previamente cadastradas (Estado, Log, Origem, Destino, Serviços de Rede e Ação) e, opcionalmente, preenche o campo Comentário; VI. O ator confirma as opções selecionadas e/ou preenchidas. Fluxo de Exceção: Se o ator não selecionar ou não preencher um ou mais dos seguintes campos: Origem, Destino, Serviços de Rede ou Ação, o sistema apresentará a mensagem "Campo em branco não permitido" Manter Regras de Filtro - Apagar Regra (UC_07) Descrição: Este caso de uso descreve a deleção de uma regra de Filtro. Ator: Administrador Pré-condição: Para usar esta funcionalidade, é necessário que exista pelo menos uma regra cadastrada.

45 44 Fluxo Principal: I. O ator acessa a opção de regras de Filtro; II. O sistema apresenta a tela de manutenção das regras de Filtro; III. O ator seleciona a regra a ser apagada; IV. O ator seleciona a opção Apagar; V. O sistema exclui a regra selecionada. Fluxo de Exceção: Não há fluxo de exceção para este caso de uso Manter Regras de Filtro - Editar Regra (UC_08) Descrição: Este caso de uso descreve a edição (alteração) de uma regra de Filtro. Ator: Administrador Pré-condição: Para usar esta funcionalidade, é necessário que exista pelo menos uma regra cadastrada; Fluxo Principal: I. O ator acessa a opção de regras de Filtro; II. O sistema apresenta a tela de manutenção das regras de Filtro; III. O ator edita informações de uma ou mais regras; IV. O ator confirma as alterações;

46 45 Fluxo de Exceção: Não há fluxo de exceção para este caso de uso Manter Regras de Filtro - Inserir Nova Regra (UC_09) Descrição: Este caso de uso descreve a inserção de uma nova regra de Filtro um nível acima de outra já existente, com o objetivo de determinar a ordem (sequência) de execução das regras. Ator: Administrador Pré-condição: Para quaisquer operações com as regras de firewall, é necessário que o sistema tenha sido previamente configurado (RN_002); Para o caso de inclusão de novas regras, é necessário que as interfaces de rede (RN_003), endereços de rede/host (RN_004) e os serviços de rede (RN_005) estejam previamente cadastrados. Fluxo Principal: I. O ator acessa a opção de regras de Filtro; II. O sistema apresenta a tela de manutenção das regras de Filtro; III. O ator seleciona a opção Inserir; IV. O sistema insere uma nova regra acima da regra selecionada e apresenta os campos a serem preenchidos para a nova regra (Estado, Log, Origem, Destino, Serviços de Rede, Ação, e Comentário); V. O ator seleciona os campos com as informações previamente cadastradas (Estado, Log, Origem, Destino, Serviços de Rede e Ação) e, opcionalmente, preenche o campo Comentário;

47 46 VI. O ator confirma as opções selecionadas e/ou preenchidas. Fluxo de Exceção: Se o ator não selecionar ou não preencher um ou mais dos seguintes campos: Origem, Destino, Serviços de Rede e Ação, o sistema apresentará a mensagem "Campo em branco não permitido" Manter Regras de Controle de Banda - Criar Nova Regra (UC_10) Descrição: Este caso de uso descreve a criação de uma nova regra de controle de banda. Ator: Administrador Pré-condição: Para quaisquer operações com as regras de firewall, é necessário que o sistema tenha sido previamente configurado (RN_002); Para criar uma regra de Controle de Banda, é necessário que as interfaces (RN_003), os endereços (RN_004), serviços (protocolos, portas e bit de SYN) (RN_005) e velocidades de tráfego (/etc/fwall/defaults/user_rates) estejam previamente cadastrados (RN_007). Fluxo Principal: I. O ator acessa a opção de regras de controle de banda; II. O sistema apresenta a tela de manutenção das regras de controle de banda; III. O ator seleciona a opção Nova; IV. O sistema apresenta os campos a serem preenchidos para a nova regra (Estado, Origem, Destino, Serviços de Rede e Velocidade);

48 47 V. O ator seleciona os campos com as informações previamente cadastradas (Estado, Origem, Destino, Serviços de Rede e Velocidade); VI. O ator confirma as opções selecionadas e/ou preenchidas. Fluxo de Exceção: Se o ator não selecionar ou não preencher um ou mais dos seguintes campos: Origem, Destino, Serviços de Rede ou Velocidade, o sistema apresentará a mensagem "Campo em branco não permitido" Manter Regras de Controle de Banda - Apagar Regra (UC_11) Descrição: Este caso de uso descreve a deleção de uma regra de controle de banda cadastrada. Ator: Administrador Pré-condição: Para usar esta funcionalidade, é necessário que exista pelo menos uma regra cadastrada; Fluxo Principal: I. O ator acessa a opção de regras de controle de banda; II. O sistema apresenta a tela de manutenção das regras de controle de banda; III. O ator seleciona a regra a ser apagada; IV. O ator seleciona a opção Apagar; V. O sistema exclui a regra selecionada. Fluxo de Exceção: Não há fluxo de exceção para este caso de uso.

49 Manter Regras de Controle de Banda - Editar Regra (UC_12) Descrição: Este caso de uso descreve a edição (alteração) de uma regra de Controle de Banda. Ator: Administrador Pré-condição: Para usar esta funcionalidade, é necessário que exista pelo menos uma regra; Fluxo Principal: I. O ator acessa a opção de regras de Controle de Banda; II. O sistema apresenta a tela de manutenção das regras de Controle de Banda; III. O ator edita informações de uma ou mais regras; IV. O ator confirma as alterações. Fluxo de Exceção: Não há fluxo de exceção para este caso de uso Manter Regras de Controle de Banda - Inserir Nova Regra (UC_13) Descrição: Este caso de uso descreve a inserção de uma nova regra de Controle de Banda um nível acima de outra já existente, com o objetivo de determinar a ordem (sequência) de execução das regras. Ator: Administrador

50 49 Pré-condição: Para quaisquer operações com as regras de firewall, é necessário que o sistema tenha sido previamente configurado (RN_002); Para o caso de inclusão de novas regras, é necessário que as interfaces de rede (RN_003), endereços de rede/host (RN_004) e os serviços de rede (RN_005) estejam previamente cadastrados. Fluxo Principal: I. O ator acessa a opção de regras de Controle de Banda; II. O sistema apresenta a tela de manutenção das regras de Controle de Banda; III. O ator seleciona a opção Inserir; IV. O sistema insere uma nova regra acima da regra selecionada e apresenta os campos a serem preenchidos para a nova regra (Estado, Origem, Destino, Serviços de Rede e Velocidade); V. O ator seleciona os campos com as informações previamente cadastradas (Estado, Origem, Destino, Serviços de Rede e Velocidade) e, opcionalmente, preenche o campo Comentário; VI. O ator confirma as opções selecionadas e/ou preenchidas. Fluxo de Exceção: Se o ator não selecionar ou não preencher um ou mais dos seguintes campos: Origem, Destino, Serviços de Rede e Velocidade, o sistema apresentará a mensagem "Campo em branco não permitido" Manter Lista Negra de IPs - Criar Novo Registro (UC_14) Descrição: Este caso de uso descreve a criação de um novo registro na lista negra de endereços IP.

51 50 Ator: Administrador Pré-condição: Não há pré-condição para este caso de uso. Fluxo Principal: I. O ator acessa a opção de Lista Negra de Endereços IP; II. O sistema apresenta a tela de manutenção dos registros da Lista Negra; III. O ator seleciona a opção Novo; IV. O sistema apresenta os campos a serem preenchidos para o novo registro (Estado, Log e Endereço); V. O ator seleciona o conteúdo para os campos Estado e Log; VI. O ator preenche o campo Endereço com o número IP a ser bloqueado; VII. O ator confirma as opções selecionadas e/ou preenchidas. Fluxo de Exceção: Se o ator não selecionar ou não preencher um ou mais dos seguintes campos: Estado e Endereço, o sistema apresentará a mensagem "Campo em branco não permitido" Manter Lista Negra de IPs - Apagar Registro (UC_15) Descrição: Este caso de uso descreve a deleção de um registro da lista negra de endereços IP. Ator: Administrador

52 51 Pré-condição: É necessário que exista pelo menos um registro cadastrado na lista negra de endereços IP. Fluxo Principal: I. O ator acessa a opção de Lista Negra de Endereços IP; II. O sistema apresenta a tela de manutenção dos registros da Lista Negra; III. O ator seleciona o registro a ser apagado; IV. O ator seleciona a opção Apagar; V. O sistema exclui o registro selecionado. Fluxo de Exceção: Não há fluxo de exceção para este caso de uso Manter Lista Negra de IPs - Editar Registro (UC_16) Descrição: Este caso de uso descreve a edição (alteração) de um registro da lista negra de endereços IP. Ator: Administrador Pré-condição: É necessário que exista pelo menos um registro cadastrado na lista negra de endereços IP.

53 52 Fluxo Principal: I. O ator acessa a opção de Lista Negra de Endereços IP; II. O sistema apresenta a tela de manutenção dos registros da Lista Negra; III. O ator edita informações de um ou mais registros; IV. O ator confirma as alterações. Fluxo de Exceção: Se o ator não selecionar ou não preencher um ou mais dos seguintes campos: Estado e Endereço, o sistema apresentará a mensagem "Campo em branco não permitido" Gerar Script de Firewall (UC_17) Descrição: Este caso de uso descreve a funcionalidade de geração do script de firewall. Ator: Administrador Pré-condição: Não há pré-condição para este caso de uso. Fluxo Principal: I. O ator acessa a opção Refazer; II. O sistema lê e insere no script de firewall os seguintes recursos configurados pelo ator: a. Proteção default; b. Lista negra de endereços IP, caso exista; c. Regras de NAT, caso exista; d. Regras de filtragem de pacotes, caso exista;

54 53 e. Regras de DMZ para a LAN, caso tenha sido configurado; f. Comandos de usuário, caso tenham sidos configurados. III. O sistema configura o script de firewall como serviço, caso o ator tenha selecionado esta opção; IV. O sistema lê as configurações de controle de banda e gera arquivo de configuração do CBQ do Linux; V. O sistema grava o script de firewall, sobrescrevendo o antigo, caso exista; VI. O sistema emite a mensagem "Firewall configurado com sucesso". Fluxo de Exceção: Não há fluxo de exceção para este caso de uso Ativar Firewall (UC_18) Descrição: Este caso de uso descreve a funcionalidade de ativação do firewall. Ator: Administrador Pré-condição: É necessário que o script de firewall tenha sido previamente gerado. Fluxo Principal: I. O ator acessa a opção Executar; II. O sistema executa o script de firewall; III. O sistema emite a mensagem "Firewall iniciado com sucesso". Fluxo de Exceção: Não há fluxo de exceção para este caso de uso.

55 Desativar Firewall (UC_19) Descrição: Este caso de uso descreve a funcionalidade de desativação do firewall. Ator: Administrador Pré-condição: Não há pré-condição para este caso de uso. Fluxo Principal: I. O ator acessa a opção Parar; II. O sistema emite os comandos de parada do firewall; III. O sistema emite a mensagem "Firewall agora parado". Fluxo de Exceção: Não há fluxo de exceção para este caso de uso Monitorar o Estado do Firewall (UC_20) Descrição: Este caso de uso descreve a funcionalidade de monitoramento do firewall. Ator: Administrador

56 55 Pré-condição: Não há pré-condição para este caso de uso. Fluxo Principal: I. O ator acessa a opção Estado; II. O sistema mostra a janela de monitoramento do estado do firewall. Fluxo Alternativo: I. Caso o ator deseje analisar estaticamente as regras de firewall, deverá congelar a visualização dinâmica, selecionando a opção Parar a atualização; II. Caso o ator tenha congelado a visualização das regras de firewall e deseje voltar ao modo de visualização dinâmica, deverá selecionar a opção Iniciar a atualização. Fluxo de Exceção: Não há fluxo de exceção para este caso de uso Monitorar Eventos do Firewall (UC_21) Descrição: Este caso de uso descreve a funcionalidade de monitoramento dos eventos de firewall. Ator: Administrador Pré-condição: Não há pré-condição para este caso de uso. Fluxo Principal:

57 56 I. O ator acessa a opção Mensagens de Log do Firewall; II. O sistema mostra as janelas de monitoramento de eventos do firewall (LogViewer: Raw Mode e Easy View). Fluxo de Exceção: Não há fluxo de exceção para este caso de uso Forçar Backup (UC_22) Descrição: Este caso de uso descreve a funcionalidade de geração forçada de backup de todas as configurações do sistema. Ator: Administrador Pré-condição: Não há pré-condição para este caso de uso. Fluxo Principal: I. O ator acessa a opção Backup; II. O sistema apresenta a tela com opções de backup, bem como, a visualização da lista de arquivos de backup existentes; III. O ator acessa a opção Forçar Backup; IV. O sistema realiza o backup de todas as suas configurações e atualiza a lista de backups disponíveis; V. O sistema apresenta a mensagem "Backup salvo com sucesso". Fluxo de Exceção: Não há fluxo de exceção para este caso de uso.

58 Restaurar Backup (UC_23) Descrição: Este caso de uso descreve a funcionalidade de restauração de backup de todas as configurações do sistema. Ator: Administrador Pré-condição: Para restaurar um backup, é necessário que exista pelo menos um arquivo de backup no diretório de backup do sistema (RN_08). Fluxo Principal: I. O ator acessa a opção Backup; II. O sistema apresenta a tela com opções de backup, bem como, a visualização da lista de arquivos de backup existentes; III. O ator seleciona o arquivo de backup a ser restaurado a partir da lista exibida; IV. O ator acessa a opção Restaurar Backup; V. O sistema restaura todas as suas configurações a partir do arquivo selecionado; VI. O sistema apresenta a mensagem "Backup recuperado com sucesso". Fluxo de Exceção: Não há fluxo de exceção para este caso de uso.

59 Apagar Backup (UC_24) Descrição: Este caso de uso descreve a funcionalidade de deleção de arquivo de backup do sistema. Ator: Administrador Pré-condição: Para excluir um backup, é necessário que exista pelo menos um arquivo de backup no diretório de backup do sistema (RN_08). Fluxo Principal: I. O ator acessa a opção Backup; II. O sistema apresenta a tela com opções de backup, bem como, a visualização da lista de arquivos de backup existentes; III. O ator seleciona o arquivo de backup a ser apagado a partir da lista exibida; IV. O ator acessa a opção Apagar Backup; V. O sistema solicitação confirmação de deleção de backup; VI. O ator confirma a operação; VII. O sistema apresenta a mensagem "Arquivo apagado com sucesso"; VIII. O sistema atualiza a lista de backups disponíveis. Fluxo de Exceção: Não há fluxo de exceção para este caso de uso.

60 DIAGRAMA DE FLUXO DE DADOS (DFD) O DFD é usado para desenvolver modelos do domínio de informação e domínio funcional. Um diagrama de fluxo de dados, quando bem detalhado, dá uma visão geral sobre o sistema, com suas principais entradas, processamentos e saídas. É um artefato de engenharia de software fundamental para dar a noção de como funciona o sistema como um todo integrado pelas suas redes de processos. O DFD adota uma visão entrada-processo-saída de um sistema. Isto é, os objetos de dados entram no software, são transformados por elementos de processamento e os objetos de dados resultantes saem do software. Os objetos de dados são representados por setas rotuladas e as transformações, por círculos 2 (também chamados bolhas) [...] (PRESSMAN, 2011, p.669); O diagrama de fluxo de dados do software XFwall mostra os principais processos do sistema, bem como, suas inter-relações, facilitando, de uma forma macro, o entendimento das principais funcionalidade do software. 2 Apesar dessa referência mencionar círculos para representar processos, outra possibilidade são retângulos, conforme usado no DFD aqui elaborado, e que está de acordo com funcionalidade disponível na ferramenta SmartDraw 2010 usada para construir o DFD deste trabalho.

61 FIGURA 15 - Diagrama de Fluxo de Dados (DFD) 60

62 MODELO ENTIDADE RELACIONAMENTO (MER) O MER (Modelo Entidade Relacionamento) é um modelo conceitual com alto grau de abstração, que representa a forma como os dados do sistema estão relacionados. Representa as tabelas do sistema e seus atributos, bem como, os relacionamentos entre essas tabelas. O Modelo de Entidades e Relacionamentos é um modelo abstrato cuja finalidade é descrever, de maneira conceitual, os dados a serem utilizados em um sistema de informações ou que pertencem a um domínio. A principal ferramenta do modelo é sua representação gráfica, o Diagrama Entidade Relacionamento. Normalmente, o modelo e o diagrama são conhecidos por suas siglas: MER e DER. O modelo E-R é chamado de modelagem conceitual, cujo objetivo é representar de uma forma abstrata, independente de implementação em computador, os dados que serão armazenados no banco de dados. O Diagrama Entidade Relacionamento é um modelo diagramático que descreve o modelo de dados de um sistema com alto nível de abstração. Ele é a principal representação do Modelo de Entidades e Relacionamentos. Sua maior aplicação é para visualizar o relacionamento entre tabelas de um banco de dados, no qual as relações são construídas através da associação de um ou mais atributos destas tabelas. ( O Modelo Entidade Relacionamento não representa como os dados serão armazenados no computador, nem qual tecnologia será usada para esse fim. Não especifica se serão usados bancos de dados relacionais ou arquivos para armazenamento físico das tabelas do sistema. No caso do XFwall, observou-se que a persistência dos dados é feita através de arquivos texto plano (ASCII). Não houve a utilização de servidor de banco de dados para armazenar as configurações do sistema.

63 FIGURA 16 - Modelo Entidade Relacionamento (MER) 62

64 63 5. CONCLUSÃO A inspeção do código-fonte do software XFwall, no processo de engenharia reversa do sistema, para a elaboração deste trabalho, resultou na observação dos seguintes aspectos concernentes aos métodos e técnicas usados no processo de desenvolvimento da ferramenta: O software XFwall é uma mescla de linguagens de programação, sendo estas: C padrão, C++ e scripts Bash. No entanto, apesar de usar uma linguagem orientada a objetos, o C++, não foram adotados os modernos padrões de projeto (design patterns), nem as modernas IDEs (interfaces gráficas integradas para desenvolvimento de sistemas); A versão mais recente do software (1.4-43), disponível em acessado em 24/10/2011, adota interface gráfica estilo desktop KDE/Linux, o que está a um passo atrás das modernas interfaces web 2.0, que permitem acesso remoto via Internet, através do uso de navegadores Internet (browsers); Arquivos em formato texto puro (ASCII) são adotados como repositório de dados, ao invés de um servidor de banco de dados relacional; O XFwall é um software especialista na geração e gerenciamento de scripts de firewall IPtables, não dando suporte a recursos de proxy HTTP e FTP, nem a gateway de s com recursos de antivírus e antispam, o que o tornaria uma suíte mais completa no que se refere a uma ferramenta avançada de segurança de redes TCP/IP. Diante do exposto acima, conclui-se este trabalho sugerindo as seguintes melhorias para o software XFwall - Firewall Software For Linux: a. A refatoração do código-fonte, adotando-se os modernos padrões de desenvolvimento de software, seguindo os atuais padrões de projeto (design patterns), com a adoção de modularidade e nomenclatura de classes e métodos

65 64 mais compatíveis com os processos atuais de desenvolvimento de sistemas. Isto facilitaria a intervenção de novos desenvolvedores no código-fonte do software; b. A adoção da linguagem de programação orientada a objetos Java, com interface web, usando JSF e Primefaces para interface rica (RIA), por exemplo. Isto não apenas tornaria o sistema mais portável entre plataformas (pelo menos a interface de administração do sistema, já que scripts de firewall IPtables só rodam em Linux), como também facilitaria a entrada de novos desenvolvedores para a equipe de desenvolvimento, pela adoção de uma linguagem mais popular na Internet; c. A adoção de um servidor de banco de dados relacional, como o PostgreSQL ou o MySQL, por exemplo, como repositório principal de dados do sistema; d. O lançamento de uma versão do XFwall com novas características, que o elevem à categoria de suíte de segurança, através da adição de recursos como serviço de proxy HTTP e FTP, bem como o serviço de gateway de , com os recursos de antivírus e antispam. Vale ressaltar que este trabalho não teve a pretensão de realizar uma engenharia reversa completa do software XFwall, já que trata-se de um sistema complexo e que o tempo para a realização desta empreitada não permitiu aprofundar-se nos meandros de um trabalho completo dessa natureza. Portanto, somente os principais processos foram documentados, o que já dá uma boa visão sistêmica, bem como a visão dos principais pontos de acesso no código-fonte, servindo como um bom ponto de partida para os desenvolvedores que se propuserem a contribuir com a atualização e aprimoramento da ferramenta.

66 65 REFERÊNCIAS DATE, C. J. Introdução a Sistemas de Bancos de Dados; tradução: Daniel Vieira. Rio de Janeiro: Elsevier, Disponível em Acesso em 21/10/2011. Disponível em Acesso em 13/10/2011. Disponível em Acesso em 18/09/2011. Disponível em Acesso em 21/10/2011. PRESSMANN, Roger S. Engenharia de Software: uma abordagem profissional / Roger S. Pressmann; tradução Ariosvaldo Griesi, Mario Moro Fecchio. 7. ed. Porto Alegre: AMGH, SBROCCO, José Henrique Teixeira de Carvalho. UML 2.3: teoria e prática / José Henrique Teixeira de carvalho Sbrocco. 1. ed. São Paulo: Érica, SOMMERVILLE, Ian. Engenharia de Software; tradução: Selma Shin Shimizu Melnikoff, Reginaldo Arakaki, Edílson de Andrade Barbosa. 8. ed. São Paulo: Pearson Addison - Wesley, 2007.

67 66 GLOSSÁRIO Aide ASCII Ataque de Root Kit Backup Biblioteca Newt Cheops Daemon DNS Dsniff Echo Ethereal Finger Firewall FTP Hacker Ferramenta de verificação de integridade do sistema de arquivos. O AIDE usa criptografia MD5 para gerar e validar os arquivos do sistema Acrônimo para American Standard Code for Information Interchange, que em português significa "Código Padrão Americano para o Intercâmbio de Informação") é uma codificação de caracteres de oito bits baseada no alfabeto inglês. É o ataque através de arquivos capazes de esconder-se nos sistemas operacionais para que usuários mal intencionados possam fazer o que quiserem quando bem entender sem serem percebidos. Cópia dos dados de um dispositivo de armazenamento para outro, para que possam ser restaurados em caso da perda dos dados originais. Biblioteca de programação para modo texto colorido, com interface com usuário baseada em controles. Combinação de uma variedade de ferramentas de rede para prover uma interface simples aos usuários e administradores de sistemas para um gerenciamento e acesso da sua rede. Programa que roda em segundo plano na memória do sistema operacional. Espécie de sistema para a tradução de endereços de IP para nomes de domínios. Sniffer de rede para o sistema operacional GNU/Linux. Instrução que envia para a saída qualquer informação, podendo conter texto, números ou variáveis. Programa que fareja o que trafega pela rede. Usado frequentemente por administradores de rede para identificarem pacotes estranhos passeando pela rede ou por pessoas mal intencionadas para tentar descobrir informações importantes, especialmente senhas. É um protocolo e comando de troca de informação sobre utilizadores. Espécie de sistema que tem a função de controlar o fluxo de pacotes enviados e recebidos de um host ou redes, normalmente com o intuito de evitar o acesso nocivo a estes. Protocolo de Transferência de Arquivos. São os indivíduos que estudam, elaboram e/ou modificam software e hardware de computadores, seja desenvolvendo funcionalidades novas, seja adaptando as antigas.

68 67 Host Ipchains Ipfwadm Iptables Iptraf Kernel Máscara de Rede MySQL NAT Nessus Nmap Endereço de qualquer dispositivo ou computador conectado a uma rede. Ferramenta para filtragem de pacotes para versões anteriores ao kernel 2.4 do Linux. Uma das primeiras ferramentas de adminsitração de firewall do Linux, que suporta regras apenas com leitura de cabeçalhos de pacotes. Foi substituída pelo IPchains, que posteriormente foi substituído pelo IPtables. É, atualmente, a ferramenta mais completa para administrar regras de filtragem de pacotes, embutida no kernel do Linux. É um utilitário monitorador de tráfego de rede, baseado em console, para Linux. É o componente central do sistema operativo da maioria dos computadores. É um número de 32 bits usado para separar em um IP a parte correspondente à rede pública, à subrede e aos hosts. Sistema de gerenciamento de banco de dados (SGBD), que utiliza a linguagem SQL. Network Address Translation, é um protocolo que faz a tradução dos endereços Ip e portas TCP da rede local para a Internet e virce-versa. É um software de verificação de falhas/vulnerabilidades de segurança. É um escaneador de hosts que usa recursos avançados para verificar o estado do seu alvo. PostgreSQL Sistema gerenciador de banco de dados objeto relacional, desenvolvido como projeto software livre. Proxy Radius rlogin Root É um servidor que atende a requisições internas, processando-as e devolvendo o resultado para o host que a solicitou, intermediando os acessos externos. Remote Authentication Dial In User Service - é um protocolo para aplicações para acesso à rede de computadores e mobilidade através de rede IP. É um serviço de login remoto que conecta a máquina cliente na máquina servidora de forma que a sua utilização é transparente para o usuário. Também chamado de super usuário, é o nome dado ao usuário que pode controlar tudo em todo a máquina local (usuário administrador do sistema operacional).

69 68 Root Kit Security Focus Servidor DNS SMTP Sniffit Snort Scripts POP3 TcpDump Telnet TripWire UML Webspy Pacotes para a substituição dos principais binários de diversos sistemas operacionais. Foco de segurança. É um host com uma base de dados que traduz domínios de nomes para endereços IP na Internet e virce-versa. Simple Mail Transfer Protocol é o protocolo padrão utilizado para transfência de correspondências eletrônicas entre hosts. Ferramenta de sniffer do Linux que permite passar parâmetros que especifiquem melhor o que monitorar e gravar do tráfego da rede. Muito eficiente para gravar dados de protocolos não criptografados, em busca de contas de usuários e senhas. É um sistema de IDS (Intrusion Detect System Sistema de Detecção de Intrusão) que funciona tanto pra manter a segurança como para monitorar o que se passa pela sua rede. Uma sequência de comandos e tarefas a serem executadas linha após linhas. É um protocolo utilizado no acesso remoto a uma caixa de correio eletrônico, para baixar as mensagens. É uma ferramenta utilizada para monitorar os pacotes que trafegam em uma rede de computadores. É um protocolo de conexão remota a hosts de rede, a fim de se obter um interpretador de comando para operar o sistema à distância. Ferramenta para verificação da integridade de arquivos, detectando mudanças não autorizadas ou não esperadas nos principais arquivos do sistema. É uma linguagem que permite que desenvolvedores visualizem os produtos de seus trabalhos de forma diagramática e textual padronizada. Ferramenta para monitoramento em tempo real de acessos à Internet e uso de .

70 69 APÊNDICE A - A HISTÓRIA DO XFWALL A idéia do XFwall surgiu quando, em um certo dia do ano de 2000, o diretor de soluções da empresa StarLink Conectividade Ltda encontrou-se tentando descobrir o que estava acontecendo com o servidor GNU/Linux da empresa. Havia uma intensa atividade de disco suspeita, causada por um tráfego Internet que não era parte das operações normais daquela máquina. Além do mais, comandos como ps, top, netstat e lsof não respondiam de maneira convincente ou coerente, o que levou à conclusão de que uma invasão estava em andamento. Ou seja, um ataque de root kit estava em curso. Vários comandos de administração do servidor foram substituídos pelos do hacker mal intencionado, fazendo crer que, a despeito da atividade anormal do disco rígido (HD) da máquina, tudo estava normal. Naquele momento, soube-se que não se podia confiar em qualquer informação que aquela máquina fornecesse, e que alguém lá fora estava controlando aquele servidor. Mais tarde, descobriu-se que a base de dados de clientes da empresa desapareceu. Tudo o que foi encontrado foi um arquivo, colocado no diretório raíz, com o nome "internet", cujo conteúdo era a senha do usuário root (a conta que tem poderes de administrador do sistema). O intruso queria certificar-se de que o arquivo seria encontrado, passando uma mensagem desmoralizadora. Daquele dia em diante, o diretor da StarLink decidiu ter uma visão mais aprofundada das ameaças à segurança da pilha de protocolos TCP/IP, através da leitura de vários livros sobre segurança, arquivos README e HOWTOs, o monitoramento de listas de sobre segurança (como as listas da SecurityFocus) e assim por diante. Desta forma, entrou em contato com ferramentas como: iptraf, nmap, tcpdump, ethereal, sniffit, dsniff, nessus, cheops, aide, tripwire, ipfwadm, ipchains, iptables, scripts de firewall espalhados pela Internet, arquivos do diretório /proc/sys/net/ipv4/, netcat, root kits, webspy, e uma série de outros recursos. Como resultado, aprendeu-se que uma máquina Linux segura repousa sobre vários pontos estratégicos, como: Múltiplas partições de disco com direitos de montagem apropriados a cada uma delas; restrições de recursos tais como: cota de disco, limites de uso de memória e limites de número (quantidade) de processos; Um kernel compilado apenas com o que realmente se precisa; Uma instalação de pacotes com seleção criteriosa (somente o mínimo possível, sem softwares supérfluos instalados);

71 70 Atualizações constantes de pacotes de software; Somente contas de usuários e de sistema realmente necessários, com a adoção de senhas fortes; O mínimo possível de permissões para contas de usuários e de sistema; Somente portas TCP/UDP realmente necessárias devem ser abertas (nenhum serviço fraco ou sem utilidade, como telnet, ftp, rlogin, echo, finger, etc); Regras rígidas de filtragem de pacotes; Uma ferramenta de verificação de integridade, como a aide ou tripwire, deve ser executada periodicamente a partir de uma mídia confiável; Uma ferramenta de IDS - Intrusion Detection System (Sistema de Detecção de Intrusão), como o Snort reduz grandemente os riscos à segurança; Serviços Internet devem ser distribuídos por entre várias máquinas (embora seja caro, somente um serviço por máquina deveria ser executado sempre que possível); Etc; Desta forma, objetivando construir uma ferramenta de firewall intuitiva para o sistema operacional GNU/Linux, começando com uma versão de linha de comandos, depois evoluindo para um software orientado a menu, e finalmente chegando a uma solução GUI - Graphics User Interface (Interface Gráfica de Usuário), padrão KDE (um dos mais completos gerenciadores de janelas em GNU/Linux), de apontar e clicar com o mouse, foi decidido iniciar um projeto de desenvolvimento de software de firewall, na empresa StarLink, com o nome original de fwall, que teve o seu desenvolvimento iniciado em agosto de 2000, sendo inicialmente uma ferramenta de linha de comando, escrita em linguagem de programação C padrão, sendo mais tarde estendida para uma versão com interface RedHat Newt (toolkit para criação de sistemas orientados a menus coloridos e janelas, em modo texto). Então, a partir de agosto de 2002, a solução evoluiu para o XFwall, um front-end C++/Qt para a antiga versão fwall, que estendeu as funcionalidades deste último. NAT - Network Address Translation (Tradução de Endereços de Rede) e controle de banda foram adicionados somente na versão nomeada XFwall. Todo esse processo levou em torno de 3 (três) anos para ser completamente cumprido, já que havia restrições de tempo que impediam dedicação integral ao projeto. Considerando-se a sequência evolutiva da ferramenta, a primeira versão nasceu como um utilitário de linha de comando, o fwall, que, dependendo dos parâmetros passados, gerava scripts de firewall para a proteção da própria máquina onde rodava. No entanto, com o objetivo de tornar mais intuitiva a ferramenta, criou-se uma outra versão do software orientada a menu, onde foram adicionados recursos de janelas e menus

72 71 da biblioteca Newt da RedHat Inc, uma empresa americana líder em GNU/Linux. A partir desse ponto, a ferramenta ganhou navegação mais intuitiva por meio de janelas e menus de configuração (em modo texto), e ainda chamava-se fwall. Porém, embora a ferramenta de firewall tivesse recursos de filtragem de pacotes, duas melhorias essenciais ainda precisavam ser feitas: uma interface gráfica orientada à mouse e as funcionalidades de NAT - Network Address Translation (Tradução de Endereços de Rede), para compartilhamento de endereços IP e redirecionamento de IP e porta. Assim, a ferramenta ganhou uma interface gráfica padrão Linux/KDE, passando a chamar-se, finalmente, XFwall - Firewall Software For Linux. Após a implantação desse sistema em mais de 40 (quarenta) empresas de médio à grande porte (além da própria StarLink), dentre elas vários órgãos do governo, optou-se por liberá-la como Software Livre, sob a licença GNU General Public License (GPL), através do site de projetos Open Source, Essa liberação para o público ocorreu em julho de A partir de então, o software vem ganhando versões para várias distribuições Linux, como RedHat, Conectiva, Suse, Debian, Ubuntu, Slackware, bem como, um versão inicial do manual, nos idiomas inglês, francês e espanhol, recebendo intervenções significativas em seu código-fonte até janeiro de 2007, e pequenas atualizações apenas para acompanhar a evolução das distribuições Linux, até os dias atuais (setembro de 2011).

73 72 APÊNDICE B - TUTORIAL - BAIXANDO E COMPILANDO O CÓDIGO-FONTE DO XFWALL NO UBUNTU LINUX Ambiente: Distribuição Linux: Ubuntu Kernel: generic Origem do repositório: 1) Instalar o software de controle de versão (svn) no Ubuntu: # apt-get install subversion 2) Instalar o ambiente de desenvolvimento (leia o arquivo INSTALL para detalhes): # apt-get install libqt3-mt-dev g++ automake autoconf libnewt-dev debhelper 3) Criar diretório para cópía do repositório SVN # mkdir /svn # cd /svn 4) Fazer download do repositório do código-fonte do XFwall (checkout) svn# svn co xfwall 5) Visualizando a árvore principal de diretórios svn# tree -L 3

74 73 6) Visualizando o diretório principal svn# cd xfwall/trunk/xfwall svn/xfwall/trunk/xfwall# ls -la 7) Acessando o código-fonte svn/xfwall/trunk/xfwall# cd src svn/xfwall/trunk/xfwall/src# ls -la total 1740 drwxr-xr-x 3 root root :01. drwxr-xr-x 16 root root :04.. -rw-r--r-- 1 root root :01 caddr.cc -rw-r--r-- 1 root root :01 caddr.h -rw-r--r-- 1 root root :01 caddr_popup.cc -rw-r--r-- 1 root root :01 caddr_popup.h -rw-r--r-- 1 root root :01 cbackup.cc -rw-r--r-- 1 root root :01 cbackup.h -rw-r--r-- 1 root root :01 cblist.cc -rw-r--r-- 1 root root :01 cblist.h -rw-r--r-- 1 root root :01 cbwc.cc -rw-r--r-- 1 root root :01 cbwc.h -rw-r--r-- 1 root root :01 cconf.cc -rw-r--r-- 1 root root :01 cconf.h -rw-r--r-- 1 root root :01 cdft_iface.cc -rw-r--r-- 1 root root :01 cdft_iface.h -rw-r--r-- 1 root root :01 cdft_protocol.cc -rw-r--r-- 1 root root :01 cdft_protocol.h

75 74 -rw-r--r-- 1 root root :01 cdft_rate.cc -rw-r--r-- 1 root root :01 cdft_rate.h -rw-r--r-- 1 root root :01 cdft_urate.cc -rw-r--r-- 1 root root :01 cdft_urate.h -rw-r--r-- 1 root root :01 cdistro.cc -rw-r--r-- 1 root root :01 cdistro_desc.cc -rw-r--r-- 1 root root :01 cdistro_desc.h -rw-r--r-- 1 root root :01 cdistro.h -rw-r--r-- 1 root root :01 cfilter.cc -rw-r--r-- 1 root root :01 cfilter.h -rw-r--r-- 1 root root :01 cgroup.cc -rw-r--r-- 1 root root :01 cgroup.h -rw-r--r-- 1 root root :01 chost.cc -rw-r--r-- 1 root root :01 chost.h -rw-r--r-- 1 root root :01 cicheck.cc -rw-r--r-- 1 root root :01 cicheck.h -rw-r--r-- 1 root root :01 ciface.cc -rw-r--r-- 1 root root :01 ciface.h -rw-r--r-- 1 root root :01 clog.cc -rw-r--r-- 1 root root :01 clogconf.cc -rw-r--r-- 1 root root :01 clogconf.h -rw-r--r-- 1 root root :01 clog.h -rw-r--r-- 1 root root :01 cmodule.cc -rw-r--r-- 1 root root :01 cmodule.h -rw-r--r-- 1 root root :01 cnat.cc -rw-r--r-- 1 root root :01 cnat.h -rw-r--r-- 1 root root :01 cprofile.cc -rw-r--r-- 1 root root :01 cprofile.h -rw-r--r-- 1 root root :01 cserv.cc -rw-r--r-- 1 root root :01 cserv.h -rw-r--r-- 1 root root :01 cuser.cc -rw-r--r-- 1 root root :01 cuser.h -rw-r--r-- 1 root root :01 cutil.cc -rw-r--r-- 1 root root :01 cutil.h -rw-r--r-- 1 root root :01 declare.h -rw-r--r-- 1 root root :01 fwall_addr.c -rw-r--r-- 1 root root :01 fwall.c -rw-r--r-- 1 root root :01 fwall.h -rw-r--r-- 1 root root :01 fwall_lmon.c -rw-r--r-- 1 root root :01 fwall_lmon.h -rw-r--r-- 1 root root :01 fwall_mon.c -rw-r--r-- 1 root root :01 fwall_mon.h -rw-r--r-- 1 root root :01 icons.h -rw-r--r-- 1 root root :01 interface.c -rw-r--r-- 1 root root :01 interface.h -rw-r--r-- 1 root root :01 Makefile.am drwxr-xr-x 6 root root :11.svn -rw-r--r-- 1 root root :01 xfwall.cc -rw-r--r-- 1 root root :01 xfwall_distro.cc -rw-r--r-- 1 root root :01 xfwall_distro.h -rw-r--r-- 1 root root :01 xfwall_mon.cc 8) Gerando o script de configuração configure do ambiente svn/xfwall/trunk/xfwall/src# cd..

76 75 svn/xfwall/trunk/xfwall#./bootstrap 9) Executando o script de configuração do ambiente de compilação svn/xfwall/trunk/xfwall#./configure 10) Compilar sistema: # make 11) Instalar o XFwall compilado # make install

77 76 12) Se desejar, criar pacote Debian: # make deb 13) Listando o resultado da construção do pacote: # cd.. # ls -l

78 77 14) Instalando o pacote.deb: # dpkg -i xfwall_ _amd64.deb 15) Fazendo a execução do XFwall: # xfwall

79 78 APÊNDICE C - TUTORIAL - USO DO SOFTWARE XFWALL Cenário Neste tutorial será mostrado como usar o software XFwall para configurar uma máquina de firewall para o seguinte cenário, considerando a figura 1 (Topologia de rede segura usando o XFwall) mostrada abaixo: FIGURA 1 - Topologia de rede segura usando o XFwall Máquina de firewall interno, usada como gateway entre 3 (três) segmentos de rede IP, sendo os segmentos distribuídos da seguinte forma: segmento 2 (interface eth0) voltado para a Internet, com endereço IP , segmento 3 (interface eth2) para as estações de trabalho internas, com endereço de rede IP /24 e segmento 4 (interface eth1) somente para servidores internos da empresa, com endereço do servidor de banco dados sendo o IP Os servidores Internet terão os seguintes endereços IP: IP : Servidor POP3/SMTP; IP : Servidor DNS e Proxy HTTP, HTTPS e FTP; IP : Servidor HTTP (site da empresa).

80 79 Para a configuração acima, o firewall interno deverá implementar as seguintes regras de NAT e de filtro de pacotes: 1. Bloquear todos os acessos entrantes e saintes (técnica bloqueia tudo e libera apenas o necessário); 2. Compartilhar o endereço IP externo (eth0) (válido na Internet), da máquina de firewall interno, com as estações de trabalho (eth2), que estão usando uma faixa de endereços inválidos na Internet (de a ), através de regra de NAT por mascaramento de IP; 3. Permitir que as estações de trabalho acessem sites na Internet (HTTP e HTTPS), bem como façam downloads de arquivos via FTP. Esses acessos só deverão ser permitidos através do servidor proxy, que estará funcionando no IP , porta As estações só poderão fazer consultas ao servidor DNS da empresa no mesmo endereço do servidor proxy; 4. Permitir que as estações de trabalho somente possam enviar (SMTP) e receber s (POP3) através do servidor da empresa, no IP Os acessos a serviços de webmail já estarão liberados pela regra do item 3 acima. As regras acima não exploram todos os recursos de segurança possíveis com a topologia de rede proposta na figura 1 deste tutorial. Servem apenas para demonstrar parcialmente a interação com o software XFwall e o nível de complexidade e flexibilidade do sistema. Não é pretensão deste texto, explorar todas as potencialidades da ferramenta por exigüidade de tempo pelo que se propõe este trabalho. Porém, pode-se ter um bom ponto de partida no uso da ferramenta, a partir dos exemplos aqui demonstrados.

81 80 Executando o XFwall Considerando que o software já esteja instalado, conforme o tutorial do Apêndice B deste trabalho (Tutorial - Baixando e compilando o XFwall), execute o XFwall na linha de comando do Linux, conforme abaixo: # xfwall Você deverá ver a seguinte tela: Figura 16 - Tela principal do XFwall FIGURA 2 - Tela principal do XFwall

82 81 Configuração inicial do sistema Para podermos dar início à personalização do nosso firewall, primeiramente temos de fazer a configuração inicial do sistema, informando: A interface externa do firewall e seu endereço IP; A interface interna e seu endereço IP; A indicação se a máquina será ou não gateway. A tela de configuração inicial do sistema pode ser acessada ou através da opção Configuração / Setup / Configuração Inicial ou clicando na opção Config da barra lateral de opções, ou ainda através da tecla de atalho Ctrl-C. FIGURA 3 - Configuração inicial De acordo com o cenário proposto, a configuração inicial do sistema deverá ser feita conforme mostrado na figura acima. A indicação da máquina como gateway, significa que o kernel do Linux permitirá que os pacotes sejam repassados entre as interfaces de rede. Sem isso, nenhuma regra de NAT ou de filtro de pacotes funcionará. Este é um ponto muito importante.

83 82 Cadastrando as interfaces de rede Para que se possa cadastrar os endereços de host e de rede envolvidos nas regras, bem como as próprias regras, é necessário primeiramente cadastrar as interfaces de rede (dispositivos) envolvidos em tais regras. Para isso, acesse as seguintes opções de menu: Configuração / Personalizado / Interfaces ou use a tecla de atalho Ctrl-I. Feito isso, cadastre as interfaces conforme demonstrado na figura abaixo: FIGURA 4 - Cadastro de interfaces Observe que os nomes de dispositivos, bem como suas velocidades, são préselecionáveis. Ou seja, já fazem parte dos cadastros default do sistema. Porém, os nomes dados às interfaces são digitados pelo usuário. No entanto, não utilize espaços em branco, nem caracteres especiais, pois isso pode causar problemas no software. Procure usar nomes simples e intuitivos, conforme mostrado na figura acima.

84 83 Cadastrando os endereços IP O próximo passo é o cadastramento de todos os endereços que farão parte das regras de NAT e de filtragem de pacotes IP. Para isso, acesse as seguintes opções de menu: Configuração / Personalizado / Endereços ou use a tecla de atalho Ctrl-A. Então, cadastre os endereços envolvidos no cenário descrito anteriormente, conforme mostra a figura abaixo: FIGURA 17 - Cadastro de endereços Alguns pontos importantes devem ser observados na figura acima: Quando trata-se de um único endereço IP, o XFwall mostra um ícone de host. Quando o número IP representa uma faixa de endereços, como é o caso do /24 e do any/0, o sistema mostra um ícone de rede de computadores. Observe que quando não podemos informar um IP específico ou uma faixa de IPs, usa-se any/0, significando qualquer IP com qualquer máscara de rede; Observe que a coluna Tipo só aceita o valor ip na versão atual do XFwall, que é a versão A outra opção seria mac (endereço físico da interface de rede), mas este recurso ainda não está disponível no sistema;

85 84 Observe que houve coincidência de nomes de interface de rede com nomes de endereços, como foi o caso de Estacoes e Internet. Isso não é problema, pois trata-se de campos distintos; Observe que o endereço IpExterno, na coluna Local, foi marcado com um ícone na cor verde (verdadeiro), indicando que o IP é um endereço IP atribuído à interface eth0 da própria máquina de firewall (por isso a indicação Local = verdadeiro). Sem isso, as regras de NAT por mascaramento, para compartilhamento do IP com a rede interna não serão geradas corretamente, resultando em bloqueio de todos os acessos da rede interna, não importando que regras de filtro tenham sido definidas.

86 85 Visualizando a tabela de serviços Embora, para o exemplo aqui proposto, não precisemos cadastrar nenhum serviço novo que já não faça parte da tabela default de serviços do sistema, mostramos abaixo a referida tabela: FIGURA 6 - Cadastro de serviços de rede Para visualizar o cadastro de serviços acima, acesse as seguintes opções de menu: Configuração / Personalizado / Serviços ou use a tecla de atalho Ctrl-S. A tabela de serviços de rede do XFwall já vem pré-configurada com a maioria dos serviços mais comuns, como navegação em páginas Internet (http e https), download de arquivos via FTP ativo e passivo (ftp_data, ftp_ctrl e ftp_pasv), consultas simples a servidores DNS (dns_query), transferência de zonas DNS (dns_xfer), repasse de consultas entre servidores DNS (dns2dns), MSN (msn), envio e recebimento de s (smtp e pop-3), servidor proxy SQUID (squid), e vários outros. Observe, ainda, que cada serviço default do sistema, na primeira coluna, vem com um ícone circular cuja cor dá uma idéia de quão perigoso o serviço pode ser. Assim, temos a cor verde para serviços mais seguros (https, por exemplo), a cor amarela para serviços

87 86 que devem ser usados com cuidado (http e smtp, por exemplo) e a cor vermelha para serviços normalmente perigosos (ftp_data, ftp_ctrl e ftp_pasv, por exemplo). Também pode ocorrer (e isso de fato é normal que ocorra) de ser necessário criar um serviço novo nessa tabela, como por exemplo um serviço para transmissão das declarações anuais de Imposto de Renda para a Receita Federal. Neste caso, normalmente a Receita Federal disponibiliza em seu site as informações necessárias para a configuração do firewall.

88 87 Cadastrando a regra de NAT Após termos cadastrado todas as interfaces de rede e todos os endereços IP de host e de rede, já podemos partir para o cadastramento das regras de NAT e de filtro. Agora, vamos definir a única regra de NAT necessária para o nosso cenário, conforme especificado anteriormente. Para isso, clique na opção NAT na barra lateral de opções do sistema e cadastre a regra, conforme mostrado na figura abaixo: FIGURA 18 - Regra de NAT por mascaramento de IP A regra de NAT acima define que as estações de trabalho da rede interna, cujos endereços IP são inválidos na Internet ( /24), ao cruzarem a máquina de firewall interno, recebam o endereço IP da placa externa (eth0) do firewall (IP ). Ou seja, todas as estações de trabalho serão mascaradas com o endereço IP externo do firewall. Isso apresenta duas vantagens: Qualquer número de estações de trabalho poderá compartilhar um único endereço IP válido na Internet e navegar sem problemas. Isso economiza IP ou viabiliza o uso de IPs escassos por um grande número de computadores; Como as estações estarão escondidas atrás do endereço válido (mascaramento de IP), isso dificulta um ataque direto às estações de trabalho da rede interna, já que o atacante não sabe qual o endereço real e,mesmo que saiba, não conseguirá rotear pacotes para os IPs inválidos da rede interna. Ou seja, temos aqui uma proteção básica contra ataques diretos vindos da Internet,

89 88 embora isso não substitua a proteção por filtro de pacotes, que será implementado no passo seguinte. Observe que cada linha de regra pode ser ativada ou desativada, através da coluna Estado, sem a necessidade de excluir e re-incluir regras.

90 89 Cadastrando as regras de filtro As regras de filtro de pacotes geralmente são conhecidas como regras de firewall. São essas regras que efetivamente bloqueiam ou permitem os acessos. As regras de NAT apenas convertem determinados endereços IP em outros (mascaramento ou SNAT) ou fazem o redirecionamento de IPs e portas (DNAT). Para cadastrar as regras de filtro de pacotes, clique na opção Filtro na barra lateral de opções do sistema e cadastre as regras, conforme mostrado na figura abaixo: FIGURA 8 - Regras de filtragem de pacotes IP Observe que com apenas duas linhas de regra de filtro conseguimos cumprir o que foi determinado no cenário anteriormente definido, pois (regra 0001) as estações de trabalho terão que cadastrar o endereço do proxy e sua porta ( :3128) em seus navegadores Internet (browsers) para conseguirem navegar pela Internet e baixar arquivos por FTP via browser. Também, a regra 0001 determina que somente o servidor DNS (mesmo endereço do proxy) poderá ser usado para consultar nomes de domínio Internet. A regra 0002 determina que as estações de trabalho só conseguirão usar os serviços SMTP e POP-3 (envio e recebimento de s, respectivamente) do servidor Envio e recebimento de s via webmail está liberado através da regra 0001 pelo proxy.

91 90 Observe que cada linha de regra pode ser ativada ou desativada, através da coluna Estado, sem a necessidade de excluir e re-incluir regras.

92 91 Gerando o script de firewall Agora, finalmente, podemos gerar nosso script de firewall. Para tanto, basta clicar na opção Refazer, na barra lateral de opções do sistema. Com isso, nosso firewall está pronto para ser ativado. A tela abaixo confirma que o script foi gerado com sucesso. FIGURA 9 - Geração do script de firewall Observe que logo após você comandar a geração do script de firewall, é mostrada a janela de status de comando do sistema, conforme mostrado abaixo: FIGURA 10 - Estado dos comandos A figura 10 mostra não apenas que o script de firewall foi gerado, mas também que o script foi registrado como serviço para inicialização automática pelo Linux, no momento do boot da máquina de firewall.

93 92 Visualizando o script gerado A figura abaixo mostra um pequeno trecho do script de firewall gerado pelo sistema (apenas a regra de filtragem 0001). Para analisá-la, é necessário ter conhecimento de iptables do Linux. O acesso à visualização do script pode ser feito através da opção Controle / Script de Firewall ou pela tecla de atalho Ctrl-Alt-P. Figura 20 - Trecho do script de firewall gerado FIGURA 11 - Trecho do script de firewall gerado Observe que o XFwall coloca uma legenda no módulo de script, visando facilitar a localização visual do trecho de interesse: # Rule: 0001 Estacoes -> DnsProxyServer ( dns_query squid) ACCEPT O trecho acima pode ser lido assim: quando as Estações se dirigirem ao servidor DnsProxyServer, na portas (serviços de rede) dns_quey e squid, aceite e libere o acesso.

94 93 Ativando o firewall Neste ponto, podemos finalmente ativar o firewall com todas as suas proteções default, acrescentado com nossas regras personalizadas. Para isso, basta clicar na opção Executar na barra lateral de opções do sistema. Com isso, nosso firewall será imediatamente ativado. A tela abaixo confirma o sucesso da ativação: FIGURA 12 - Ativação do firewall O script de firewall também pode ser ativado através no pronto de comando do Linux, conforme mostrado abaixo: # fwall -R

95 94 Desativando o firewall Para desativar o firewall, basta clicar na opção Parar na barra lateral de opções do sistema. Com isso, nosso firewall será imediatamente desativado. A tela abaixo confirma o sucesso da desativação: FIGURA 13 - Desativação do firewall O script de firewall também pode ser desativado através no pronto de comando do Linux, conforme mostrado abaixo: # fwall -S

96 95 Monitorando o estado do firewall Para verificar o estado do firewall, basta clicar na opção Estado na barra lateral de opções do sistema. Quando o firewall estiver ativado, a seguinte tela aparecerá: FIGURA 14 - Firewall desativado Observe que você tem a opção de parar a atualização dinâmica da janela que mostra as regras ativas, com o objetivo de inspecionar cada linha de regra, usando para isso a barra de rolagem na lateral direita.

97 96 Quando o firewall estiver desativado, a seguinte tela aparecerá: FIGURA 15 - Firewall desativado Observe que você tem a opção de parar a atualização dinâmica da janela que mostra as regras ativas, com o objetivo de inspecionar cada linha de regra, usando para isso a barra de rolagem na lateral direita. Neste caso, essa opção faz sentido porque algum outro processo no sistema poderia ativar o firewall novamente e, caso a atualização estivesse parada, você continuaria vendo como se o firewall estivesse desativado, o que não seria verdadeiro. Para evitar isso, mantenha a atualização dinâmica sempre ativa.

98 97 Outras opções O software XFwall tem várias outras opções não exploradas neste tutorial básico de uso do sistema. Porém, não é pretensão deste trabalho, se aprofundar em todas as complexidades do software. No entanto, o que foi visto até este ponto já permite que um bom administrador de sistemas, com um bom conhecimento sobre firewalls em plataforma GNU/Linux, perceba as funcionalidades e facilidades do XFwall, como um software para uso corporativo, em empresas de médio e grande portes. Contudo, para proporcionar uma visão um pouco mais além do básico, a seguir passamos a mostrar algumas telas de configuração do sistema.

99 98 Seleção de distribuição Linux O software XFwall faz a detecção automática do perfil de distribuição Linux durante a primeira execução do sistema. Porém, você pode verificar o perfil de distribuição selecionado e alterá-lo, se desejar. Para tal, acesse a opção Configuração / Perfil, aba Linux Distro, ou use a tecla de atalho Ctrl-P. FIGURA 16 - Seleção de distribuição Linux

100 99 Perfil da máquina O XFwall permite selecionar uma lista de itens de perfil da máquina, além de permitir ativar e desativar funcionalidades, como: Comandos de usuário; LAN como zona desmilitarizada (LAN DMZ); Lista negra de endereços IP. Regras de NAT; Regras de filtro; Regras de controle de banda (CBQ). Execução do script de firewall como serviço da máquina, no momento do boot do sistema operacional. Para tal, acesse a opção Configuração / Perfil, aba Perfil da Máquina, ou use a tecla de atalho Ctrl-P. FIGURA 17 - Perfil da máquina

101 100 Módulos do sistema O software XFwall permite a criação, edição, apagamento e cópia de cada módulo do sistema (trechos de script que farão parte do script de firewall final). Para essa funcionalidade, acesse a opção Configuração / Perfil, aba Módulos, ou use a tecla de atalho Ctrl-P. FIGURA 18 - Módulos do sistema

102 101 Embora não seja algo aconselhável de ser feito, a tela abaixo mostra a edição do módulo pop_client selecionado na tela anterior. O módulo abaixo refere-se ao cliente padrão do sistema para a funcionalidade de cliente POP-3 (recebimento de ). Este é o tipo de módulo iptables para uso quando a máquina é uma estação de trabalho Linux, usando o XFwall como firewall para proteção da própria estação. Ou seja, a máquina normalmente não tem várias interfaces de rede e, portanto, não é um gateway. Este é um caso específico que não foi abordado neste tutorial. FIGURA 19 - Edição do módulo pop_client

Segurança de redes com Linux. Everson Scherrer Borges Willen Borges de Deus

Segurança de redes com Linux. Everson Scherrer Borges Willen Borges de Deus Segurança de redes com Linux Everson Scherrer Borges Willen Borges de Deus Segurança de Redes com Linux Protocolo TCP/UDP Portas Endereçamento IP Firewall Objetivos Firewall Tipos de Firewall Iptables

Leia mais

CONCEITOS INICIAIS. Agenda A diferença entre páginas Web, Home Page e apresentação Web;

CONCEITOS INICIAIS. Agenda A diferença entre páginas Web, Home Page e apresentação Web; CONCEITOS INICIAIS Agenda A diferença entre páginas Web, Home Page e apresentação Web; O que é necessário para se criar páginas para a Web; Navegadores; O que é site, Host, Provedor e Servidor Web; Protocolos.

Leia mais

Entendendo como funciona o NAT

Entendendo como funciona o NAT Entendendo como funciona o NAT Vamos inicialmente entender exatamente qual a função do NAT e em que situações ele é indicado. O NAT surgiu como uma alternativa real para o problema de falta de endereços

Leia mais

Organização do Curso. Instalação e Configuração. Módulo II. Pós Graduação em Projeto e Gerencia de Redes de Computadores

Organização do Curso. Instalação e Configuração. Módulo II. Pós Graduação em Projeto e Gerencia de Redes de Computadores 1 Pós Graduação em Projeto e Gerencia de Redes de Computadores Sistemas Operacionais de Redes I - Linux Prof.: Nelson Monnerat Instalação e Configuração 1 Sistemas Operacionais de Redes I - Linux Módulo

Leia mais

MANUAL C R M ÍNDICE. Sobre o módulo de CRM... 2. 1 Definindo a Campanha... 3

MANUAL C R M ÍNDICE. Sobre o módulo de CRM... 2. 1 Definindo a Campanha... 3 ÍNDICE Sobre o módulo de CRM... 2 1 Definindo a Campanha... 3 1.1 Incluir uma campanha... 3 1.2 Alterar uma campanha... 4 1.3 Excluir... 4 1.4 Procurar... 4 2 Definindo os clientes para a campanha... 4

Leia mais

11 - Q34826 ( FCC - 2010 - DPE - SP - Oficial de Defensoria Pública / Noções de Informática / Internet e intranet; )

11 - Q34826 ( FCC - 2010 - DPE - SP - Oficial de Defensoria Pública / Noções de Informática / Internet e intranet; ) 11 - Q34826 ( FCC - 2010 - DPE - SP - Oficial de Defensoria Pública / Noções de Informática / Internet e intranet; ) Algumas Regras Gerais de Uso do Computador I. Sempre feche todas as aplicações abertas

Leia mais

DarkStat para BrazilFW

DarkStat para BrazilFW DarkStat para BrazilFW ÍNDICE Índice Página 1 O que é o DarkStat Página 2 DarkStat e a inicialização do sistema Página 2 DarkStat e a finalização do sistema Página 2 Tela Principal do DarkStat Página 3

Leia mais

Faculdade de Tecnologia SENAC Goiás. Disciplina: Gerenciamento de Rede de Computadores. Goiânia, 16 de novembro de 2014.

Faculdade de Tecnologia SENAC Goiás. Disciplina: Gerenciamento de Rede de Computadores. Goiânia, 16 de novembro de 2014. Faculdade de Tecnologia SENAC Goiás Disciplina: Gerenciamento de Rede de Computadores : Goiânia, 16 de novembro de 2014. Faculdade de Tecnologia SENAC Goiás Professor: Marissol Martins Alunos: Edy Laus,

Leia mais

REDES DE COMPUTADORES

REDES DE COMPUTADORES REDES DE COMPUTADORES 09/2013 Cap.3 Protocolo TCP e a Camada de Transporte 2 Esclarecimentos Esse material é de apoio para as aulas da disciplina e não substitui a leitura da bibliografia básica. Os professores

Leia mais

ALTERNATIVA PARA CONEXÃO VIA INTERNET DE IP MASCARADO A IP REAL

ALTERNATIVA PARA CONEXÃO VIA INTERNET DE IP MASCARADO A IP REAL Documento: Tutorial Autor: Iuri Sonego Cardoso Data: 27/05/2005 E-mail: iuri@scripthome.cjb.net Home Page: http://www.scripthome.cjb.net ALTERNATIVA PARA CONEXÃO VIA INTERNET DE IP MASCARADO A IP REAL

Leia mais

Procedimentos para Reinstalação do Sisloc

Procedimentos para Reinstalação do Sisloc Procedimentos para Reinstalação do Sisloc Sumário: 1. Informações Gerais... 3 2. Criação de backups importantes... 3 3. Reinstalação do Sisloc... 4 Passo a passo... 4 4. Instalação da base de dados Sisloc...

Leia mais

Engenharia de Requisitos Estudo de Caso

Engenharia de Requisitos Estudo de Caso Engenharia de Requisitos Estudo de Caso Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / Ian Sommerville 2007 Slide 1 Engenharia de Requisitos Exemplo 1 Reserva de Hotel 1. INTRODUÇÃO Este

Leia mais

IP significa Internet Protocol. A Internet é uma rede, e assim como ocorre em qualquer tipo de rede, os seus nós (computadores, impressoras, etc.

IP significa Internet Protocol. A Internet é uma rede, e assim como ocorre em qualquer tipo de rede, os seus nós (computadores, impressoras, etc. Endereços IP Endereços IP IP significa Internet Protocol. A Internet é uma rede, e assim como ocorre em qualquer tipo de rede, os seus nós (computadores, impressoras, etc.) precisam ter endereços. Graças

Leia mais

CONTRA CONTROLE DE ACESSOS E MODULARIZADOR DE SISTEMAS

CONTRA CONTROLE DE ACESSOS E MODULARIZADOR DE SISTEMAS MINISTÉRIO DO DESENVOLVIMENTO AGRÁRIO SUBSECRETARIA DE PLANEJAMENTO, ORÇAMENTO E ADMINISTRAÇÃO COORDENAÇÃO-GERAL DE MODERNIZAÇÃO E INFORMÁTICA CONTRA CONTROLE DE ACESSOS E MODULARIZADOR DE SISTEMAS MANUAL

Leia mais

http://aurelio.net/vim/vim-basico.txt Entrar neste site/arquivo e estudar esse aplicativo Prof. Ricardo César de Carvalho

http://aurelio.net/vim/vim-basico.txt Entrar neste site/arquivo e estudar esse aplicativo Prof. Ricardo César de Carvalho vi http://aurelio.net/vim/vim-basico.txt Entrar neste site/arquivo e estudar esse aplicativo Administração de Redes de Computadores Resumo de Serviços em Rede Linux Controlador de Domínio Servidor DNS

Leia mais

GUIA INTEGRA SERVICES E STATUS MONITOR

GUIA INTEGRA SERVICES E STATUS MONITOR GUIA INTEGRA SERVICES E STATUS MONITOR 1 - Integra Services Atenção: o Integra Services está disponível a partir da versão 2.0 do software Urano Integra. O Integra Services é um aplicativo que faz parte

Leia mais

Atualizado em 9 de outubro de 2007

Atualizado em 9 de outubro de 2007 2 Nettion R Copyright 2007 by Nettion Information Security. Este material pode ser livremente reproduzido, desde que mantidas as notas de copyright e o seu conteúdo original. Envie críticas e sugestões

Leia mais

Aplicativo da Manifestação do Destinatário. Manual

Aplicativo da Manifestação do Destinatário. Manual Aplicativo da Manifestação do Destinatário Manual Novembro de 2012 1 Sumário 1 Aplicativo de Manifestação do Destinatário...4 2 Iniciando o aplicativo...4 3 Menus...5 3.1 Manifestação Destinatário...5

Leia mais

Firewall. Professor: João Paulo de Brito Gonçalves Disciplina: Serviços de Redes. Campus Cachoeiro Curso Técnico em Informática

Firewall. Professor: João Paulo de Brito Gonçalves Disciplina: Serviços de Redes. Campus Cachoeiro Curso Técnico em Informática Firewall Professor: João Paulo de Brito Gonçalves Disciplina: Serviços de Redes Campus Cachoeiro Curso Técnico em Informática Firewall (definições) Por que do nome firewall? Antigamente, quando as casas

Leia mais

USO GERAL DOS PROTOCOLOS SMTP, FTP, TCP, UDP E IP

USO GERAL DOS PROTOCOLOS SMTP, FTP, TCP, UDP E IP USO GERAL DOS PROTOCOLOS SMTP, FTP, TCP, UDP E IP SMTP "Protocolo de transferência de correio simples (ou em inglês Simple Mail Transfer Protocol ) é o protocolo padrão para envio de e- mails através da

Leia mais

LICENCIAMENTO V14 USANDO REPRISE LICENSE MANAGER

LICENCIAMENTO V14 USANDO REPRISE LICENSE MANAGER LICENCIAMENTO V14 USANDO REPRISE LICENSE MANAGER V14 de BricsCAD vem com um novo sistema de licenciamento, com base na tecnologia de licenciamento de Reprise Software. Este novo sistema oferece um ambiente

Leia mais

Firewall. Alunos: Hélio Cândido Andersson Sales

Firewall. Alunos: Hélio Cândido Andersson Sales Firewall Alunos: Hélio Cândido Andersson Sales O que é Firewall? Firewall pode ser definido como uma barreira de proteção, que controla o tráfego de dados entre seu computador e a Internet (ou entre a

Leia mais

CONFIGURAÇÃO DE REDE SISTEMA IDEAGRI - FAQ CONCEITOS GERAIS

CONFIGURAÇÃO DE REDE SISTEMA IDEAGRI - FAQ CONCEITOS GERAIS CONFIGURAÇÃO DE REDE SISTEMA IDEAGRI - FAQ CONCEITOS GERAIS Servidor: O servidor é todo computador no qual um banco de dados ou um programa (aplicação) está instalado e será COMPARTILHADO para outros computadores,

Leia mais

Senha Admin. Nessa tela, você poderá trocar a senha do administrador para obter acesso ao NSControl. Inicialização

Senha Admin. Nessa tela, você poderá trocar a senha do administrador para obter acesso ao NSControl. Inicialização Manual do Nscontrol Principal Senha Admin Nessa tela, você poderá trocar a senha do administrador para obter acesso ao NSControl. Inicialização Aqui, você poderá selecionar quais programas você quer que

Leia mais

Administração do Windows Server 2003

Administração do Windows Server 2003 Administração do Windows Server 2003 Visão geral O Centro de Ajuda e Suporte do Windows 2003 Tarefas do administrador Ferramentas administrativas Centro de Ajuda e Suporte do 2003 Usando o recurso de pesquisa

Leia mais

Despachante Express - Software para o despachante documentalista veicular DESPACHANTE EXPRESS MANUAL DO USUÁRIO VERSÃO 1.1

Despachante Express - Software para o despachante documentalista veicular DESPACHANTE EXPRESS MANUAL DO USUÁRIO VERSÃO 1.1 DESPACHANTE EXPRESS MANUAL DO USUÁRIO VERSÃO 1.1 1 Sumário 1 - Instalação Normal do Despachante Express... 3 2 - Instalação do Despachante Express em Rede... 5 3 - Registrando o Despachante Express...

Leia mais

Configurando o DDNS Management System

Configurando o DDNS Management System Configurando o DDNS Management System Solução 1: Com o desenvolvimento de sistemas de vigilância, cada vez mais usuários querem usar a conexão ADSL para realizar vigilância de vídeo através da rede. Porém

Leia mais

Protocolo. O que é um protocolo? Humano: que horas são? eu tenho uma pergunta

Protocolo. O que é um protocolo? Humano: que horas são? eu tenho uma pergunta Protocolo O que é um protocolo? Humano: que horas são? eu tenho uma pergunta Máquina: Definem os formatos, a ordem das mensagens enviadas e recebidas pelas entidades de rede e as ações a serem tomadas

Leia mais

SAD Gestor Gerenciador de Backup

SAD Gestor Gerenciador de Backup SAD Gestor Gerenciador de Backup treinamento@worksoft.inf.br SAD Gestor Gerenciador de Backup SAD Gerenciador de Backup Esse aplicativo foi desenvolvido para realizar cópias compactadas de bancos de dados

Leia mais

CSAU 10.0. Guia: Manual do CSAU 10.0 como implementar e utilizar.

CSAU 10.0. Guia: Manual do CSAU 10.0 como implementar e utilizar. CSAU 10.0 Guia: Manual do CSAU 10.0 como implementar e utilizar. Data do Documento: Janeiro de 2012 Sumário 1. Sobre o manual do CSAU... 3 2. Interface do CSAU 10.0... 4 2.1. Início... 4 2.2. Update...

Leia mais

Sistema Operacional Unidade 12 Comandos de Rede e Acesso Remoto

Sistema Operacional Unidade 12 Comandos de Rede e Acesso Remoto Sistema Operacional Unidade 12 Comandos de Rede e Acesso Remoto Curso Técnico em Informática SUMÁRIO INTRODUÇÃO... 3 Protocolo de rede... 3 Protocolo TCP/IP... 3 Máscara de sub-rede... 3 Hostname... 3

Leia mais

Feature-Driven Development

Feature-Driven Development FDD Feature-Driven Development Descrição dos Processos Requisitos Concepção e Planejamento Mais forma que conteúdo Desenvolver um Modelo Abrangente Construir a Lista de Features Planejar por

Leia mais

Intranets. FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO

Intranets. FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO Intranets FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO As intranets são redes internas às organizações que usam as tecnologias utilizadas na rede mundial

Leia mais

Índice. Manual Backup Online. 03 Capítulo 1: Visão Geral

Índice. Manual Backup Online. 03 Capítulo 1: Visão Geral Índice 03 Capítulo 1: Visão Geral 04 Capítulo 2: Conta de Usuário 04 Criação 08 Edição 09 Grupo de Usuários 10 Informações da Conta 12 Capítulo 3: Download do Backup Online Embratel 16 Capítulo 4: Cópia

Leia mais

Comm5 Tecnologia Manual de utilização da família MI. Manual de Utilização. Família MI

Comm5 Tecnologia Manual de utilização da família MI. Manual de Utilização. Família MI Manual de Utilização Família MI ÍNDICE 1.0 COMO LIGAR O MÓDULO... pág 03 e 04 2.0 OBJETIVO... pág 05 3.0 COMO CONFIGURAR O MÓDULO MI... pág 06, 07, 08 e 09 4.0 COMO TESTAR A REDE... pág 10 5.0 COMO CONFIGURAR

Leia mais

www.neteye.com.br NetEye Guia de Instalação

www.neteye.com.br NetEye Guia de Instalação www.neteye.com.br NetEye Guia de Instalação Índice 1. Introdução... 3 2. Funcionamento básico dos componentes do NetEye...... 3 3. Requisitos mínimos para a instalação dos componentes do NetEye... 4 4.

Leia mais

Capítulo 9 - Conjunto de Protocolos TCP/IP e Endereçamento. Associação dos Instrutores NetAcademy - Julho de 2007 - Página

Capítulo 9 - Conjunto de Protocolos TCP/IP e Endereçamento. Associação dos Instrutores NetAcademy - Julho de 2007 - Página Capítulo 9 - Conjunto de Protocolos TCP/IP e Endereçamento IP 1 História e Futuro do TCP/IP O modelo de referência TCP/IP foi desenvolvido pelo Departamento de Defesa dos Estados Unidos (DoD). O DoD exigia

Leia mais

Na Figura a seguir apresento um exemplo de uma "mini-tabela" de roteamento:

Na Figura a seguir apresento um exemplo de uma mini-tabela de roteamento: Tutorial de TCP/IP - Parte 6 - Tabelas de Roteamento Por Júlio Cesar Fabris Battisti Introdução Esta é a sexta parte do Tutorial de TCP/IP. Na Parte 1 tratei dos aspectos básicos do protocolo TCP/IP. Na

Leia mais

Tópicos. Atualizações e segurança do sistema. Manutenção Preventiva e Corretiva de Software (utilizando o MS Windows XP)

Tópicos. Atualizações e segurança do sistema. Manutenção Preventiva e Corretiva de Software (utilizando o MS Windows XP) teste 1 Manutenção Preventiva e Corretiva de Software (utilizando o MS Windows XP) Rafael Fernando Diorio www.diorio.com.br Tópicos - Atualizações e segurança do sistema - Gerenciamento do computador -

Leia mais

Engenharia de Software III

Engenharia de Software III Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf (flavio.ceci@unisul.br) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,

Leia mais

Para funcionamento do Netz, alguns programas devem ser instalados e alguns procedimentos devem ser seguidos. São eles:

Para funcionamento do Netz, alguns programas devem ser instalados e alguns procedimentos devem ser seguidos. São eles: Instalação do Netz Para funcionamento do Netz, alguns programas devem ser instalados e alguns procedimentos devem ser seguidos. São eles: Instalação do Java SE 6, que pode ser instalado através da JDK.

Leia mais

FIREWALL. Prof. Fabio de Jesus Souza. fabiojsouza@gmail.com. Professor Fabio Souza

FIREWALL. Prof. Fabio de Jesus Souza. fabiojsouza@gmail.com. Professor Fabio Souza FIREWALL Prof. Fabio de Jesus Souza fabiojsouza@gmail.com Professor Fabio Souza O que são Firewalls? Os firewalls são sistemas de segurança que podem ser baseados em: um único elemento de hardware; um

Leia mais

Menu Utilitários. Atualização do Banco de Dados Atualização e organização dos arquivos existentes

Menu Utilitários. Atualização do Banco de Dados Atualização e organização dos arquivos existentes Atualização do Banco de Dados Atualização e organização dos arquivos existentes Rotina responsável pelo rastreamento de possíveis arquivos não indexados, danificados ou inexistentes. Este processo poderá

Leia mais

Controlando o tráfego de saída no firewall Netdeep

Controlando o tráfego de saída no firewall Netdeep Controlando o tráfego de saída no firewall Netdeep 1. Introdução Firewall é um quesito de segurança com cada vez mais importância no mundo da computação. À medida que o uso de informações e sistemas é

Leia mais

Sistema de Instalação e Criação da Estrutura do Banco de Dados MANUAL DO INSTALADOR. Julho/2007. Ministério da saúde

Sistema de Instalação e Criação da Estrutura do Banco de Dados MANUAL DO INSTALADOR. Julho/2007. Ministério da saúde Sistema de Instalação e Criação da Estrutura do Banco de Dados MANUAL DO INSTALADOR Julho/2007 Ministério da saúde SUMÁRIO Módulo 1. Instalação... 4 Introdução... 4 Configurações de equipamentos para instalação

Leia mais

Satélite. Manual de instalação e configuração. CENPECT Informática www.cenpect.com.br cenpect@cenpect.com.br

Satélite. Manual de instalação e configuração. CENPECT Informática www.cenpect.com.br cenpect@cenpect.com.br Satélite Manual de instalação e configuração CENPECT Informática www.cenpect.com.br cenpect@cenpect.com.br Índice Índice 1.Informações gerais 1.1.Sobre este manual 1.2.Visão geral do sistema 1.3.História

Leia mais

FTIN Formação Técnica em Informática Módulo de Administração de Servidores de Rede AULA 02. Prof. Gabriel Silva

FTIN Formação Técnica em Informática Módulo de Administração de Servidores de Rede AULA 02. Prof. Gabriel Silva FTIN Formação Técnica em Informática Módulo de Administração de Servidores de Rede AULA 02 Prof. Gabriel Silva Temas da Aula de Hoje: Revisão da Aula 1. Redes LAN e WAN. Aprofundamento nos Serviços de

Leia mais

Manual AGENDA DE BACKUP

Manual AGENDA DE BACKUP Gemelo Backup Online DESKTOP Manual AGENDA DE BACKUP Realiza seus backups de maneira automática. Você só programa os dias e horas em que serão efetuados. A única coisa que você deve fazer é manter seu

Leia mais

TRABALHO DE DIPLOMAÇÃO Regime Modular ORIENTAÇÕES SOBRE O ROTEIRO DO PROJETO FINAL DE SISTEMAS DE INFORMAÇÕES

TRABALHO DE DIPLOMAÇÃO Regime Modular ORIENTAÇÕES SOBRE O ROTEIRO DO PROJETO FINAL DE SISTEMAS DE INFORMAÇÕES TRABALHO DE DIPLOMAÇÃO Regime Modular ORIENTAÇÕES SOBRE O ROTEIRO DO PROJETO FINAL DE SISTEMAS DE INFORMAÇÕES [Observação: O template a seguir é utilizado como roteiro para projeto de sistemas orientado

Leia mais

Histórico de Revisão Data Versão Descrição Autor

Histórico de Revisão Data Versão Descrição Autor H6Projetos Documento de Requisitos Versão 1.3 Histórico de Revisão Data Versão Descrição Autor 05/09/2013 1.0 Preenchimento do Capítulo 2 Requisitos Funcionais Evilson Montenegro 26/09/2013 1.1 Preenchimento

Leia mais

Online Help StruxureWare Data Center Expert

Online Help StruxureWare Data Center Expert Online Help StruxureWare Data Center Expert Version 7.2.7 Appliance virtual do StruxureWare Data Center Expert O servidor do StruxureWare Data Center Expert 7.2 está agora disponível como um appliance

Leia mais

MÓDULO 7 Modelo OSI. 7.1 Serviços Versus Protocolos

MÓDULO 7 Modelo OSI. 7.1 Serviços Versus Protocolos MÓDULO 7 Modelo OSI A maioria das redes são organizadas como pilhas ou níveis de camadas, umas sobre as outras, sendo feito com o intuito de reduzir a complexidade do projeto da rede. O objetivo de cada

Leia mais

Manual SAGe Versão 1.2 (a partir da versão 12.08.01)

Manual SAGe Versão 1.2 (a partir da versão 12.08.01) Manual SAGe Versão 1.2 (a partir da versão 12.08.01) Submissão de Relatórios Científicos Sumário Introdução... 2 Elaboração do Relatório Científico... 3 Submissão do Relatório Científico... 14 Operação

Leia mais

ArpPrintServer. Sistema de Gerenciamento de Impressão By Netsource www.netsource.com.br Rev: 02

ArpPrintServer. Sistema de Gerenciamento de Impressão By Netsource www.netsource.com.br Rev: 02 ArpPrintServer Sistema de Gerenciamento de Impressão By Netsource www.netsource.com.br Rev: 02 1 Sumário INTRODUÇÃO... 3 CARACTERÍSTICAS PRINCIPAIS DO SISTEMA... 3 REQUISITOS DE SISTEMA... 4 INSTALAÇÃO

Leia mais

Manual de Instalação, Administração e Uso do Sistema Elétric

Manual de Instalação, Administração e Uso do Sistema Elétric Manual de Instalação, Administração e Uso do Sistema Elétric Versão 1.0 Autores Bruna Cirqueira Mariane Dantas Milton Alves Robson Prioli Nova Odessa, 10 de Setembro de 2013 Sumário Apoio 1. Licença deste

Leia mais

Atualizaça o do Maker

Atualizaça o do Maker Atualizaça o do Maker Prezados Clientes, Nós da Playlist Software Solutions empresa líder de mercado no desenvolvimento de software para automação de rádios - primamos pela qualidade de nossos produtos,

Leia mais

Configurando o IIS no Server 2003

Configurando o IIS no Server 2003 2003 Ser ver Enterprise Objetivo Ao término, você será capaz de: 1. Instalar e configurar um site usando o IIS 6.0 Configurando o IIS no Server 2003 Instalando e configurando o IIS 6.0 O IIS 6 é o aplicativo

Leia mais

Lógica de Programação

Lógica de Programação Lógica de Programação Softblue Logic IDE Guia de Instalação www.softblue.com.br Sumário 1 O Ensino da Lógica de Programação... 1 2 A Ferramenta... 1 3 Funcionalidades... 2 4 Instalação... 3 4.1 Windows...

Leia mais

Como instalar Windows XP

Como instalar Windows XP Como instalar Windows XP 1 Como instalar Windows XP Existem 2 opções para instalar XP: Opção A: para micro novo sem Sistema Operacional instalado (Exemplo de sistema operacional:windows 98, Windows 2000,

Leia mais

Considerações a serem feitas antes da implantação.

Considerações a serem feitas antes da implantação. Multi-Loja Objetivo O objetivo deste documento é demonstrar o conceito de Multi-loja utilizando o Sismoura. É uma ferramenta que permite a comunicação entre as empresas, possibilitando assim que a matriz

Leia mais

Módulo 1 Configuração de Cursos. Robson Santos da Silva Ms.

Módulo 1 Configuração de Cursos. Robson Santos da Silva Ms. Módulo 1 Configuração de Cursos Robson Santos da Silva Ms. Olá! Estamos iniciando o Módulo 1. Nele, aprenderemos a configurar um novo curso no MOODLE. Além disso, identificaremos os dispositivos e ferramentas

Leia mais

OCOMON PRIMEIROS PASSOS

OCOMON PRIMEIROS PASSOS OCOMON PRIMEIROS PASSOS O OCOMON ainda não possui um arquivo de Help para atender a todas questões relacionadas ao sistema. Esse arquivo serve apenas para dar as principais instruções para que você tenha

Leia mais

Rede d s d e d Com o pu p t u ado d r o es Conceitos Básicos M d o e d los o de d Re R de d s:

Rede d s d e d Com o pu p t u ado d r o es Conceitos Básicos M d o e d los o de d Re R de d s: Tecnologia em Redes de Computadores Redes de Computadores Professor: André Sobral e-mail: alsobral@gmail.com Conceitos Básicos Modelos de Redes: O O conceito de camada é utilizado para descrever como ocorre

Leia mais

Redes de Computadores. Protocolos de comunicação: TCP, UDP

Redes de Computadores. Protocolos de comunicação: TCP, UDP Redes de Computadores Protocolos de comunicação: TCP, UDP Introdução ao TCP/IP Transmission Control Protocol/ Internet Protocol (TCP/IP) é um conjunto de protocolos de comunicação utilizados para a troca

Leia mais

Características de Firewalls

Características de Firewalls Firewall Firewall é um sistema de proteção de redes internas contra acessos não autorizados originados de uma rede não confiável (Internet), ao mesmo tempo que permite o acesso controlado da rede interna

Leia mais

1 REQUISITOS BÁSICOS PARA INSTALAR O SMS PC REMOTO

1 REQUISITOS BÁSICOS PARA INSTALAR O SMS PC REMOTO 1 ÍNDICE 1 REQUISITOS BÁSICOS PARA INSTALAR O SMS PC REMOTO... 3 1.1 REQUISITOS BASICOS DE SOFTWARE... 3 1.2 REQUISITOS BASICOS DE HARDWARE... 3 2 EXECUTANDO O INSTALADOR... 3 2.1 PASSO 01... 3 2.2 PASSO

Leia mais

Fox Gerenciador de Sistemas

Fox Gerenciador de Sistemas Fox Gerenciador de Sistemas Índice 1. FOX GERENCIADOR DE SISTEMAS... 4 2. ACESSO AO SISTEMA... 5 3. TELA PRINCIPAL... 6 4. MENU SISTEMAS... 7 5. MENU SERVIÇOS... 8 5.1. Ativação Fox... 8 5.2. Atualização

Leia mais

Omega Tecnologia Manual Omega Hosting

Omega Tecnologia Manual Omega Hosting Omega Tecnologia Manual Omega Hosting 1 2 Índice Sobre o Omega Hosting... 3 1 Primeiro Acesso... 4 2 Tela Inicial...5 2.1 Área de menu... 5 2.2 Área de navegação... 7 3 Itens do painel de Controle... 8

Leia mais

Rotina de Discovery e Inventário

Rotina de Discovery e Inventário 16/08/2013 Rotina de Discovery e Inventário Fornece orientações necessárias para testar a rotina de Discovery e Inventário. Versão 1.0 01/12/2014 Visão Resumida Data Criação 01/12/2014 Versão Documento

Leia mais

Documento de Análise e Projeto VideoSystem

Documento de Análise e Projeto VideoSystem Documento de Análise e Projeto VideoSystem Versão Data Versão Descrição Autor 20/10/2009 1.0 21/10/2009 1.0 05/11/2009 1.1 Definição inicial do documento de análise e projeto Revisão do documento

Leia mais

Ferramenta de apoio a gerência de configuração de software. Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl

Ferramenta de apoio a gerência de configuração de software. Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl Ferramenta de apoio a gerência de configuração de software Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl Roteiro de apresentação Introdução Objetivos Fundamentação Teórica Gerência de Configuração

Leia mais

INTERNET = ARQUITETURA TCP/IP

INTERNET = ARQUITETURA TCP/IP Arquitetura TCP/IP Arquitetura TCP/IP INTERNET = ARQUITETURA TCP/IP gatewa y internet internet REDE REDE REDE REDE Arquitetura TCP/IP (Resumo) É útil conhecer os dois modelos de rede TCP/IP e OSI. Cada

Leia mais

3 SERVIÇOS IP. 3.1 Serviços IP e alguns aspectos de segurança

3 SERVIÇOS IP. 3.1 Serviços IP e alguns aspectos de segurança 3 SERVIÇOS IP 3.1 Serviços IP e alguns aspectos de segurança Os serviços IP's são suscetíveis a uma variedade de possíveis ataques, desde ataques passivos (como espionagem) até ataques ativos (como a impossibilidade

Leia mais

MANUAL DO USUÁRIO SUMÁRIO

MANUAL DO USUÁRIO SUMÁRIO SUMÁRIO 1. Home -------------------------------------------------------------------------------------------------------- 7 2. Cadastros -------------------------------------------------------------------------------------------------

Leia mais

APLICAÇÃO REDE APLICAÇÃO APRESENTAÇÃO SESSÃO TRANSPORTE REDE LINK DE DADOS FÍSICA 1/5 PROTOCOLOS DE REDE

APLICAÇÃO REDE APLICAÇÃO APRESENTAÇÃO SESSÃO TRANSPORTE REDE LINK DE DADOS FÍSICA 1/5 PROTOCOLOS DE REDE 1/5 PROTOCOLOS DE O Modelo OSI O OSI é um modelo usado para entender como os protocolos de rede funcionam. Para facilitar a interconexão de sistemas de computadores, a ISO (International Standards Organization)

Leia mais

SCIM 1.0. Guia Rápido. Instalando, Parametrizando e Utilizando o Sistema de Controle Interno Municipal. Introdução

SCIM 1.0. Guia Rápido. Instalando, Parametrizando e Utilizando o Sistema de Controle Interno Municipal. Introdução SCIM 1.0 Guia Rápido Instalando, Parametrizando e Utilizando o Sistema de Controle Interno Municipal Introdução Nesta Edição O sistema de Controle Interno administra o questionário que será usado no chek-list

Leia mais

Manual do Usuário. Módulo Agentes Patrimoniais. Versão 1.0.0

Manual do Usuário. Módulo Agentes Patrimoniais. Versão 1.0.0 Manual do Usuário SISINVENT Sistema de Inventário Periódico na Web Módulo Agentes Patrimoniais Versão 1.0.0 APRESENTAÇÃO Seguindo a tendência de evolução da Moderna Administração Pública, o Poder Judiciário

Leia mais

Manual do Remote Desktop Connection. Brad Hards Urs Wolfer Tradução: Marcus Gama

Manual do Remote Desktop Connection. Brad Hards Urs Wolfer Tradução: Marcus Gama Manual do Remote Desktop Connection Brad Hards Urs Wolfer Tradução: Marcus Gama 2 Conteúdo 1 Introdução 5 2 O protocolo do Buffer de Quadro Remoto (Buffer de Quadro Remoto) 6 3 Usando o Remote Desktop

Leia mais

Instalação e Configuração Iptables ( Firewall)

Instalação e Configuração Iptables ( Firewall) Instalação e Configuração Iptables ( Firewall) Pág - 1 Instalação e Configuração Iptables - Firewall Desde o primeiro tutorial da sequencia dos passo a passo, aprendemos a configurar duas placas de rede,

Leia mais

Manual de Utilização Autorizador

Manual de Utilização Autorizador 1) Acessando: 1-1) Antes de iniciar a Implantação do GSS, lembre-se de verificar os componentes de software instalados no computador do prestador de serviço: a) Sistema Operacional: nosso treinamento está

Leia mais

DPAlmox - Windows MANUAL DO USUÁRIO

DPAlmox - Windows MANUAL DO USUÁRIO - Windows MANUAL DO USUÁRIO DPSISTEMAS www.dpsistemas.com.br 1. Registrando o programa... 3 2. Entrando no programa Login... 5 3. Tela Principal do Sistema... 6 4. Utilizando os botões de navegação...

Leia mais

TUTORIAL INSTALAÇÃO DA ROTINA 2075 NO LINUX

TUTORIAL INSTALAÇÃO DA ROTINA 2075 NO LINUX Apresentação O departamento de varejo da PC Sistemas inovou seu produto de frente de caixa, permitindo seu funcionamento no sistema operacional do Linux com a distribuição Ubuntu. O cliente poderá usar

Leia mais

SSE 3.0 Guia Rápido Parametrizando o SISTEMA DE SECRETARIA Nesta Edição Configurando a Conexão com o Banco de Dados

SSE 3.0 Guia Rápido Parametrizando o SISTEMA DE SECRETARIA Nesta Edição Configurando a Conexão com o Banco de Dados SSE 3.0 Guia Rápido Parametrizando o SISTEMA DE SECRETARIA Nesta Edição 1 Configurando a Conexão com o Banco de Dados 2 Primeiro Acesso ao Sistema Manutenção de Usuários 3 Parametrizando o Sistema Configura

Leia mais

Manual de Instalação e Configuração

Manual de Instalação e Configuração Manual de Instalação e Configuração Produto: DPS Print Server Versão:3.0.0 Versão do Doc.:1.0 Autor: Wagner Petri Data: 11/03/2010 Aplica-se à: Clientes e Revendas Alterado por: Release Note: Detalhamento

Leia mais

Manual Geral do OASIS

Manual Geral do OASIS Manual Geral do OASIS SISTEMA DE GESTÃO DE DEMANDA, PROJETO E SERVIÇO DE TECNOLOGIA DA INFORMAÇÃO OASIS Introdução Esse manual tem como objetivo auxiliar aos usuários nos procedimentos de execução do sistema

Leia mais

Segurança de Redes. Firewall. Filipe Raulino filipe.raulino@ifrn.edu.br

Segurança de Redes. Firewall. Filipe Raulino filipe.raulino@ifrn.edu.br Segurança de Redes Firewall Filipe Raulino filipe.raulino@ifrn.edu.br Introdução! O firewall é uma combinação de hardware e software que isola a rede local de uma organização da internet; Com ele é possível

Leia mais

Firewall. Qual a utilidade em instalar um firewall pessoal?

Firewall. Qual a utilidade em instalar um firewall pessoal? Firewall Significado: Firewall em português é o mesmo que parede cortafogo, um tipo de parede, utilizada principalmente em prédios, que contém o fogo em casos de incêndio. O firewall da informática faz

Leia mais

BACKUP ONLINE PASSOS PARA CONFIGURAÇÃO INICIAL DO PRODUTO

BACKUP ONLINE PASSOS PARA CONFIGURAÇÃO INICIAL DO PRODUTO BACKUP ONLINE PASSOS PARA CONFIGURAÇÃO INICIAL DO PRODUTO Criação de Conta de Usuário...03 Edição da Conta de Usuário...10 Download do Backup Online Embratel...10 Descrição dos Conjuntos de Cópia de Segurança...19

Leia mais

10 DICAS DE TECNOLOGIA PARA AUMENTAR SUA PRODUTIVIDADE NO TRABALHO

10 DICAS DE TECNOLOGIA PARA AUMENTAR SUA PRODUTIVIDADE NO TRABALHO 10 DICAS DE TECNOLOGIA PARA AUMENTAR SUA PRODUTIVIDADE NO TRABALHO UMA DAS GRANDES FUNÇÕES DA TECNOLOGIA É A DE FACILITAR A VIDA DO HOMEM, SEJA NA VIDA PESSOAL OU CORPORATIVA. ATRAVÉS DELA, ELE CONSEGUE

Leia mais

UML 2. Guia Prático. Gilleanes T.A. Guedes. Novatec. Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2

UML 2. Guia Prático. Gilleanes T.A. Guedes. Novatec. Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2 UML 2 Guia Prático Gilleanes T.A. Guedes Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2 Novatec capítulo 1 Introdução à UML A UML (Unified Modeling Language ou Linguagem de Modelagem

Leia mais

TOTVS Série 1 Varejo (Simples) - Módulo e-commerce

TOTVS Série 1 Varejo (Simples) - Módulo e-commerce Novo Módulo disponível no TOTVS S1 Varejo: permissão de utilização através de licença específica. Mesmo não adquirindo a licença de uso do módulo ele continuará presente na tela do usuário. 1 Na opção

Leia mais

Revisão 7 Junho de 2007

Revisão 7 Junho de 2007 Revisão 7 Junho de 2007 1/5 CONTEÚDO 1. Introdução 2. Configuração do Computador 3. Reativar a Conexão com a Internet 4. Configuração da Conta de Correio Eletrônico 5. Política Anti-Spam 6. Segurança do

Leia mais

Instalação: permite baixar o pacote de instalação do agente de coleta do sistema.

Instalação: permite baixar o pacote de instalação do agente de coleta do sistema. O que é o projeto O PROINFODATA - programa de coleta de dados do projeto ProInfo/MEC de inclusão digital nas escolas públicas brasileiras tem como objetivo acompanhar o estado de funcionamento dos laboratórios

Leia mais

Manual Administrador - Mídia System

Manual Administrador - Mídia System Manual Administrador - Mídia System Logo após cadastrarmos sua Empresa em nosso sistema, será enviado um e-mail confirmando as informações de acesso do Administrador do sistema. Obs: Caso não tenha recebido

Leia mais

SISTEMA DE GESTÃO DE PESSOAS SEBRAE/TO UNIDADE: GESTÃO ESTRATÉGICA PROCESSO: TECNOLOGIA DA INFORMAÇÃO

SISTEMA DE GESTÃO DE PESSOAS SEBRAE/TO UNIDADE: GESTÃO ESTRATÉGICA PROCESSO: TECNOLOGIA DA INFORMAÇÃO SISTEMA DE GESTÃO DE PESSOAS SEBRAE/TO UNIDADE: GESTÃO ESTRATÉGICA PROCESSO: TECNOLOGIA DA INFORMAÇÃO Competências Analista 1. Administração de recursos de infra-estrutura de tecnologia da informação 2.

Leia mais

Guia de Prática. Windows 7 Ubuntu 12.04

Guia de Prática. Windows 7 Ubuntu 12.04 Guia de Prática Windows 7 Ubuntu 12.04 Virtual Box e suas interfaces de rede Temos 04 interfaces de rede Cada interface pode operar nos modos: NÃO CONECTADO, que representa o cabo de rede desconectado.

Leia mais

LABORATÓRIO WIRESHARK: DNS

LABORATÓRIO WIRESHARK: DNS LABORATÓRIO WIRESHARK: DNS Conforme descrito na seção 2.5 do livro, o Domain Name System (DNS) traduz nomes de hosts para endereços IP, cumprindo um papel fundamental na infra-estrutura da Internet. Neste

Leia mais

Versão Liberada. www.gerpos.com.br. Gerpos Sistemas Ltda. info@gerpos.com.br. Av. Jones dos Santos Neves, nº 160/174

Versão Liberada. www.gerpos.com.br. Gerpos Sistemas Ltda. info@gerpos.com.br. Av. Jones dos Santos Neves, nº 160/174 Versão Liberada A Gerpos comunica a seus clientes que nova versão do aplicativo Gerpos Retaguarda, contendo as rotinas para emissão da Nota Fiscal Eletrônica, já está disponível. A atualização da versão

Leia mais

Software Livre. Acesso ao código fonte Alterar o código fonte Redistribuir Utilizar como desejar

Software Livre. Acesso ao código fonte Alterar o código fonte Redistribuir Utilizar como desejar Software Livre Acesso ao código fonte Alterar o código fonte Redistribuir Utilizar como desejar Linux Licença GPL (Licença Pública Geral) Linux Licença GPL (Licença Pública Geral) - A liberdade de executar

Leia mais