Curso de Administração de Redes com GNU/Linux

Descrição do Curso

Os requisitos de segurança, estabilidade e disponibilidade necessários para a prestação de serviços de rede (web, email, arquivos, etc.) exigem a utilização de sistemas que possam assegurar essas características em situações críticas. O GNU/Linux é capaz de prover esses requisitos, sendo o sistema operacional mais utilizado em servidores.

Assim, este curso habilita o usuário à conhecer e compreender aspectos avançados do sistema operacional GNU/Linux e de redes de computadores, com o objetivo de ser capaz de implantar e administrar uma rede de computadores com GNU/Linux, instalar, confirurar e manter serviços, enfatizando questões de segurança e desempenho.

Sumário

1. Carga Horária

  • 48 horas

2. Mapa Conceitual

mapa_conceitual_linux_redes.png      
Mapa Conceitual do Curso de Redes com GNU/Linux .    

3. Público Alvo

Administradores de sistemas, técnicos em informática, consultores e profissionais envolvidos em projetos de migração, implantação e gestão de sistemas e serviços utilizando Unix ou GNU/Linux.

4. Plano de Ensino

Objetivo Geral : Conhecer e compreender aspectos avançados do sistema operacional GNU/Linux e de redes de computadores, com o objetivo de ser capaz de implantar e administrar uma rede de computadores com GNU/Linux, instalar, confirurar e manter serviços, enfatizando questões de segurança e desempenho.
Objetivo específico Conteúdo Recursos pedagógicos Carga Horária
Conhecer aspectos avançados do GNU/Linux, relembrando a evolução dos sistemas Unix, nascimento do GNU/Linux, arquitetura e padrões do sistema operacional. Breve histórico; camadas do sistema; sistema de arquivos Aula expositiva com auxílio de de recursos áudio-visuais (apresentação de slides) e exemplos utilizando ambiente real 1h
Entender como funciona a inicialização do sistema, compreendendo desde o carregador de boot até os primeiros processos invocados no GNU/Linux, abordando opções avançadas de configuração do LILO e GRUB, passagem de parâmetros para o kernel, boot em modo monousuário, etc., e aprender a configurar a inicialização de serviços. Boot loaders (LILO, GRUB); inicialização do sistema; níveis de execução; o processo init; scritpts de inicialização de serviços Aula expositiva com auxílio de de recursos áudio-visual (apresentação de slides); exemplos utilizando ambiente real; exemplos de configuração de serviços e dos gerenciadores de boot utilizando os arquivos reais do sistema 4h
Compreender o funcionamento do shell, aprendendo operações mais comuns, construção de scripts para automatização de tarefas e programas mais utilizados para filtragem de logs, parsing genéricos, expressões regulares e como obter ajuda sobre parâmetros e ferramentas. Bash; caracteres curinga; variáveis de ambiente; laços de execução de comandos; expressões regulares e ferramentas para edição de texto (cat, sed, awk, cut, grep, etc.) e comandos muito usados (head, tail, who, etc.) Aula expositiva com auxílio de de recursos áudio-visuais (apresentação de slides) e propostas de exercícios e problemas simulando situações reais, utilizando terminais, dentro do ambiente real. 6h
Entender o funcionamento e a configuração do sistema de logs, manipuação de usuários e grupos, permissões especiais, backups rápidos, gerência de arquivos encriptados com chave pública e conhecer as tarefas básicas do dia-a-dia de um administrador de sistemas, como instalar e remover programas e usar o SSH. Instalação e remoção de programas através do sistema de pacotes ou compilação; verificação e configuração do sistema de registro de logs; manipulação de contas de usuários e permissões; configuração e uso de serviço Secure Shell; compactação e agrupamento de arquivos e sincronização remota com rsync; criptografia de dados com o Gnupg Aula expositiva com auxílio de de recursos áudio-visuais (apresentação de slides), demonstrações e exercícios de configurações utilizando os arquivos de configuração reais; demonstração e exercícios de instalação e remoção de programas utilizando diversas interfaces para o gerenciador de pacotes da distribuição, e compilação de pacotes a partir dos fontes; exercícios do uso do Secure Shell para login e transferência de arquivos remotos. 6h
Compreender como se comporta uma rede em sistemas GNU/Linux, desde o tratamento das suas interfaces físicas até a execução de serviços, resolução de nomes, roteamento, controle de banda, ferramentas para depuração de tráfego e comandos diversos para auxílio na detecção de problemas. Interfaces de rede; comandos para manipulação de rede; roteamento, resolução de nomes; daemons; controle de banda; ferramentas de sniffing; dicas para solução de problemas. Aula expositiva com auxílio de de recursos áudio-visuais (apresentação de slides); demonstração e exercícios de configurações de rede utilizando os arquivos de configuração reais, para situações reais e simuladas; 4h
Aprender a projetar e implantar sistemas de proxies, NAT e filtragem de pacotes, que caracterizam um firewall completo numa rede GNU/Linux. Filtragem de pacotes e tradução de endereços (NAT); políticas de firewall; proxy com squid; interfaces gráficas de configuração. Aula expositiva com auxílio de de recursos áudio-visuais (apresentação de slides) e exercícios utilizando ferramentas reais para configuração e gerência de proxies e firewall em um ambiente simulado. 6h
Compreender a arquitetura do Kernel Linux e seus componentes, métodos de compilação, aplicação de patches, manipulação de módulos. O processo de compilação e ferramentas para compilação em distribuições; personalização do kernel; instalação e remoção de módulos, e compilação e manipulação com o modules-assistant; aplicação de patches. Projeto de compilação de um kernel utilizando os fontes reais do Linux e as ferramentas oferecidas pela distribuição utilizada, e de compilação de um módulo externo ao kernel a partir dos fontes utilizando o m-a; demonstração e exercícios de configuração de módulos a serem instalados ou banidos durante o boot utilizando os arquivos do ambiente real. 6h
Entender os conceitos para alta disponibilidade versus. alta performance em serviços críticos, lidando com RAID, LVM e ferramentas para clustering no GNU/Linux. Conceitos de alta disponibilidade, alta performance, clusters; RAID - Redundant Array of Independent (ou Inexpensive) Disks; LVM - Logical Volume Manager; Virtualização no GNU/Linux com XEN; Cluster de alta disponibilidade com LVS (Linux Virtual Server), keepalive e VRRP (Virtual Router Redundance Protocol). Aula expositiva com auxílio de de recursos áudio-visuais (apresentação de slides) e demonstrações utilizando ambientes simulados. 6h
Conhecer os princípios básicos para gerência e monitoramento de redes heterogêneas a partir do GNU/Linux, bem como ferramentas como Nagios, Cacti e MRTG. Conceitos básicos para gerência de redes e gerência de falhas; instalando e configurando o Nagios; monitoramento remoto de recursos. Aula expositiva com auxílio de de recursos áudio-visuais (apresentação de slides) e demonstrações e exercícios de instalação e configurações utilizando o ambiente real. 6h

5. Ementa

1) Arquitetura GNU/Linux

Relembrando a evolução dos sistemas Unix, nascimento do GNU/Linux, arquitetura e padrões do sistema operacional.

  1. Breve histórico
  2. Camadas do sistema (kernel, bibliotecas básicas, aplicações/shell)
  3. Sistema de arquivos (Filesystem Hierarchy Standard)

2) Processo de inicialização do sistema

Entendendo como funciona a inicialização do sistema, compreendendo desde o carregador de boot até os primeiros processos invocados no Linux. Estaremos abordando o LILO e o GRUB, com opções avançadas, passagem de parâmetros para o kernel, rescue, etc.

  1. Boot loaders (LILO, GRUB)
  2. Inicialização do kernel
  3. O processo Init
  4. Scripts de inicialização (init.d)

3) O Shell

Compreender o funcionamento do shell, a mais importante ferramenta para o administrador de sistemas GNU/Linux. São abordadas questões conceituais, operações mais comuns, construção de scripts para automatização de tarefas e programas mais utilizados para filtragem de logs, parsing genéricos, expressões regulares e como obter ajuda sobre seus parâmetros.

  1. BASH - GNU Bourne Again Shell
  2. Wildcards (caracteres curingas)
  3. Variáveis de ambiente, variáveis locais
  4. Laços/Loops
  5. Expressões regulares e comandos mais populares para administração do sistema: sed, awk, cat, grep, head, tail, who, etc
  6. Construção de scripts em bash

4) Tarefas básicas de um administrador:

Dia a dia de um administrador GNU/Linux. Entendimento do sistema de logs, manipuação de usuários, grupos, permissões especiais, backups rápidos, gerência de arquivos encriptados com chave pública.

  1. Instalação de programas, utilizando compilação e sistema de empacotamento
  2. Verificação e configuração do sistema de logs (syslogd)
  3. Manipulação de contas de usuários unix
  4. Utilizando, provendo e entendendo o Secure Shell (SSH)
  5. Técnicas básicas para backup (compactação e agrupamento, sincronização com rsync)
  6. Utilização do GnuPG? para encriptação

5) Rede no GNU/Linux

Compreender como se comporta uma rede em sistemas GNU/Linux. Desde o tratamento das suas interfaces físicas até a execução de serviços, resolução de nomes, roteamento, controle de banda, ferramentas para depuração de tráfego e comandos diversos para auxílio na detecção de problemas.

  1. Interfaces de rede (ethernet, wireless, serial, brigdes)
  2. Comandos para manipulação de rede
  3. Roteamento
  4. Resolução de nomes
  5. Daemons, inetd/xinetd
  6. Controle de banda com CBQ/Shaper
  7. Ferramentas baseadas na libpcap (tcpdump, ethereal, ntop)
  8. Passo a passo para resolução de problemas

6) Netfilter/IPtables

Projeto e implantação de sistemas de proxies, NAT e filtragem de pacotes, que caracterizam um firewall completo numa rede GNU/Linux. São utilizados os comandos baixo nível para manipulação do NetFilter? e demonstradas algumas ferramentas para auxílio e produtividade.

  1. Conceitos: filtragem de pacotes e tradução de endereços (NAT)
  2. Políticas de firewalling
  3. Implementando regras de filtragem e NAT no iptables
  4. Proxy com Squid
  5. Ferramentas de auxílio via WEB e GUI

7) O Kernel

Aqui entende-se o Linux propriamente dito, seus componentes, métodos de compilação, aplicação de patches, manipulação de módulos.

  1. Entendendo na prática o processo de compilação
  2. Adequando seu kernel:
  3. Suporte a sistemas de arquivos, processadores e dispositivos
  4. Habilitando corretamente drivers de vídeo, rede, som para seu hardware:
  5. Manipulando módulos do kernel
  6. Aplicando patches para performance em servidores (diff, patch)

8) Disponibilidade e clustering

Entendendo conceitos para alta disponibilidade vs. alta performance em serviços críticos, lidando com RAID, LVM, ferramentas para clustering e ferramentas para virtualização no GNU/Linux.

  1. Conceitos: alta disponibilidade, alta performance, clusters
  2. RAID - Redundant Array of Independent (ou Inexpensive) Disks
  3. LVM - Logical Volume Manager
  4. XEN - Virtualização
  5. Cluster de alta disponibilidade com LVS (Linux Virtual Server), keepalive e VRRP (Virtual Router Redundance Protocol)

9) Gerência de redes/sistemas básica

Serão abordados princípios básicos para gerência e monitoramento de redes heterogêneas a partir do GNU/Linux. O Nagios será colocado em prática nas suas funções básicas, contudo, de grande importância para o isolamento e resolução rápida de falhas na rede.

  1. Conceitos básicos para gerência de redes
  2. Gerência de falhas: Nagios
    1. Instalando e configurando o Nagios
    2. Monitoramento remoto do uso de processamento, memória, usuários, processos, (...) em sistemas GNU/Linux e proprietários.

Topic attachments
I Attachment Action Size Date Who Comment
pngpng mapa_conceitual_linux_redes.png manage 26.9 K 03 Aug 2007 - 00:01 MonicaPaz Mapa Conceitual do Curso de Redes com GNU/Linux
Topic revision: r4 - 13 Aug 2007 - 19:30:49 - KrishnamurtiNunes
 
Copyright © Colivre 2006-2008.
Todo conteúdo deste site está licenciado sob uma Licença Creative Commons BY-NC-SA 2.5.
Para uso comercial deste conteúdo, por favor, contate-nos.