módulo - administração de redes linux

221
MÓDULO: ADMINISTRAÇÃO DE REDES LINUX AUTORIA: Ricardo de Magalhães Simões Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

Upload: sergiofernandes

Post on 30-Nov-2015

292 views

Category:

Documents


44 download

DESCRIPTION

Módulo - Administração de Redes Linux

TRANSCRIPT

Page 1: Módulo - Administração de Redes Linux

MÓDULO:

ADMINISTRAÇÃO DE REDES LINUX

AUTORIA:

Ricardo de Magalhães Simões

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

Page 2: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

2

Módulo De: Administração de Redes Linux

Autoria: Ricardo de Magalhães Simões

Primeira edição: 2009

CITAÇÃO DE MARCAS NOTÓRIAS

Várias marcas registradas são citadas no conteúdo deste módulo. mais do que simplesmente

listar esses nomes e informar quem possui seus direitos de exploração ou ainda imprimir

logotipos, o autor declara estar utilizando tais nomes apenas para fins editoriais acadêmicos.

Declara ainda, que sua utilização tem como objetivo, exclusivamente na aplicação didática,

beneficiando e divulgando a marca do detentor; sem a intenção de infringir as regras básicas

de autenticidade de sua utilização e direitos autorais.

E por fim, declara estar utilizando parte de alguns circuitos eletrônicos, os quais foram

analisados em pesquisas de laboratório e de literaturas já editadas, que se encontram

expostas ao comércio livre editorial.

Copyright © 2008, ESAB – Escola Superior Aberta do Brasil

Page 3: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

3

Apresentação

O Linux é um sistema operacional criado em 1991 por Linus Torvalds, na época um

estudante de ciências da computação na universidade de Helsinki, Finlândia. O sistema

segue o padrão POSIX, que é o mesmo usado por vários sistemas UNIX. Assim,

conhecendo o Linux, o aluno não encontrará muita dificuldade em operar outros sistemas, do

tipo UNIX, como por exemplo, FreeBSD, HPUX, SunOS, dentre outros.

Linus Torvalds iniciou o desenvolvimento do Linux como um projeto particular, escrevendo o

sistema Minix criado por Andrew S. Tanenbaum. Depois de algumas semanas sendo o único

participante do projeto, Linus convidou outras pessoas para ingressarem no desenvolvimento

de “um Minix melhor que o Minix”, enviando a seguinte mensagem:

"Você suspira pelos bons tempos do Minix-1.1, quando os homens eram homens e

escreviam seus próprios "utilitários de periféricos" ?

Você está sem um bom projeto em mãos e deseja trabalhar num S.O. que possa modificar

de acordo com as suas necessidades ?

Page 4: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

4

Acha frustrante quando tudo funciona no Minix? Chega de noite ao computador para

conseguir que os programas funcionem ?

esta mensagem pode ser exatamente para você.

Como mencionei a um mês, estou trabalhando numa versão independente de um S.O.

similar ao Minix para computadores AT-386. Ele está, finalmente, próximo do estado em que

poderá ser utilizado (embora possa não ser o que você espera), e eu estou disposto a

disponibilizar o código fonte para ampla distribuição. Ele está na versão 0.02 ..., contudo eu

tive sucesso ao executar bash, gcc, gnu-make, gnu-sed, compressão etc."

Atualmente pode-se encontrar uma versão do sistema operacional Linux operando em

diversas plataformas: Intel x86, Intel x64, Intel IA-64, ARM, IBM PowerPC, SUN UltraSparc,

ARM, Hitachi SH-x, Zilog, MIPS Rx000, Alpha 21x64, Motorola 680x0, Mainframes,

Supercomputadores, GPS, Telefones Celulares, e várias outras.

A primeira distribuição do Linux era literalmente proibida de ser comercializada, devendo ser

entregue gratuitamente aos interessados. Com a liberação das primeiras versões nos anos

de 1991 e 1992 a licença de distribuição foi alterada, mantendo-se basicamente a restrição

de que qualquer distribuição do Linux ser entregue com o código fonte “aberto”, isto é,

podendo ser lido, alterado e recompilado, por quem quizesse.

Objetivo

Aprender a utilizar o sistema operacional Linux em um ambiente de Rede de Computadores,

instalando e configurando um servidor de rede.

Page 5: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

5

Ementa

Introdução; As distribuições do Linux; Instalação 01 – Início; Instalação 02 – Personalizando;

Instalação 03 – Configuração; KDE; Instalação de Programas; Manpages - Documentação

Interna; Programação; Gerenciamento de Processos; Runlevels - Níveis de Execução;

Arquivos de Log; Administração de Usuários; Permissões de Acesso; Permissões de Acesso;

Agendamento de Tarefas; Cópia de Segurança dos Arquivos; Protocolo TCP-IP;

Configuração da Rede; Ferramentas TCP-IP; Iptables - Proteção do Servidor; SSH -

Conexão Remota com Segurança; Servidor de Rede DHCP; Servidor PHP; Servidor de

Banco de Dados; Servidor de Correio Eletrônico; Servidor WWW; Servidor de Arquivos NFS;

Samba; Monitoramento do Servidor; Certificação.

Sobre o Autor

Doutorando em Engenharia Elétrica na área de Redes de Computadores, Mestre em

Informática (2006) e Bacharel em Ciência da Computação (2003), pela Universidade Federal

do Espírito Santo. Atuou como Professor Substituto de Informática no CEFET-ES, Professor

de Programação I, no Curso Superior de Tecnologia em Análise e Desenvolvimento de

Sistemas a Distância no CEFETES.

Possui experiência na área de Ciência da Computação, com ênfase em Desenvolvimento de

Algorítmos; Educação de Informática para estudantes do Ensino Médio, atuando

principalmente nos seguintes temas: Informática Básica, Programação nas linguagem

C/C++/C#, Java, Pascal.

Página pessoal: http://geocities.yahoo.com.br/rmagalhaess

Page 6: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

6

SUMÁRIO

UNIDADE 1 ........................................................................................................... 9

As Distribuições Do Linux .................................................................................. 9

UNIDADE 2 ......................................................................................................... 13

Instalação 01 - Início ........................................................................................ 13

UNIDADE 3 ......................................................................................................... 21

Instalação 02 - Personalizando ........................................................................ 21

UNIDADE 4 ......................................................................................................... 31

Instalação 03 - Configuração ........................................................................... 31

UNIDADE 5 ......................................................................................................... 43

KDE .................................................................................................................. 43

UNIDADE 6 ......................................................................................................... 52

Instalação De Programas................................................................................. 52

UNIDADE 7 ......................................................................................................... 61

Manpages = Documentação Interna ................................................................ 61

UNIDADE 8 ......................................................................................................... 69

Programação .................................................................................................... 69

UNIDADE 9 ......................................................................................................... 78

Gerenciamento De Processos ......................................................................... 78

UNIDADE 10 ....................................................................................................... 89

Runlevels = Níveis De Execução ..................................................................... 89

UNIDADE 11 ....................................................................................................... 96

Arquivos De Log ............................................................................................... 96

UNIDADE 12 ..................................................................................................... 102

Administração De Usuários ........................................................................... 102

UNIDADE 13 ..................................................................................................... 113

Page 7: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

7

Permissões De Acesso .................................................................................. 113

UNIDADE 14 ..................................................................................................... 116

Permissões De Acesso .................................................................................. 116

UNIDADE 15 ..................................................................................................... 121

Agendamento De Tarefas .............................................................................. 121

UNIDADE 16 ..................................................................................................... 128

Cópia De Segurança De Arquivos ................................................................. 128

UNIDADE 17 ..................................................................................................... 139

Protocolo TCP/IP ........................................................................................... 139

UNIDADE 18 ..................................................................................................... 147

Configuração Da Rede ................................................................................... 147

UNIDADE 19 ..................................................................................................... 154

Ferramentas TCP-IP ...................................................................................... 154

UNIDADE 20 ..................................................................................................... 161

Proteção Do Servidor ..................................................................................... 161

UNIDADE 21 ..................................................................................................... 167

Conexão Remota Com Segurança ................................................................ 167

UNIDADE 22 ..................................................................................................... 172

Servidor De Rede DHCP ............................................................................... 172

UNIDADE 23 ..................................................................................................... 178

PHP ................................................................................................................ 178

UNIDADE 24 ..................................................................................................... 182

Servidor De Banco De Dados ........................................................................ 182

UNIDADE 25 ..................................................................................................... 186

Servidor De Correio Eletrônico ...................................................................... 186

UNIDADE 26 ..................................................................................................... 191

Apache – Servidor WWW .............................................................................. 191

UNIDADE 27 ..................................................................................................... 196

Page 8: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

8

Servidor De Arquivos E RAID ........................................................................ 196

UNIDADE 28 ..................................................................................................... 200

SAMBA – Conexão Com Windows ................................................................ 200

UNIDADE 29 ..................................................................................................... 205

Monitoramento Do Servidor ........................................................................... 205

UNIDADE 30 ..................................................................................................... 213

Certificação Linux ........................................................................................... 213

GLOSSÁRIO ..................................................................................................... 220

BIBLIOGRAFIA ................................................................................................ 221

Page 9: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

9

UNIDADE 1

As Distribuições do Linux Objetivo: Conhecer o desenvolvimento do Linux, algumas características desse sistema e as versões existentes.

1. Introdução

Um sistema Linux nunca foi entregue “sozinho”, contendo apenas o sistema operacional.

Desde o início eram criadas versões chamadas “distribuições”, que continham além do

Sistema Operacional Linux (o chamado kernel do Linux), uma série de aplicativos e utilitários.

Algumas empresas, e grupos de desenvolvedores, passaram a entregar (gratuitamente ou

por um preço) o sistema operacional Linux, e cada CD passou a ser chamado de uma

Distribuição Linux. As principais distribuições disponíveis no Brasil são: Red Hat, Novel

SuSE, Conectiva, Librix, Insignea, Kurumin, Ubuntu.

No final da década de 1990, praticamente 90% das distribuições do Linux eram utilizadas em

Servidores. Atualmente, as distribuições são desenvolvidas para serem utilizadas em

Computadores Pessoais ou Servidores, sendo que algumas permitem que se escolha qual

tipo de computador será utilizado. Assim, o primeiro cuidado que se deve ter é na escolha da

distribuição que será instalada no Servidor.

Page 10: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

10

2. Distribuições

A tabela 1 mostra uma comparação, em algumas das distribuições mais importantes no

Brasil:

Distribuição Versão Estável Kernel Empresa País Cliente Servidor Origem da

distribuição Reconhecimento de Periféricos

Fedora 12 2.6 Red Hat EUA SIM SIM RedHat Alta

openSuSE 11.2 2.6 Novell ALE SIM SIM RedHat Alta

Mandriva 2010 2.6 Mandriva FRA/BRA SIM SIM RedHat Alta

Librix 3.2 2.6 Itautec BRA SIM SIM Gentoo Média(3)

Insignea 5.0 2.6 Insignea BRA SIM NÃO(1) - Média(3)

Kurumin 8.06 2.6 - BRA SIM NÃO(1) Debian Alta

Ubuntu 9.10 2.6 Canonical

AF.S. SIM SIM(2) Debian Alta

Slackware 13 2.6 - EUA SIM SIM Slackware Alta

Debian 5.0.3 2.6 - EUA SIM SIM Debian Alta

Muriqui 1.4 2.6 Docttum BRA SIM NÃO(1) Debian Média(3)

Tabela 1: Comparação das distribuições Linux

_______________

(1) Insignea, Kurumin e Muriqui não são direcionados para servidores, e não contam com aplicativos para o gerenciamento de servidores, mas nada impede que tais aplicativos sejam instalados. (2) Ubuntu é direcionado para computadores pessoais, e sua versão para servidores contém um conjunto mínimo de aplicativos, e nenhuma interface gráfica. (3) Librix, Insignea e Muriqui são direcionados para empresas específicas (Librix para Itautec; Insignea para CCE, Novadata, SempToshiba, Positivo, dentre outras; Muriqui para Docttum), possuem um nível de compatibilidade com periféricos “teoricamente” alto, pois são sistemas Linux e em último caso a instalação de um periférico será trabalhosa. O Librix possui um aplicativo de Verificação de Compatibilidade que pode ser utilizado durante a instalação.

Page 11: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

11

3. Não são distribuições Linux

Uma consideração a ser feita, e que algumas pessoas confundem é que, alguns sistemas

compatíveis com o padrão POSIX não são uma distribuição Linux, dentre as quais se

destaca:

BSD e FreeBSD (e suas distribuições);

Mac OS X, derivado dos sistemas NeXT e Apple System 9;

BeOS;

AmigaOS;

SUN Solaris e SUN OpenSolaris.

A empresa SUN, desenvolvedora do OpenSolaris, distribui de forma

gratuita tanto o sistema para servidores SUN Solaris, quanto o

sistema para computadores pessoais SUN OpenSolaris, sendo uma

opção interessante para se considerar.

4 Ambiente de Estudo

Para o estudo deste Módulo podem ser utilizadas diversas estratégias:

1) Instalação completa em um computador de teste;

2) Instalação compartilhada em um computador com MS-Windows, tendo 2 sistemas

operacionais;

3) Instalação em uma Máquina Virtual.

OBS: A opção mais indicada é a de número 3.

Page 12: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

12

Este Módulo foi escrito utilizando a distribuição Mandriva Linux 2010, instalada em uma

máquina virtual criada no aplicativo Sun VirtualBox, que é um aplicativo gratuito para criação

de máquinas virtuais. Outra opção de máquina virtual é o VMWare Workstation, mas esse é

válido por apenas 30 dias (ao terminar o período, faça um novo cadastro com um endereço

de correio eletrônico diferente, e continue a utilizar o VMWare por mais 30 dias).

Page 13: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

13

UNIDADE 2

Instalação 01 - Início Objetivo: Aprender os passos necessários para instalar o Mandriva 2010 em um computador habilitado para o Servidor.

Instalação do Mandriva Linux 2010

O primeiro passo para a instalação é baixar a versão Mandriva 2010, gravar um DVD e

colocá-lo no computador que será utilizado. Essa é a versão mais recente, e contém uma

série de pacotes prontos para serem utilizados. Tanto em um computador de escritório (ou

doméstico), quanto em um Servidor de Rede.

Fig. 1. Primeira tela a ser exibida.

Figura 1: Primeiras opções de instalação

Page 14: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

14

Primeiro, deve-se escolher a opção “Install Mandriva Linux 2010”. Não há necessidade de

troca de idioma (inglês) nem da resolução da tela (800x600), pois na próxima tela, que é a

tela de instalação de fato, será feita a troca do idioma, e no final da instalação a troca da

resolução da tela.

Não há necessidade de troca de idioma (inglês) nem da resolução da tela (800x600), pois na

próxima tela, que é a tela de instalação de fato, será feita a troca do idioma, e no final da

instalação a troca da resolução da tela.

A segunda tela apresentada irá mostrar as opções de idioma do Mandriva Linux 2010, sendo

então nesta etapa que será feita a escolha para o idioma “Portugês do Brasil”.

Figura 2: Escolha do idioma

Ao selecionar o idioma “Português do Brasil” todas as informações na tela passam a ser

exibidas em brasileiro.

Deve-se clicar no botão “Próximo” para continuar com a instalação.

Page 15: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

15

A terceira tela da instalação mostra o contrato de licença, que informa os termos de utilização

do sistema operacional e dos programas incluídos.

Figura 3: Contrato de Licença

Existem duas opções:

1) “Aceitar” e continuar a instalação e, posteriormente, utilizar o Mandriva Linux 2010;

2) “Recusar” e cancelar a instalação, e não utilizar o Linux.

Selecione a opção “Aceitar”, e clique no botão “Próximo”.

Page 16: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

16

A quarta tela de instalação é referente à etapa de particionamento do disco rígido. Existem

duas opções:

1) “Usar o espaço livre”: Neste caso, o instalador irá particionar automaticamente o disco

rígido existente no computador.

2) “Personalizar Particionamento”: A escolha de como será feito o particionamento do

disco rígido ficará a critério do usuário.

Figura 4: Particionamento do Disco Rígido

Page 17: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

17

A maioria dos usuários prefere realizar o particionamento personalizado do disco rígido, e

para cada situação haverá uma personalização adequada. Neste Módulo, a instalação foi

realizada em um computador com 10 GB de disco rígido e o particionamento escolhido não

foi automático; sendo personalizado com as seguintes divisões: 8,8 GB como ext3 e 1,1 GB

como swap.

Observe a figura 5.

Figura 5: Particionamento utilizado

Cada caso deverá ser analisado para se ter uma utilização do disco rígido que reflita as

necessidades apresentadas em cada ambiente.

Pode-se também utilizar mais de um disco rígido, e até mesmo ter a utilização de sistemas

com RAID. A distribuição OpenSuSE Linux permite definir sistemas RAID na fase de

instalação do sistema operacional.

Após a realização do particionamento, deve-se clicar no botão “Pronto” para continuar a

instalação.

Page 18: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

18

A sexta tela apresentada irá permitir que se faça a escolha de mais alguma opção de fonte

de instalação, isto é, de mais um local além do DVD para se instalar o Mandriva Linux 2010 e

seus pacotes.

Caso seja necessário instalar mais algum aplicativo, que não esteja incluído no DVD

disponibilizado pela Mandriva, deve-se escolher uma das opções apresentadas: “CD-ROM”,

“Rede (HTTP)”, “Rede (FTP)” ou “Rede (NFS)”.

Esta instalação foi feita apenas com o DVD Mandriva Linux 2010, sendo escolhida a opção

“Nenhum” para indicar que nenhuma fonte adicional será utilizada para a instalação do

sistema operacional.

Figura 6: Opções de Fonte de Instalação

Após selecionar a opção “Nenhum”, deve-se clicar no botão “Próximo” para continuar a

instalação.

Page 19: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

19

A sétima tela apresentada irá direcionar a opção de instalação, onde será escolhida uma

instalação de um computador pessoal ou um servidor. Esta escolha não é feita de maneira

simples, pois as opções apresentadas são as seguintes:

1) “KDE”: instalação de um computador pessoal com interface KDE.

2) “GNOME”:instalação de um computador pessoal com interface Gnome.

3) “Personalizar”: permite fazer a escolha de quais programas e utilitários serão

instalados.

Figura 7: Escolha do tipo de instalação

Se a instalação for realizada em um computador pessoal, pode-se escolher qualquer uma

das opções.

Page 20: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

20

Se a instalação for em um Servidor, deve-se obrigatoriamente selecionar a opção

“Personalizar”, como é mostrado na figura 8:

Figura 8: Escolha da instalação personalizada

Ao escolher a opção “Personalizar”, deve-se clicar no botão “Próximo” para continuar a

instalação.

OBS: As próximas etapas serão vistas na próxima unidade.

Page 21: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

21

UNIDADE 3

Instalação 02 - Personalizando Objetivo: Conhecer os passos necessários para instalar o Mandriva 2010 em um computador habilitado para Servidor.

Instalação do Mandriva Linux 2010

Continuando a instalação do Linux, a partir da escolha de personalização da instalação do

sistema operacional, passa-se para a escolha de quais itens farão parte da instalação.

Observe figura a seguir:

Figura 1: Itens que serão instalados

Page 22: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

22

Como o objetivo da instalação é ter um Computador Servidor, deve-se escolher os itens

relativos ao Servidor.

Neste Módulo será adotada a instalação de todas as opções referentes ao Servidor, deve-se

clicar em todos os itens disponíveis referentes ao Servidor, como mostrado na figura 2:

Figura 2: Escolha de todos os itens do Servidor

Além disso, deve-se escolher o item “Seleção individual de pacotes”, pois nem todos os

programas e utilitários de um Servidor são instalados. Quando se clica na opção “Web/FTP”

do Servidor, apenas os programas e utilitários básicos serão instalados.

Page 23: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

23

Nesta apostila será adotada uma instalação completa dos programas e utilitários disponíveis

no Mandriva Linux 2010.

Figura 3: Escolha de selecionar individualmente os pacotes a serem instalados

Após selecionar a opção “Seleção individual de pacotes” deve-se clicar no botão “Próximo”

para continuar a instalação do sistema.

Page 24: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

24

A nona tela apresentada permite realizar a escolha individual dos pacotes que serão

instalados.

Pode-se fazer a escolha dos pacotes referentes ao “Servidor”, à “Estação de Trabalho”, e

quais “Ambientes Gráficos” serão disponibilizados para utilização.

Figura 4: Primeira tela para a escolha de pacotes individuais

Page 25: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

25

Para instalar um Servidor, com todos os pacotes disponíveis no Mandriva Linux 2010, deve-

se expandir o item “Servidor” clicando em cima da seta ao lado esquerdo do nome “Servidor”.

Figura 5: Opções dentro do Servidor

Serão mostradas as opções para escolha dentro de “Web/FTP”, “E-mail”, “Banco de Dados”,

“Firewall/Roteador”, e “Servidor de Rede”.

Aqui, será adotada uma instalação completa dos pacotes disponíveis no Mandriva Linux

2010, todos os itens em cada uma das opções dentro do Servidor serão adotadas.

Page 26: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

26

Na figura 6 é apresentada uma tela onde o pacote “cyrus-imapd” não está selecionado, mas

este pacote e todos os outros dentro do Servidor serão selecionados.

Figura 6: Seleção do pacote “cyrus-imapd”.

Page 27: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

27

Eventualmente na escolha de algum pacote poderá surgir uma mensagem como a

apresentada na figura 7:

Figura 7: Mensagem de informação

Essa mensagem informa que, para a instalação do pacote selecionado, outros pacotes serão

instalados também. Isso acontece, pois alguns pacotes dependem das funções disponíveis

em pacotes específicos, devendo-se sempre confirmar a instalação dos pacotes adicionais

clicando-se no botão “Ok”.

Page 28: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

28

Deve-se prosseguir escolhando-se os demais pacotes disponíveis para o Servidor, até que

todos sejam escolhidos.

Figura 8

O campo “Tamanho total: 4379/7870 MB” indica duas informações:

1. O tamanho em megabytes que será utilizado para a instalação dos pacotes

individuais. No caso apresentado o tamanho é de 4379 megabytes;

2. O tamanho em megabytes de todos os pacotes disponíveis. No caso apresentado é de

7870 megabytes.

Page 29: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

29

Durante a escolha, algumas informações sobre os pacotes serão exibidas no campo

“Informações”, mas, em alguns casos, a informação apresentada não está totalmente

correta. Por exemplo, ao escolher o pacote Pidgin, a instalação informa o que esse pacote

“precisa ter” na instalação.

O Pidgin é um programa semelhante ao MSN, e na instalação de um Servidor é

completamente descartável.

Figura 9: Informações sobre os pacotes

Ao concluir a escolha dos pacotes que farão parte da instalação, deve-se clicar no botão

“Instalar” para que a instalação realmente inicie, com a transferência dos pacotes do DVD

para o disco rígido do computador.

Page 30: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

30

Após a escolha dos pacotes individuais a instalação “de fato” iniciará, e o tempo total, do

processo, dependerá dos pacotes escolhidos, e da velocidade do leitor de DVD e do disco

rígido.

Atualmente, na maioria dos computadores, demora cerca de 1 hora.

Figura 10: Instalação “de fato”

Page 31: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

31

UNIDADE 4

Instalação 03 - Configuração Objetivo: Conhecer os passos necessários para instalar o Mandriva 2009 em um computador habilitado para Servidor.

Instalação do Mandriva Linux 2009

Após a conclusão da fase de transferência de arquivos, a instalação do sistema continuará, e

a etapa seguinte será a definição da senha do administrador do sistema (usuário ROOT) e

de um segundo usuário, que poderá ter qualquer nome.

Figura 1: Definição de usuários

Page 32: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

32

O Mandriva Linux 2009, e a maioria das distribuições Linux, não proíbe a utilização de

determinadas senhas, indicando apenas se as senhas são “fortes” ou “fracas”.

Figura 2: Criação das senhas do Root e de um usuário adicional

Ao preencher os campos, deve-se clicar no botão “Próximo” para continuar a instalação.

Page 33: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

33

A próxima tela irá fornecer as opções de escolha da resolução do monitor que será utilizada

no computador. A escolha poderá ser feita tanto de um fabricante específico, ou utilizando-se

a opção “Genérico”, que foi a escolhida para a figura 3:

Figura 3: Escolha da resolução do monitor

Após a escolha da resolução, deve-se clicar no botão “Próximo”.

Page 34: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

34

A tela apresentada mostra um resumo da configuração adotada para o Servidor.

Caso seja necessário realizar alguma alteração, deve-se clicar no botão “Configurar”.

Por exemplo, se for necessário alterar o Fuso Horário do Servidor, deve-se clicar no botão

“Configurar” colocado à frente do item “Fuso Horário – Brazil/East”, como mostra a figura 4:

Figura 4: Alteração do Fuso Horário

Page 35: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

35

A tela mostrada irá apresentar as opções de fusos horários disponíveis, devendo-se escolher

a mais adequada para utilização do Servidor, como mostra a figura 5:

Figura 5: Escolha do fuso horário

Após a definição do fuso horário, deve-se clicar no botão “Próximo” para continuar a

instalação.

Page 36: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

36

Além do fuso horário, será escolhida a hora do servidor, podendo-se escolher também a

opção de sincronização que, para a instalação adotada neste Módulo, foi deixada

desmarcada (sem sincronização).

Figura 6: Definição do horário e da sincronização

Após a escolha da hora certa e da sincronização, deve-se clicar no botão “Próximo” para

continuar a instalação.

Page 37: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

37

A penúltima tela da instalação apresenta uma opção de se realizar a atualização dos

pacotes, por versões mais recentes, caso existam.

Na instalação adotada neste Módulo, não foi feita a atualização, foram utilizados exatamente

as versões dos pacotes disponíveis na distribuição Mandriva Linux 2009 Spring.

Figura 7: Atualização dos pacotes

Após a escolha da atualização, deve-se clicar no botão “Próximo” para continuar a

instalação.

Page 38: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

38

A última tela da instalação mostrará uma mensagem parabenizando pela instalação,

informando que a instalação foi realizada corretamente, como pode ser visto na figura 8:

Figura 8: Mensagem parabenizando a instalação

Com o término da instalação do Mandriva Linux 2009, deve-se clicar no botão “Reiniciar”

para que o sistema operacional seja carregado e comece-se a sua utilização.

Page 39: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

39

Após a instalação e reinicio do computador, a primeira tela mostrada é a tela de opção de

instalação.

Deve-se escolher a opção “Iniciar Mandriva Linux 2009 Spring”, para começar a utilizar o

Servidor.

Figura 9: Inicialização do Servidor

A opção “Iniciar Mandriva Linux 2009 Spring (modo seguro)” deve-se escolhida, caso queira

realizar algum tipo de manutenção específica no Servidor.

Page 40: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

40

Quando se inicia o Servidor pela primeira vez, uma mensagem de “Boas Vindas” é

apresentada.

Basta clicar no botão “Fechar” para continuar a inicialização do sistema e essa tela não será

mostrada em outras inicializações.

Figura 10: Tela de Boas Vindas

Page 41: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

41

Ao carregar o sistema operacional, a primeira tela mostrada pede que seja informado um

usuário para utilizar o computador.

Pode-se escolher tanto o usuário cadastrado na instalação (ou algoutro cadastrado

posteriormente), como o usuário root. Sendo que o usuário root não aparece na lista de

usuários, como mostra a figura 11:

Figura 11: Tela de entrada de usuário

Page 42: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

42

Quando se informa o nome de usuário e a senha correta, o sistema carregará a interface

gráfica padrão, que para este Módulo será adotada a interface KDE, como pode ser visto na

figura 12:

Figura 12: Interface KDE

Nas próximas unidades serão apresentados os conceitos e programas que serão utilizados

para a manutenção e administração de um Servidor Linux.

Page 43: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

43

UNIDADE 5

KDE Objetivo: Conhecer a interface gráfica KD, seu funcionamento e suas características.

1 Introdução

O KDE é um projeto iniciado em 1996, que tinha como propósito o desenvolvimento de um

ambiente gráfico para interação com sistemas Unix. A sigla KDE significa “K Desktop

Environment”, ou “Ambiente de Trabalho K”.

A equipe inicial foi liderada por Matthias Ettrich, que teve como inspiração o ambiente CDE,

“Common Desktop Environment”, utilizado em sistemas desenvolvidos pelas empresas SUN,

IBM, HP, dentre outras.

O KDE começou a ser desenvolvido em 1996, e a

primeira versão publicada para ser utilizada foi

lançada em 1998. Este ambiente rapidamente obteve

sucesso no sistema operacional Linux, tornando-se a

interface gráfica padrão nas distribuições Red Hat,

Conectiva, SuSE, e várias outras disponíveis no final

da década de 90. Atualmente, junto com a interface

Gnome, é disponibilizado em praticamente todas as

distribuições Linux.

1996 Início do projeto KDE

1998 Entregue o ambiente KDE 11999

2000

2001

2002 É lançado o KDE 3.0

2008 Atual versão completa: KDE 4.02009

Ajustes na versão 1.0 resultaram no KDE 1.1

Atualizações e aprimoramentos resultaram no KDE 2.0Atualizações incrementais formaram as versões 2.1 e 2.2

Depois de atualizações e correções, a versão atual é a 4.3

Page 44: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

44

O KDE atualmente é entregue com um conjunto de aplicativos e utilitários que permitem aos

usuários terem um ambiente realmente amigável e confortável de ser utilizado. Uma lista

parcial de aplicativos do KDE inclui:

Descrição Aplicativo Ícone

Gerenciador Multimídia Amarok

Ambiente de Desenvolvimento de Programas KDevelop

Emulador de Terminal de modo texto Konsole

Navegador para Internet Konqueror

Suíte de Escritório KOffice

Mapas Geográficos KGeography

Tabela 1: Programas e Utilitários disponíveis no KDE

Algumas tecnologias não presentes nas versões anteriores foram adicionadas à versão 4.0,

e são:

1) Utilização de “widgets”, pequenos utilitários gráficos, que podem ser instalados por

qualquer usuário;

2) Biblioteca integrada para desenvolvimento de aplicações multimídia;

3) Biblioteca integrada para acesso aos periféricos;

4) Biblioteca para processamento simétrico, que melhora o desempenho do ambiente em

computadores com processadores de vários núcleos;

Page 45: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

45

2 Ambiente Gráfico

Nesta Unidade, serão mostradas algumas telas da interface KDE, e algumas de suas

características.

A primeira tela do KDE pode ser vista na figura 1, onde estão presentes a Área de Trabalho,

o Menu Inicial, alguns botões de comando, o Gerenciador de Ambiente, a Barra de Tarefas, e

no canto inferior esquerdo a Área de Avisos.

Figura 1: Tela inicial do KDE

Page 46: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

46

O Menu Iniciar do KDE é muito parecido como o botão Iniciar do MS-Windows, apresentando

uma lista de itens incluindo programas, comandos e outras opções.

Para ativar o Menu Iniciar do KDE no Mandriva Linux, basta clicar no ícone azul em forma de

estrela, localizado no canto inferior direito, como pode ser visto na figura 2:

Figura 2: Menu Iniciar do KDE

Page 47: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

47

A figura 3 mostra o funcionamento do Gerenciador de Arquivos do KDE. Seu formato é um

pouco diferente do MS-Windows Explorer, mas algumas características são semelhantes:

Figura 3: Gerenciador de Arquivos

Do lado esquerdo do Gerenciador de Arquivos são mostrados os diretórios do sistema. Os

ícones dos arquivos são identificados de acordo com o tipo de arquivo. E no lado direito,

quando se clica em um arquivo, é exibida uma breve descrição, e visualização, do arquivo.

Page 48: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

48

A figura 4 mostra a utilização de alguns “widgets” no KDE:

Figura 4: Widgets no KDE

Os widgets disponíveis abrangem uma variada gama de opções, e vários outros podem ser

procurados na internet. Em um computador servidor, a utilização de alguns widgets pode ser

interessante, pois mostram algumas características diretamente, agilizando a detecção de

anomalias.

Page 49: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

49

A figura 5 mostra o Centro de Controle do Mandriva Linux, através deste recurso pode-se

configurar uma série de características do sistema:

Figura 5: Centro de Controle

Page 50: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

50

O Centro de Controle é acessado a partir da opção “Configure seu Computador” no menu

principal, ou na barra de ferramentas:

Para conseguir executar todas as tarefas deste curso será necessário utilizar o usuário

ROOT. Este é o principal usuário no Linux, e o que tem permissão para executar todos os

programas.

Page 51: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

51

Por padrão não é possível fazer Login com o usuário ROOT, mas para que isso aconteça é

necessária apenas uma alteração no arquivo “/var/lib/mandriva/kde4-

profiles/common/share/config/kdm/kdmrc”.

Este arquivo possui um campo chamado “AllowRootLogin”, que deve receber o valor “true”

para permitir que o usuário ROOT faça login no KDE.

Page 52: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

52

UNIDADE 6

Instalação de Programas Objetivo: Conhecer a instalação de aplicativos e utilitários, no Mandriva.

1 Introdução

No Linux, e em diversos sistemas operacionais, tudo que se faz é com o auxílio de

programas. Os programas possuem instruções específicas para a realização de tarefas,

como o Open Office Writer que é um editor de textos ou o Dolphin, o gerenciador de arquivos

do KDE. Esses dois exemplos são de programas “grandes” e complexos, mas existem

programas mais simples, como o TAR, que é um programa para a compactação de arquivos.

No Linux todos os utilitários, aplicativos, comandos e servidores (daemons), são programas.

Alguns programas são utilizados para iniciar outros programas, como o Bash Shell. Outros

são utilizados para finalizar todos os programas, como o Shutdown.

No Mandriva Linux, e em várias outras distribuições Linux, a principal ferramenta para a

instalação de programas é o RPM. A sigla RPM representa “RedHat Package Manager”, que

significa “Gerenciador de Pacotes RedHat”.

Como o próprio nome induz, este gerenciador foi criado pela

empresa RedHat para a sua distribuição, e por consequência,

pode ser utilizado em todas as distribuições derivadas da

RedHat.

O gerenciador de instalação denomina “pacote” todos os programas do Linux, assim, neste

módulo, deste ponto em diante, será utilizado o termo Pacote, para se referir a qualquer

programa instalável no Linux.

Page 53: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

53

O nome pacote surgiu do fato de que o arquivo de instalação não contém apenas uma única

informação, mas um conjunto de informações que serão utilizadas para auxiliarem o

processo de instalação do programa. O pacote pode conter: arquivos de configuração,

arquivos de documentação, manuais, arquivos com código fonte, programas executáveis, e

outras informações.

A lista de distribuições Linux, que utiliza o RPM para instalar pacotes, é constituida,

principalmente, por:

RedHat Enterprise

Fedora

Mandriva Conectiva

PCLinuxOS

Red Flag Linux

CentOS

Novell SUSE Linux Enterprise

openSUSE

ArkLinux

Yellow Dog Linux

Linux XP

TurboLinux

Openmamba.

Page 54: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

54

Funcionamento do RPM

Um pacote é um arquivo binário que contém as seguintes informações:

1) Início: identifica-o como sendo um pacote RPM, e possui algumas informações de

controle.

2) Assinatura: utilizada para garantir que o pacote que está sendo instalado realmente

corresponde às informações contidas no cabeçalho. Esse campo é importante, pois

minimiza significativamente a instalação de pacotes errados, e principalmente,

pacotes falsos.

3) Cabeçalho do Arquivo: inclui informações referentes: ao nome do pacote, versão,

arquitetura de instalação (SPARC, x86, PowerPC), ou seja, do arquivos que formam o

pacote.

4) Arquivos de Instalação: é formado pelos arquivos que fazem parte do pacote.

O arquivo do pacote de instalação possui a terminação “.rpm”, e é um arquivo comprimido,

pelo gzip ou bzip2, contendo todos os dados descritos anteriormente.

Em cada distribuição Linux que utiliza a instalação através de pacotes RPM existe um

arquivo no diretório “/var/lib” chamado “rpm”, que contém um banco de dados de todos os

pacotes rpm instalados no computador. Esse arquivo sempre é verificado quando se deseja

fazer uma instalação ou desinstalação de um pacote.

Page 55: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

55

2.1 Formato do Pacote

Todo arquivo RPM, que contém um aplicativo ou um utilitário, é entregue obedecendo uma

nomenclatura específica:

Figura 1: Pacote de Instalação

Exemplos:

1) abiword-2.6.4-42.46.x86_64.rpm

Nome: abiword

Versão: 2.6.4-42.46

Distribuição: sem especificação.

Arquitetura: Sistemas de 64 bits Intel ou AMD

2) MySQL-server-community-5.0.83-0.rhel5.ia64.rpm

Nome: MySQL Server Community

Versão: 5.0.83-0

Distribuição: RedHat Enterprise Linux 5

Arquitetura: Intel Itanium

3) MySQL-server-community-5.0.83-0.sles10.i586.rpm

Nome: MySQL Server Community

Page 56: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

56

Versão: 5.0.83-0

Distribuição: SUSE Linux Enterprise Server 10

Arquitetura: Sistemas de 32 bits Intel ou AMD

4) man-pages-pt_BR-1.39-12362cl.noarch.rpm

Nome: Man Pages em Português Brasileiro

Versão: 1.39-12362cl

Distribuição: sem especificação.

Arquitetura: noarch (instalável em qualquer arquitetura)

Os arquivos RPM que contém o código fonte de um aplicativo ou utilitário possuem uma

pequena alteração na parte final do arquivo:

Figura 2: Pacote de código fonte Exemplos:

1) qt-4.5.2-3.fc12.src.rpm

Nome: Qt toolkit

Versão: 4.5.2-3

Distribuição: Fedora 12

Page 57: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

57

2) mysql-5.1.34-2mdv2009.1.src.rpm

Nome: MySQL Client

Versão: 5.1.34-2

Distribuição: Mandriva 2009.1

3 Utilitários

Atualmente as principais distribuições Linux incluem um utilitário que auxilia a instalação dos

pacotes, tornando esta tarefa muito simples:

YUM: presente no Fedora, RedHat, CentOS e outros;

up2date: utilizado em versões anteriores do RedHat;

Synaptic: desenvolvido para o PCLinuxOS;

YaST: utilizado nas distribuições SUSE e openSUSE;

rpmdrake: presente no KDE distribuido com o Mandriva;

SMART: incluído em várias distribuições derivadas do Fedora;

4 Bancos De Dados Sobre RPM Na Internet

A Internet é uma grande ferramenta de informações, e os serviços de informações de

pacotes RPM existem em vários locais. Alguns dos principais são:

Page 58: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

58

1) RPM find: http://www.rpmfind.net

2) RPM Pbone: http://rpm.pbone.net

Page 59: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

59

3 Rpmdrake

A utilização do RPMDrake é muito simples. Basta selecioná-lo a partir do Centro de Controle,

escolhendo a opção “Instalar e Remover Programas” que o RPMDrake será iniciado, como

mostra a figura 3:

Figura 3: Tela do RPMDrake

Com o RPMDrake o usuário poderá ver o conjunto de programas instalados e ainda, quais

podem ser instalados. Para instalar um pacote, basta selecionar o pacote desejado e clicar

no botão “Aplicar” localizado no canto inferior direito.

Se necessitar instalar mais de um pacote, basta selecionar, primeiro, todos os pacotes e

depois clique em “Aplicar”.

Page 60: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

60

5 Instalação Manual

Se o programa que se quer instalar não for mostrado no RPMDrake, utiliza-se a instalação

manual, através do programa RPM, pelo Terminal de Comandos.

Para instalar um programa, basta digitar o seguinte:

$ rpm -i <pacote>

Se o objetivo é instalar o pacote MySQL Server Community 5.0.83, deve-se ir para o diretório

que contém o arquivo de instalação deste pacote e digitar:

$ rpm -i MySQL-server-community-5.0.83-0.sles10.i586.rpm

Para remover um programa:

$ rpm -e <pacote>

Se desejar remover o pacote MySQL-server-community, digita-se:

$ rpm -e MySQL-server-community

Para consultar se um pacote está instalado:

$ rpm -q <pacote>

Page 61: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

61

UNIDADE 7

Manpages = Documentação Interna Objetivo: Entender o acesso da documentação interna do Linux e do Mandriva.

1 Introdução

Uma das características mais conhecidas dos sistemas Unix e similares, incluindo o Linux, é

a existência de um programa que contém uma grande documentação sobre o sistema Unix,

e seus programas utilitários.

Esse programa é chamado de MANPAGE, que e a junção das palavras manual e pages

(páginas). Este programa é um “utilitário de documentação”, e é organizado em páginas, e

cada página faz uma referência a algum dos muitos utilitários existentes nos sistemas Unix.

Page 62: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

62

2 Utilização

Para utilizar o utilitário de documentação, digite o comando “man”, de manual, na linha de

comando do sistema, e o programa que será verificado:

$ man unix

Figura 1: Utilitário de Documentação

Page 63: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

63

O utilitário manpage apresenta uma vasta documentação sobre vários programas, funções,

utilitários e termos em geral. A apresentação da documentação obedece um padrão, mas em

alguns casos este padrão não é seguido.

Em relação ao idioma, grande parte da documentação é traduzida para os disversos idiomas

existentes no mundo, mas isso não acontece em todos os casos. A maior parte da

documentação, não traduzida, está em inglês, mas, no Mandriva Linux 2009, podem surgir

outros idiomas, como espanhol ou francês.

3 Formato De Apresentação

A documentação é apresentada em um formato próprio, dividindo o texto em alguns tópicos.

Os principais tópicos são:

Nome: contém o nome do programa, ou função, ou utilitário, ou termo e, em alguns casos,

contém também uma lista de termos associados, seguida de uma rápida descrição de uma

ou duas linhas.

Sinopse: apresenta o contexto de utilização do programa ou função ou utilitário.

Descrição: contém uma descrição explicando o funcionamento do programa e algumas de

suas características.

Exemplos: explicações para a utlilização e melhorar o entendimento da documentação.

Veja também: mostra alguns casos extras, de termos que estão associados à documentação

que está sendo vista.

Alguns casos poderão incluir outros tópicos, diretamente relacionados ao programa que está

sendo visto ou incluídos pelo autor do texto da documentação: Opções de Entrada, Opções

de Formatação, Ambiente, Defeitos Conhecidos, Arquivos, Autor, Histórico, Registro, dentre

outros.

Page 64: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

64

4 Seções Do Manpages

Em alguns casos existirá mais de uma documentação para um determinado termo. Isto

acontece porque alguns comandos são utilizados tanto na linha de comando do Unix quanto

em programas de computador, como acontece com o comando “printf”.

A documentação do manpages é dividida em Seções, e cada seção irá tratar de um caso

específico de utilização daquele comando. Existem várias seções disponíveis para o

manpages, dependendo de qual sistema está em uso. A tabela 1 mostra as seções

presentes nas principais distribuições Linux e em algumas versões do Unix System IV:

Seção Tipo De Conteúdo

1 Comandos próprios do sistema, executados na linha de comando

2 Chamadas para o Sistema Operacional

3 Biblioteca de Funções da linguagem C

4 Arquivos Especiais (exemplo: unidades de dispositivo)

5 Formato de Arquivos

6 Jogos e Protetores de Tela

7 Seção Geral

8 Administração de Sistema e Daemons

Tabela 1: Seções presentas na manpages de algumas distribuições Linux

No Unix System V algumas seções são diferentes, mas este sistema é pouco utilizado, então

não será abordado.

Page 65: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

65

Alguns poucos sistemas, tanto Unix quanto Linux, podem possuir algumas seções extras:

Seção Tipo de Conteúdo

0 Biblioteca de Cabeçalho da linguagem C

9 Rotinas do Núcleo do Sistema

n Comandos TCL/TK

x Servidor de Interface X Window

p Comandos POSIX

Tabela 2: Seções extras do manpages

Exemplos de utilização:

$ man printf

$ man fork

$ man nfs

Page 66: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

66

$ man tcp

$ man ipconfig

$ man http

Para acessar a descrição desejada, basta informar o número desta ao executar o utilitário

“manpages”:

$ man 3 printf

Page 67: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

67

Além disso, pode-se combinar o utilitários “manpages” com outros utilitários presentes no

sistema, como pode ser visto na figura 2:

$ man printf > printf.txt

Figura 2: Comando “$ man printf > printf.txt” para gravar um arquivo texto

Page 68: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

68

5 Manual e Documentação do Mandriva

O Mandriva Linux também possui uma documentação própria, disponível em arquivos HTML,

que são acessíveis pelo Menu Iniciar do KDE, como pode ser visto na figura 3:

Figura 3: Manual e Documentação do Mandriva

A diferença desses manuais é que o enfoque para o Mandriva é a utilização de interfaces e

utilitários gráficos para a realização das tarefas.

Page 69: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

69

UNIDADE 8

Programação Objetivo: Conhecer a programação no Linux utilizando Bash Shell.

1 Introdução

Uma das características do Linux é a possibilidade de construção de pequenos programas,

chamados scripts, que são utilizados para realizarem pequenas tarefas de maneira

automatizada.

Estes programas são executados através da própria linha de comando, pois muitas

distribuições disponibilizam um utilitário de comando compatível com o Bash Shell, que é o

interpretador dos scripts.

Os scripts permitem a automação do processo de criação de usuários em grandes empresas,

ou a automação da instalação de alguns programas, e podem ser utilizados por todos os

usuários do sistema.

Nesta Unidade serão apresentados os conceitos básicos de programação no Linux.

2. Funcionamento dos Scripts

Os scripts do Linux são criados em arquivos de texto, sendo executados diretamente, não

havendo necessidade de compilação (processo de conversão do código fonte para código

executável). A execução direta é chamada de Interpretação, e o interpretador mais utilizado

no sistema Linux é o Bash Shell.

Page 70: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

70

Para criar um script deve-se, antes, criar um arquivo texto, por exemplo com o nome

“script1”, informar qual será o interpretador a ser utilizado, e incluir os comandos desejados,

como pode ser visto na figura 1:

1:

2:

#!/bin/bash

echo 'Primeiro script.'

Figura 1: Primeiro script

A linha 1 do script da figura 1 define o interpretador Bash Shell, e a linha 2 utiliza um

comando que exibirá uma mensagem na tela, no caso a mensagem é: “Primeiro script”.

Todos os comandos utilizados na linha de comando (Konsole) poderá ser utilizados para a

criação de scripts.

Para executar um script deve-se realizar os seguintes procedimentos:

1) Alterar a permissão do arquivo para “executável”

2) Digitar o nome do arquivo onde foi gravado o script, precedido por “./”

Page 71: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

71

Em relação à “Permissão do Arquivo”, serão vistos com maiores detalhes todas as opções

possíveis na Unidade 13. Por enquanto o comando que será utilizado é: $ chmod 755

<arquivo>, como pode ser visto na figura 2:

Figura 2: Alteração da permissão para “executável” e execução do script1

3 Construção De Scripts

A construção de scripts no Linux é muito semelhante à construção de programas tradicionais,

em Linguagem C ou Pascal. Um script poderá ser formado por:

Variáveis: armazenam informações temporariamente;

Page 72: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

72

Comandos: executam rotinas pré-definidas;

Funções: executam rotinas definidas pelo programador.

Na figura 3 é apresentado mais um exemplo de script, contendo algumas variáveis:

Figura 3: Script contendo declaração de variáveis

Page 73: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

73

Os comandos que estão disponíveis, através do próprio Bash Shell, para a criação de scripts

são:

Comando Descrição echo Exibe uma informação na tela read Lê informações digitadas no teclado exit Termina a execução do script clear Limpa a tela sleep Paralisa temporariamente a execução do script tput Altera o modo de exibição stty Configura a utilização do terminal de comando if Verificador condicional case Verificador de expressão for Comando de repetição determinada while Comando de repetição condicional Tabela 1: Comandos próprios do Bash Shell

Além desses comandos, pode-se utilizar qualquer comando/programa do Linux: ls, cp, cron,

adduser, entre outros.

Existem algumas características que são próprias no Bash Shell para a utilização de alguns

comandos, as principais são: Tratamento de Mensagens de Texto e Comando IF

3.1 Tratamento de Mensagens de Texto

A criação de uma variável de texto, como foi demonstrado na figura 3, é muito simples. Mas

algumas considerações devem ser observadas: O texto poderá ser escrito de três modos

diferentes:

Aspas Duplas ( “ “ ): as variáveis dentro do texto serão tratadas;

Aspas Simples ( ' ' ): o texto será exibido literalmente;

Page 74: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

74

Crase ( ` ` ): executarão um comando dentro do texto.

Figura 4: Script com 3 tipos de mensagens

3.2 Comando If

O comando IF é muito semelhante ao utilizado em outras linuagens, as diferenças são na

terminação do comando e na maneira como as condições são escritas nos scritps.

Page 75: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

75

Um comando IF deve obedecer a seguinte sintaxe:

if condição

then

comandos executados quando a condição é verdadeira

else

comandos executados quando a condição é falsa

fi

Figura 5: Comando IF

Nas linguagens tradicionais, quando se deseja verificar se uma variável é maior que outra,

escreve-se o seguinte comando: IF Var1 > Var2 THEN …

Na programação de scripts do Linux o mesmo comando deve ser escrito da seguinte

maneira: IF [ Var1 -gt Var2 ] THEN …

As condições matemáticas ( =, ≠, >, ≥, < e ≤ ) são escritos através de códigos. A tabela 2

mostra uma lista de equivalência entre as condições matemáticas:

Condição Matemática Equivalência no Script

= -eq ≠ -ne > -gt ≥ -ge < -lt ≤ -le Tabela 2: Equivalência entre condições matemáticas e comandos do script

Page 76: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

76

Além das condições matemáticas, existem as condições de arquivo e diretório:

Condição Descrição -s arquivo Verifica se o arquivo não está vazio -f arquivo Verifica se é um arquivo -d diretório Verifica se é um diretório -w arquivo Verifica se o arquivo pode ser escrito -r arquivo Verifica se o arquivo é apenas de leitura -x arquivo Verifica se o arquivo é executável

Tabela 3: Condições para verificação de arquivos

Existem também os operadores lógicos, utilizados quando se deseja incluir mais de uma

condição em um comando IF:

Condição Lógica Descrição ! Negação -a E (and) -o OU (or) Tabela 4: Operadores Lógicos

E para concluir, os comandos para verificação de textos:

Verificação Descrição texto1 = texto2 Verifica se são iguais texto1 != texto2 Verifica se são diferentes -n texto Verifica se o texto não é nulo -z texto Verifica se o texto é nulo Tabela 5: Operadores Lógicos

A seguir, na figura 6, é apresentado um script contendo alguns dos comandos vistos nesta

Unidade:

Page 77: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

77

Figura 6: Script final com comandos gerais

4 Outros Comandos

A seguir uma lista com alguns comandos adicionais que podem ser utilizados em programas

feitos para o Bash Shell do Linux:

Comando FOR: utilizado para repetir uma sequência de instruções de acordo com um

valor pré-definido;

Comando WHILE: utilizado para repetir uma sequência de instruções de acordo com

uma condição pré-definida;

Comando CASE: utilizado para executar uma sequência de instrções de acordo com

um valor informado.

Page 78: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

78

UNIDADE 9

Gerenciamento de Processos Objetivo: Conhecer o gerenciamento e controle de programas em execução no Linux.

1 Introdução

Um processo, na maioria dos sistemas operacionais, é o nome dado a um programa em

execução. No Linux, tanto os comandos, quanto utilitários e aplicativos, são todos

considerados processos.

Existe uma série de utilitários que auxiliam o gerenciamento dos processos em execução,

permitindo que o usuário tenha o controle sobre eles.

Nesta Unidade serão mostradas algumas características dos processos no Linux, e algumas

ferramentas de manipulação de processos.

Exemplos de ferramentas:

Nativas do Linux:

TOP, PS e KILL;

Nativas do Mandriva:

Monitor de Sistema

Page 79: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

79

2 Características de um Processo

Todos os processos são programas em execução gerenciados pelo sistema operacional.

Para realizar este gerenciamento, os processos são criados com características que serão

utilizadas e manipuladas durante a sua execução.

Dentre as principais características destacam-se:

Proprietário: usuário que iniciou a execução do programa que originou o processo;

Estado: indica o estado de execução do processo, os mais comuns são:

o D (Aguardando) processo espera a liberação de algum recurso;

o R (Executando) processo realizando alguma tarefa;

o S (Parado) alguma tarefa interrompeu a execução do processo;

o Z (Zumbi) o processo finalizou, mas ainda permanece carregado na memória.

Prioridade: indica a prioridade de execução do processo por um valor numérico.

Quanto menor o valor, maior é a prioridade de execução;

Comando: comando que originou a execução do processo.

Além das características citadas acima, existem outras, como: tempo de execução, consumo

de processador, consumo de memória, entre outras.

Figura 1: Processos em Execução

Page 80: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

80

3 Comando Top

O comando TOP é utilizado para mostrar os processos em execução no computador. A

figura 2 mostra uma apresentação deste comando:

Figura 2: Comando TOP

Através do comando TOP pode-se visualizar uma série de características dos processos em

execução, e escolhê-las para serem exibidas na tela. o TOP permanece em execução

continua, isto é, após a exebição dos processos em execução, o comando continua em

execução, atualizando as informações sobre os processos até o momento em que o usuário

queira finalizar o TOP.

Page 81: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

81

Na figura 2 as características escolhidas foram as seguintes:

Característica Descrição PID Número de identificação para o processo. UID Número de identificação do usuário que iniciou o

processo.

USER Nome do usuário que iniciou o processo. PR Prioridade do Processo. TIME Tempo de execução. RES Quantidade de memória utilizada. VIRT Imagem Virtual. Flags Flags de execução. Time+ Tempo de execução “extendido”, inclui os segundos. %CPU Percentual de utilização do Processador. %MEM Percentual de utilização da Memória. S Estado do Processo. COMMAND Comando que originou o processo.

Tabela 1: Características apresentadas pelo comando TOP

Para visualizar todas as opções de características que poderão ser visualizadas pelo TOP,

basta pressionar a tecla “f” de Fields, que significa Campos.

Page 82: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

82

4. Comando Ps

O comando PS é semelhante ao comando TOP; a diferença é que o TOP permanece em

execução continua e o comando PS não. O comando PS mostra os processos executados, e

suas características, no instante em que o comando é acionado, como pode ser visto na

figura 2:

Figura 3: Comando PS

As colunas exibidas pelo comando PS podem ser escolhidas pelo usuário, utilizando as

opções extras do comando. Para a opção “u” são exibidas as colunas:

USER: Número de identificação do usuário;

PID: Número de identificação do processo;

%CPU: Percentual de utilização do processador;

%MEM: Percentual d utilização da memória;

VSZ: Memória Virtual (Disco-Rígido);

RSS: Memória Residente (RAM);

TTY: Terminal ou Console de inicialização do processo;

STAT: Status do processo;

START: Hora de início do processo;

TIME: Tempo de execução;

COMMAND: Linha de comando do processo.

Page 83: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

83

As principais opções do comando PS são:

$ ps -AjF: exibe todos os processos em execução no computador;

$ ps -f u <usuário>: exibe todos os processos de <usuário>, se for deixado em

branco, exibe os processos do usuário atual.

5 Comando Kill

O comando KILL é utilizado para enviar um sinal a um processo. Um sinal é um comando

especial enviado a um processo em execução. Os possíveis sinais são:

STOP: inativa temporariamente a execução de um processo;

CONT: reativa um processo que recebeu o sinal STOP;

SEGV: informa erros de memória;

TERM: ordena o término da execução de um processo;

ILL: informa erros de execução de instruções;

KILL: mata um processo que parou de responder.

O comando KILL geralmente é utilizado para encerrar a execução de um processo que

apresentou algum erro de execução e não poderá finalizar corretamente. Mas também pode

ser utilizado em programas que estão consumindo muito tempo, ou muitos recursos do

computador.

Page 84: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

84

A figura 4 mostra um exemplo de processo, criado a partir do script PRG_TESTE, e que ao

executar assume o PID 14036, que está executando ( STAT = R+ ) e que está consumindo

58,5% do processador:

Figura 4: Processo com erro de execução.

Page 85: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

85

Outro caso é apresentado na figura 5, onde um programa escrito em Linguagem C,

PROG_MEM.C, consome 256MB de memória, correspondente à 51,4% da memória RAM

disponível no computador:

Figura 5: Processo consumindo muita memória

Page 86: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

86

6 Monitor De Sistema

O Mandriva Linux também possui um gerenciador de processos gráfico, chamado de Monitor

do Sistema, que pode ser visto na figura 6:

Figura 6: Monitor do Sistema

Page 87: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

87

Para enviar um sinal a um processo, basta clicar com o botão direito em cima do processo,

como pode ser visto na figura 7:

Figura 7: Enviando um sinal

Page 88: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

88

Para visualizar a utilização geral dos recursos do computador, basta clicar na aba “Carga do

Sistema”, como demonstrado na figura 8:

Figura 8: Carga do Sistema

Page 89: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

89

UNIDADE 10

Runlevels = Níveis de Execução Objetivo: Conhecer a inicialização de processos, dentro do Linux.

1 Introdução

O primeiro programa do Linux a ser inicializado é o INIT e como esse Módulo é baseado no

Mandriva Linux 2009, o programa INIT será estudado nesta Unidade.

Este programa é utilizado para determinar a maneira como todos os processos serão

criados. Para isso, o INIT lê o conteúdo do arquivo “/etc/inittab”, pois neste arquivo estão

descritas as configurações de inicialização dos processos.

A principal característica de execução de um processo é o “Nível de Execução” (Run Level,

em inglês). É a definição do nível de execução que determinará como os processos serão

executados pelo sistema operacional.

Algumas distribuições Linux utilizam uma configuração de inicialização semelhante ao BSD,

como acontece com o Slackware. Em outras versões a inicialização é controlada por um

programa chamado UPSTART, sendo este o programa adotado no Ubuntu.

2 Nível de Execução de um Processo

O Nível de Execução determina como um processo será executado, isto é, quais as

possibilidades de execução de um determinado processo. Por exemplo: o comando LS só

pode ser executado pelo terminal de comandos, em modo texto. No modo gráfico (KDE ou

Gnome) é iniciado um aplicativo gráfico, Konsole, que possibilita a execução de comandos

Page 90: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

90

em modo texto. Atualmente existem ao todo 10 níveis de execução nas diversas distribuições

do sistema operacioal Linux e Unix:

Nível Descrição 0 Modo de Inicialização 1 Modo de execução para Usuário Único 2 Modo de execução para Multi-usuário, sem NFS 3 Modo de execução para Multi-usuário Completo 4 Reservado 5 Modo de execução para Ambiente Gráfico 6 Modo de Reinicialização 7 Modo de Desligamento 8 Utilizado em sistemas Unix dedicados 9 Utilizado em sistemas Unix dedicados

Tabela 1: Valores para os Níveis de Execução

O Nível 1 em algumas versões do Unix é chamado de Nível S (Single).

Os valores dos níveis de execução são informados no arquivo /etc/inittab, e um mesmo

processo poderá ter mais de um valor para o seu nível de execução. que será mostrado na

próxima unidade.

Page 91: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

91

3 Arquivo /Etc/Inittab

O arquivo /etc/inittab (Tabela de Inicialização) armazena a configuração de inicialização que

será realizada pelo programa INIT.

O arquivo /etc/inittab do Mandriva Linux é mostrado parcialmente na figura 1:

# Default runlevel. id:5:initdefault: # System initialization. si::sysinit:/etc/rc.d/rc.sysinit l0:0:wait:/etc/rc.d/rc 0 l1:1:wait:/etc/rc.d/rc 1 l2:2:wait:/etc/rc.d/rc 2 l3:3:wait:/etc/rc.d/rc 3 l4:4:wait:/etc/rc.d/rc 4 l5:5:wait:/etc/rc.d/rc 5 l6:6:wait:/etc/rc.d/rc 6 # Trap CTRL-ALT-DELETE ca::ctrlaltdel:/sbin/shutdown -t3 -r now # Single user mode ~~:S:wait:/bin/sh

Figura 1: Parte do arquivo /etc/inittab do Mandriva Linux 2009

O arquivo /etc/inittab segue o seguinte formato:

Identificador : Nível de Execução : Ação : Processo

O campo Identificador armazena um valor referente à entrada na tabela de inicialização.

O campo Nível de Execução armazena o nível de execução do processo associado.

Page 92: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

92

O campo Ação armazena um das possíveis ações a ser tomada, em relação ao

processo associado:

respawn: o processo será reinicializado, mesmo que termine sua execução

normalmente.

wait: o processo iniciará quando seu nível de execução for iniciado, e o programa INIT

aguardará o término do processo.

once: o processo iniciará apenas quando o seu nível de execução for iniciado.

boot: o processo iniciará durante a inicialização do sistema.

bootwait: o processo é iniciado durante a inicialização do sistema, que será

interrompida, e retomada apenas com o término da execução do processo.

off: não executa o processo.

ondemand: o processo iniciará quando o nível de execução for iniciado.

initdefault: especifica qual nível de execução será iniciado ao terminar a inicialização

do sistema.

sysinit: o processo iniciará, durante a inicialização do sistema, antes dos processos

marcados com boot ou bootwait.

powerwait: o processo receberá uma mensagem para encerrar, quando houver uma

falha no fornecimento de energia. (queda da carga da bateria, por exemplo)

powerfail: o processo será automaticamente encerrado, quando houver falha no

fornecimento de energia.

powerokwait: o processo iniciará quando a energia for reativada.

ctrlaltdel: O processo iniciará ao pressionar as teclas “CTRL + ALT + DEL”

kbrequest: O processo iniciará quando o INIT receber um sinal do teclado.

Page 93: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

93

O campo Processo armazena o processo que será executado.

Os trechos do arquivo /etc/inittab mostrados na figura 1 definem o seguinte:

id:5:initdefault:

o Identificador: id

o Nível de Execução: 5

o Ação: initdefault (Faz o Nível 5 ser o nível de execução ao terminar a

inicialização do sistema)

o Processo: <vazio>

si::sysinit:/etc/rc.d/rc.sysinit

o Identificador: si

o Nível de Execução: <vazio>

o Ação: sysinit (o processo iniciará na inicialização do sistema)

o Processo: /etc/rc.d/rc.sysinit

l0:0:wait:/etc/rc.d/rc 0

l1:1:wait:/etc/rc.d/rc 1

l2:2:wait:/etc/rc.d/rc 2

o Identificador: 10,

11,

12,...

Page 94: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

94

o Nível de Execução: 0,

1,

2,...

o Ação: wait (o processo iniciará quando iniciar o nível de execução)

o Processo: /etc/rc.d/rc 0,

o /etc/rc.d/rc 1,

o /etc/rc.d/rc 2, ...

ca::ctrlaltdel:/sbin/shutdown -t3 -r now

o Identificador: Ca

o Nível de Execução: <vazio>

o Ação: ctrlaltdel (o processo iniciará quando for pressionado “CTRL+ALT+DEL”)

o Processo: /sbin/shutdown -t3 -r now

~~:S:wait:/bin/sh

o Identificador: ~~

o Nível de Execução: S (poderia ser 1)

o Ação: wait

o Processo: /bin/sh

Page 95: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

95

FÓRUM I

Em ambientes corporativos, Windows Server e Linux são as escolhas mais realizadas,

havendo quase uma disputa direta entre ambos. Linux é escolhido, entre outras razões, pelo

Custo/Benefício. E o Windows, dentre os vários motivos, também conta com a mesma

característica a seu favor.

Vamos refletir e debater:

Como é possível que dois sistemas apresentem como ponto forte o Custo/Benefício ? Como

esta análise é feita em cada um deles?

Antes de dar continuidade aos estudos é fundamental que você acesse sua SALA

DE AULA e faça a Atividade 1 no “link” ATIVIDADES.

Page 96: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

96

UNIDADE 11

Arquivos de Log Objetivo: Conhecer o registro de atividades realizadas pelo sistema e a detecção de ocorrência de falhas em processos.

1 Introdução

Quando um processo executa uma tarefa de maneira errada, por erro no código ou por falha

em algum equipamento, é desejável que alguma informação referente a esse erro seja

passada ao usuário do sistema, para que o mesmo possa corrigir o erro (quando for no

código) ou evitá-lo (quando for em um equipamento).

Os arquivos de Log são utilizados para auxiliar o usuário nesta tarefa de detecção de erros

na execução dos processos. Quando um processo não consegue completar uma tarefa com

sucesso, ou seja, há uma falha na execução da tarefa, algumas informações são gravadas

para que o usuário possa avaliar o que aconteceu durante a execução daquela tarefa.

A principal ferramenta no Linux para a gravação dos arquivos de Log é o utilitário SYSLOG.

2 Syslog

O SYSLOG realiza a tarefa de gravar mensagens referentes a:

Execução de processos;

Mensagens do kernel.

Page 97: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

97

Este utilitário é dividido em 3 módulos:

syslogd: daemon responsável pelo Log dos processos;

OpenLog: conjunto de funções para serem utilizadas em programas que serão

gerenciados pelo SYSLog;

Logger: utilitário de linha de comando, que permite interagir com o SYSLog

modificando algumas características da gravação dos Log's.

O mais importante dos 3 módulos é o syslogd que fará o controle e gravação dos Log's dos

processos.

3 Daemon Syslogd

O syslogd é o daemon, utilitário inicializado como serviço do sistema, responsável pela

gravação dos Log's dos processos, sendo dividido em 2 partes: klogd e syslogd.

3.1 Klogd

O klogd é o daemon responsável em gravar os Log's gerados pelo kernel do sistema. O

arquivo de Log é gravado no diretório “/proc”.

3.2 Syslogd

O syslogd é o daemon responsável por capturar os Log's de todos os processos, inclusive do

kernel, que são enviados para o klogd. Geralmente os arquivos de Log são gravados no

diretório “/var/log”, mas esse local pode variar de uma distribuição para outra.

Page 98: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

98

Os arquivos de Log são gravados geralmente com o nome do processo que gerou o Log

seguido da extensão “.log”:

Arquivo Descrição boot.log Informações sobre a inicialização do sistema. cron Diretório para gravar os Log's gerados pelo CRON. cups Diretório para gravar os Log's das impressoras. mysql.log Log's gerados pelo MySQL. auth.log Informações sobre autenticação. yum.log Log's gerados pelo Yum. Xorg.0.log Log's gerados pelo Servidor X. message Diretório de mensagens gerais.

Tabela 1: Arquivos de Log.

4. Visualizando o Log

Uma das maneiras mais utilizadas para visualizar um arquivo de Log é através do comando

TAIL, como pode ser visto na figura 1:

Figura 1: Utilização do comando TAIL

Page 99: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

99

Como pode ser visto na figura 1, o arquivo “auth.log” possui 18236 bytes, e seria inviável a

sua leitura completa. Para agilizar essa tarefa utiliza-se o comando TAIL, que exibe apenas

as últimas linhas.

Uma das informações vistas na figura 1 é a seguinte: o usuário RICARDOMS acessou a

conta do usuário ROOT. Se esse procedimento for autorizado, então não houve nenhuma

falha:

Sep 15 08:20:49 localhost su: pam_tcb(su:auth):

Authentication passed for root from ricardoms(uid=500)

Mas, se esse procedimento não foi autorizado, ocorreu um gravíssimo erro de segurança.

Uma boa tática para o monitoramento da segurança é o comando:

$ tail -f /var/log/secure

Este comando exibirá constantemente as últimas linhas do arquivo de Log de segurança,

possibilitando um acompanhamento contínuo da situação do servidor.

5 Configuração Do SYSLOG

A configuração do SYSLOG é realizada utilizando-se o arquivo “/etc/syslog.conf”. A sintaxe

básica deste arquivo é a seguinte:

recurso.ação arquivo

Os “recursos” são identificados para a gravação das mensagens. Os programas utilizados no

sistema utilizarão alguns destes recursos, e quando for um recurso que está em

Page 100: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

100

monitoração, um Log será gravado no arquivo especificado. No SYSLOG existem 21

recursos, os mais utilizados são:

Recurso Programas que utilizam kern Kernel do Linux user Programas do usuário mail Servidor de Correio daemon Daemon's inicializados auth Programas de Autenticação e Segurança cron CRON syslog O próprio SYSLOG * Todos os programas serão monitorados.

Tabela 2: Recursos disponíveis no SYSLOG.

As “ações” especificam o momento em que o Log será gravado:

Recurso Descrição emerg Emergência crítica alert Situação de emergência momentânea crit Condições críticas err Erro de execução warn Situação de advertência notice Situação para investigação info Informação debug Depuração de programas * Qualquer situação

Tabela 3: Ações que resultam em Log.

Page 101: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

101

Por exemplo:

user.* /var/log/user.log: gravará todas as mensagens de um usuário no arquivo

/var/log/user.log. Ex: login do usuário, inicialização de aplicativos, erros, etc.

kern.warn /var/log/kernel/warnnings.log: gravará todas as mensagens de advertência

originadas pelo kernel no arquivo /var/log/kernel/warnnings.log.

Ex: falha ao iniciar processo.

Para não acumular excesso de informação de Log, o Linux realiza a substituição dos Log's

antigos, utilizando o programa LOGROTATE. O arquivo de configuração é o

/etc/logrotate.conf.

Váirios programas auxiliares para o monitoramento de Log's foram desenvolvidos, sendo os

principais:

LogWatch

Syslog-NG

Swatch

LogCheck

Page 102: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

102

UNIDADE 12

Administração de Usuários Objetivo: Conhecer a administração de contas de usuários no Linux. Criar e gerenciar usuários do servidor.

1 Introdução

A principal tarefa de um administrador de Servidor é o Gerenciamento de Usuários. Os

usuários serão cadastrados para acessarem o Servidor, de acordo com regras estabelecidas.

Estas regras definirão, por exemplo, quais arquivos serão acessíveis por um determinado

usuários; os equipamentos que serão utilizados; os horários que o usuário poderão conectar-

se ao Servidor, entre outras.

Nesta Unidade serão vistos alguns comandos e utilirários que permitirão ao administrador

gerenciar os usuários.

Utilitários disponíveis no Mandriva Linux:

Através do Terminal de Comandos:

o Gerenciamento de Usuários: useradd, userdel, usermod, passwd;

o Gerenciamento de Grupos: groupadd, groupdel, groupmod;

Através do Centro de Controle:

o Userdrake: Gerenciador de Usuários do Sistema (também pode ser iniciado

pelo terminal de comandos: userdrake). O Userdrake é acessível apenas pelo

ROOT, não sendo possível a um usuário comum utilizá-lo.

Page 103: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

103

As informações dos usuários são armazenadas nos seguintes arquivos: “/etc/shadow” e

“/etc/passwd”. As informações referentes aos grupos são armazenadas no arquivo:

“/etc/group”.

Esses arquivos são visados por intrusos, os chamados hackers, que buscam informações e

senhas de usuários, para terem acesso à todos os dados armazenados nos servidores.

A seguir, serão mostradas as maneiras de se administrar Usuários e Grupos no Mandriva

Linux, tanto pelo Terminal de Comandos, quanto pelo Centro de Controle.

2 Gerenciando Usuários

Através do Terminal de Comandos, pode-se utilizar vários comandos de administração dos

usuários. Estes comandos permitem criar, apagar e modificar as informações referentes a

usuários e grupos.

2.1 Adicionando um Usuário

Para adicionar usuários através do Terminal de Comandos, utiliza-se o comando “useradd”.

A sintaxe deste comando é a seguinte:

$ useradd [-c comment] [-d home_dir] [-e expire_date]

[-f inactive_days] [-g initial_group]

[-G group[,...]] [-m [-k skeleton_dir]] [-o]

[-p passwd] [-s shell] [-u uid] login

Figura 1: Comando “useradd”

Page 104: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

104

As principais opções do comando “useradd” são descritas na Tabela 1:

Opção Descrição -c Comentário, geralmente associado ao nome completo do

usuário.

-d Diretório de utilização do usuário. O padrão é o “/home”, mas pode ser qualquer outro.

-g Grupo associado ao usuário. O grupo deve ser criado antes do usuário.

login Nome utilizado para o login do usuário. Tabela 1: Principais opções do comando “useradd”.

Se o grupo não for informado, então será criado um grupo com o mesmo nome do usuário, e

o usuário será associado a ele. Para adicionar o usuário “ricardo”, pertencente ao grupo

“administradores”, digita-se o comando mostrado na figura 2:

$ useradd -c “Ricardo M. S.” ricardoms -g administradores Figura 2: Comando “useradd” para adicionar o usuário “ricardo”

Um detahe no comando “useradd”, que atrapalha seu uso inicialmente, é o tratameto da

senha do usuário. A senha passada no comando “useradd” deve estar criptografada, sendo

quase inviável informá-la nesse comando. Se a senha não for informada, a conta do usuário

recém criado ficará bloqueada, até que se defina uma senha para o mesmo.

Após a utilização do comando “useradd”, deve-se utilizar o comando “passwd”, para se criar

uma senha para o usuário, e assim permitir que o mesmo tenha acesso ao sistema, como

pode ser visto na figura 3:

$ useradd -c “Ricardo M. S.” ricardoms $ passwd ricardoms

Figura 3: Criação de usuário e definição da senha

Page 105: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

105

Se já tiver digitado o comando da figura 2, utilize um outro nome de usuário para o comando

da figura 3.

Para adicionar um usuário no Userdrake, basta acessá-lo no Centro de Controle, e clicar no

botão “Adicionar Usuário”, e preencher os campos solicitados, como pode ser visto na figura

4:

Figura 4: Adicioando usuário pelo Userdrake

Quando se cria uma pequena quantidade de usuários pode-se utilizar tanto a comando

“useradd” quanto o Userdrake. Mas quando deseja-se criar uma quantidade grande de

Page 106: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

106

usuários estas ferramentas não são adequadas, pois demoraria-se muito tempo com elas. A

melhor estratégia é a criação de um “script”.

Crie a seguinte lista de usuários no Userdrake:

Nome: Edson Arantes do Nascimento, Login: pele.

Nome: Ayrton Senna, Login: senna.

Nome: Rubens Barrichelo, Login: rubens.

Nome: Aline Barros, Login: aline.

Nome: Ana Hickman, Login: ana.

A tela apresentada pelo Userdrake deverá ser semelhante à tela mostrada na figura 5:

Figura 5: Usuários criados com o Userdrake

Page 107: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

107

2.2 Removendo um Usuário

Para remover um usuário pelo Terminal de Comandos, basta digitar o comando “userdel -r

<usuario>”, como é mostrado na figura 6:

$ userdel -r pele Figura 6: Remoção de usuário

O comando “userdel” remove o usuário, e a opção “-r” removerá o diretório do usuário. Se ela

não for passada, o diretório do usuário deverá ser removido manualmente. Para apagar um

usuário pelo Userdrake, basta selecionar o usuário a ser removido, e clicar no botão

“Apagar”.

2.3 Modificando Um Usuário

A modificação dos dados de um usuário pelo Terminal de Comandos é feita com o comando

“usermod”. Este comando é muito semelhante ao comando “useradd”, tendo a mesma

sintaxe:

$ usermod [-c comment] [-d home_dir] [-e expire_date] [-f inactive_days] [-g initial_group] [-G group[,...]] [-m [-k skeleton_dir]] [-o] [-p passwd] [-s shell] [-u uid] login

Figura 7: Comando “usermod”

As opções são as mesmas do comando “useradd”, e a alteração será imediata.

Page 108: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

108

Para alterar os dados de um usuário pelo Userdrake, basta selecioná-lo e clicar no botão

“Editar”, como pode ser visto na figura 8:

Figura 8: Edição do uusuário pelo Userdrake

Page 109: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

109

2.4 Alterando a Senha de um Usuário

A alteração da senha poderá ser feita pelo comando “passwd”, ou pelo Userdrake.

Se a alteração da senha for feita pelo próprio usuário, e o mesmo utilizar o comando

“passwd”, serão necessários 3 passos:

1) Informar a senha atual;

2) Informar a nova senha;

3) Repetir a nova senha.

Se a alteração da senha for feita pelo ROOT, tanto com o comando “passwd” quanto pelo

Userdrake, serão necessários 2 passos:

1) Informar a nova senha;

2) Repetir a nova senha.

2.5 Adicionando um Grupo

Para adicionar um grupo, pelo Terminal de Comandos, utiliza-se o comando “groupadd

<grupo>”, como pode ser visto na figura 9:

$ groupadd fiscal Figura 9: Adição de um novo grupo

Opcionalmente pode-se informar o número de identificação do grupo, com a opção “-g NUM”,

da seguinte maneira: $ groupadd -g 2009 fiscal.

Para adicionar um grupo pelo Userdrake, basta clicar no botão “Adicionar Grupo” e prencher

as informações necessárias, como mostra a figura 10:

Page 110: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

110

Figura 10: Adição de grupo pelo Userdrake

2.6 Removendo um Grupo

Para remover um grupo, deve-se verificar se o mesmo não possui nenhum usuário associado

a ele. Para isso, utiliza-se o Userdrake, e verifica-se a aba “Grupos” ou, , os usuários criados

no diretório “/home”, aplicando para cada um o comando “groups <usuario>”, e assim vê-se

os grupos associados a cada usuário.

Se um grupo não contiver nenhum usuário, então poderá ser removido do sistema. Para

remover um grupo pelo Terminal de Comandos, utiliza-se o comando “groupdel <grupo>”.

Pelo Userdrake, basta selecionar o grupo, e clicar no botão “Excluir”.

2.7 Modificando um Grupo

Para modificar um grupo pelo terminal de comandos utiliza-se o comando “groupmod”. É

possível modificar-se o Número de Identificação do grupo, com a opção “-g”, ou o Nome do

grupo, com a opção “-n”, como pode ser visto na figura 11:

$ groupmod -g 2010 -n Fiscal2010 fiscal Figura 11: Modificação do grupo fiscal

Page 111: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

111

O comando da figura 12 modificará o grupo “fiscal”, renomeando-o para “Fiscal2010”, e

também modificará o seu número de identificação, para 2010.

Para modificar um grupo pelo Userdrake, basta selecionar o grupo e clicar no botão “Editar”,

e alterar as informações desejadas.

2.8 Criação Automatizada de Usuários

Com um script, pode-se criar uma quantidade de usuários do tamanho que se queira, e todo

o processo de configuração da conta dos usuários estará automatizado no script, como pode

ser visto na figura 12:

Figura 12: Criação automatizada de usuários

No “script” simplificado, mostrado na figura 12, são criados alguns usuários para o grupo

“fiscal”. Os nomes dos usuários estão armazenados no arquivo “fiscais.txt”, e o “script” é

gravado no arquivo “cadastro.scr”.

No arquivo “cadastro.scr” as principais linhas são:

useradd -g fiscal -d /home/$usuario -m $usuario: criação do usuário;

echo $usuario“123” | passwd –stdin $usuario: criação da senha.

Page 112: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

112

A senha dos usuários é definida da seguinte maneira: para o usuário burti a senha é

burti123, para o usuário fitipaldi a senha é fitipaldi123, e assim por diante.Para a criação de

senhas mais complexas, um “script” mais complexo será necessário.

Ao final destas etapas, considerando a existência do grupo “fiscal” e do usuário “pele”, altere

os usuários para que a tela final do Userdrake seja semelhante a tela apresentada na figura

13:

Figura 13: Tela final com grupos dos usuários modificados

Page 113: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

113

UNIDADE 13

Permissões de Acesso Objetivo: Conhecer o acesso à arquivos e diretórios em ambiente com vários usuários.

1 Introdução

Uma das características dos sistemas Unix, também presente no Linux, é a capacidade de

gerenciamento de múltiplos usuários no sistema. Essa característica define um sistema como

sendo Multiusuário.

Em sistemas multiusuário, os arquivos e diretórios passam a pertencer a usuários

específicos, ou a grupos de usuários. O Linux possui a capacidade de classificar a maneira

como um arquivo ou diretório será acessado pelos usuários do sistema. Esta classificação é

dividida em 3 partes:

Proprietário do arquivo: classificação para o usuário que possui controle total sobre

o arquivo, sendo geralmente o criador do arquivo;

Grupo de usuários: classificação para os usuários que compartilham o mesmo grupo

do proprietário do arquivo;

Todos os usuários: classificação feita a todos os usuários do sistema.

2 Organização Do Acesso

Quando um usuário é criado no Linux, um grupo deverá ser definido para este usuário. Se o

grupo não for definido, então um grupo com o mesmo nome do usuário será criado e

associado ao usuário. Se não houver necessidade de integração entre os usuários, então

Page 114: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

114

não existe problema em ter um grupo para cada usuário, mas se a intenção é integrar as

atividades e tarefas dos usuários, será mais vantajoso criar grupos de usuários, que

compartilharão alguns recursos do sistema.

Uma estratégia simples e eficiente para a definição dos grupos de usuários é a separação

por atividades, por exemplo, usuários que trabalham em um determinado setor são

cadastrados em um mesmo grupo. Além de definir um grupo principal, podem-se definir

grupos secundários, que permitirão maior compartilhamento de recursos no sistema.

Para associar um usuário a um grupo, pode-se fazer isso na criação do usuário ou através

do comando “usermod”. Por exemplo, se o usuário “joao” precisar ser associado ao grupo

“fiscal” pode-se utilizar uma das duas alternativas apresentadas na figura 1:

$ useradd -g fiscal joao $ usermod -g fiscal joao

Figura 1: Definição do grupo “fiscal” para o usuário “joao”.

Nos dois casos apresentados, na figura 1, o grupo “fiscal” deverá existir antes de se aplicar o

comando ao usuário.

Para se associar mais de um grupo a um usuário, por exemplo, os grupos “contabilidade” e

“administrador”, deve-se criar os grupos, e aplicar o comando apresentado na figura 2:

$ usermod -G contabilidade,administrador joao Figura 2: Definição de novos grupos para o usuário “joao”.

No exemplo mostrado na figura 2, os grupos “contabilidade” e “administrador” deverão existir

antes da aplicação do comando.

Com os comandos das figuras 1 e 2 executados, tem-se que o usuário “joao” poderá acessar

os arquivos disponibilizados para os grupos “fiscal”, “contabilidade” e “administrador”.

Page 115: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

115

Para incluir ou excluir grupos para um usuário pelo Userdrake, basta selecionar o usuário,

clicar em “Editar”, e depois clicar na aba “Grupos”, e marcar os grupos que se deseja

associar àquele usuário:

Figura 3: Usuário “ricardoms” está associado apenas aos grupos “administrador”,

“contabilidade” e “fiscal”.

Todo usuário tem um grupo principal, que fica visivelmente associado ao usuário. Esse grupo

é chamado de “Grupo Primário”. Na figura 3 vê-se que o grupo primário, do usuário

“ricardoms”, é o grupo “administrador”.

Todo arquivo que for criado pelo usuário “ricardoms” estará associado ao grupo

“administrador”, enquanto este grupo for o Grupo Primário. Se o grupo primário for alterado,

os novos arquivos serão associados ao novo grupo primário, mas os antigos permanecerão

com o grupo antigo.

Page 116: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

116

UNIDADE 14

Permissões De Acesso Objetivo: Aprender sobre o acesso à arquivos e diretórios em ambiente com vários usuários.

1 Introdução

Os sistemas Linux possuem a característica de permitirem a criação de vários usuários e

grupos, e o gerenciamento dos arquivos e diretórios serão feitos de acordo com os usuários

e grupos.

Nesta Unidade serão vistos alguns comandos utilizados para se modificar o acesso aos

arquivos e diretórios.

2 Modificação do Acesso

Os arquivos e diretórios no Unix são organizados de maneira que o acesso aos mesmos

sejam definidos em 3 níveis:

1) Proprietário do arquivo;

2) Usuários do mesmo grupo associado ao arquivo;

3) Todos os usuários do sistema.

Quando um arquivo ou diretório é criado, ele é associado a um usuário e a um grupo. Além

disso, serão definidas as restrições ou permissões de acesso que os outros usuários terão,

como pode ser visto na figura 1:

Page 117: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

117

Figura 1: Níveis de acesso de um arquivo

Os tipos de acesso aos arquivos e diretórios são:

Leitura: permite visualizar o conteúdo, representado pela letra “r”;

Escrita: permite alterar o conteúdo, representado pela letra “w”;

Execução: permissão de execução, representado pela letra “x”.

Por exemplo, o arquivo “Relatório.odt” apresentado na figura 2 possui as seguintes

características:

-rw-r----- joao fiscal Relatório.odt Figura 2: Níveis de acesso para o arquivo “Relatório.odt”

O proprietário do grupo pode Escrever e Ler; os usuários do grupo podem Ler, e os demais

não possuem acesso ao arquivo.

Os diretórios são representados com a letra “d” no início das permissões:

drwxr-x--- joao fiscal Documentos Figura 3: Níveis de acesso para o diretório “Documentos”

No exemplo mostrado na figura 3, o diretório “Documentos” pode ser Lido, Escrito e

Executado pelo seu proprietário, e apenas Lido e Executado pelos usuários do grupo “fiscal”.

Page 118: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

118

Para definir restrições ou permissões de acesso é utilizado o comando “chmod”. As

restrições e permissões são definidas nos campos “rwx” a partir de números decimais. Os

números decimais representam números binários, então se a intenção é alterar o arquivo

“Relatório.odt” para permitir que os usuários do grupo do arquivo possam editar este arquivo

deve-se digitar o comando apresentado na figura 4:

$ chmod 760 Relatório.odt Figura 4: Utilização do comando “chmod” para modificar o acesso à “Relatório.odt”

São utilizados sempre 3 números no comando “chmod”. O primeiro irá alterar o acesso do

proprietário, o segundo do grupo e o terceiro para todos os usuários. Cada um dos números

varia de 0 à 7, representando as seguintes operações:

Número Bits Acesso 0 000 - - - 1 001 - - X 2 010 - W - 3 011 - WX 4 100 R - - 5 101 R - X 6 110 RW - 7 111 RWX

Tabela 1: Representação dos modos de acesso

Os números 0, 1, 2, e 3 raramente são utilizados, pois não permitem a manipulação completa

dos arquivos e diretórios. Por exemplo, um diretório que esteja com o seguinte nível de

acesso: “d--x--x--x documentos” poderá ser acessado, mas seus arquivos não poderão ser

listados. Este tipo de permissão só faz sentido quando se sabe exatamente qual arquivo será

acessado em um diretório. Pois se pode informar o caminho completo do arquivo e acessá-

lo, sem interferir nos demais arquivos do diretório.

Page 119: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

119

Por exemplo, assumindo que o usuário atual seja “joao” e que o mesmo queira acessar o

arquivo “Relatório.odt” criado pelo usuário “senna”:, e que o mesmo encontra-se no diretório

“d--x--x--x documentos” com permissão total de acesso para os usuários do grupo “fiscal”,

pode-se realizar o comando apresentado na figura 5:

$ oowriter /home/senna/documentos/Relatório.odt Figura 5: Acesso ao arquivo “Relatório.odt” pelo usuário “joao”

Os “scripts” necessitam de um acesso que permita a execução destes arquivos, então serão

utilizados os números 5 ou 7, pois o conteúdo do arquivo deverá ser lido para que os

comandos sejam executados.

3 Modificação de Grupo e Proprietário

Para modificar o grupo de um arquivo (ou diretório) utiliza-se o comando “chgrp”, da seguinte

maneira: chgrp <grupo> <arquivo>, como pode ser visto na figura 6:

$ chgrp administrador Relatório.odt Figura 6: Alteração do grupo do arquivo “Relatório.odt”

Para modificar o proprietário de um arquivo (ou diretório) utiliza-se o comando “chown”, da

seguinte maneira: chown <usuário> <arquivo>, como pode ser visto na figura 7:

$ chown joao Relatório.odt Figura 7: Alteração do proprietário do arquivo “Relatório.odt”

Deve-se tomar cuidado com esses dois comandos, pois o ideal é que os arquivos de um

usuário estejam localizados em seus diretórios.

Page 120: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

120

4. Modificações no KDE

Para realizar estas alterações no KDE, de permissão de acesso e modificar o grupo ou

proprietário de um arquivo, basta selecionar o arquivo, clicar com o botão direito em cima do

nome do arquivo, e ir na aba “Permissões”, como mostra a figura 8:

Figura 8: Utilizando o KDE para alterar as propriedades de acesso do arquivo

Page 121: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

121

UNIDADE 15

Agendamento De Tarefas Objetivo: Aprender sobre o agendamento da execução de programas no Linux

1 Introdução

Algumas tarefas no Linux são executadas quando surge a necessidade, por exemplo, a

criação de contas de usuário. Mas algumas tarefas são executadas em tempos

determinados, como a cópia de arquivos ou o envio de informações.

Para realizar estas tarefas que precisam ser executadas em um instante específico, pode-se

utilizar os programas “cron” e “at”, que foram criados com o propósito de gerenciar o

Agendamento de Tarefas.

O programa “cron” é utilizado para agendar a execução de um programa em um detemrinado

horário, e se for necessário, repetir a execução em intervalos de tempo escolhidos pelo

usuário.

O programa “at” realiza a execução de um arquivo de “script” apenas uma vez, em um

momento definido pelo usuário.

2 Programa “Cron”

O comando “Cron” é utilizado, principalmente, para gerenciar a execução de programas que

serão iniciados repetidas vezes, como por exemplo, a realização da cópia dos arquivos dos

usuários.

Page 122: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

122

A execução do “Cron” é automática, e ao ser iniciado, o programa faz a leitura da “Tabela de

Agendamento”, localizada no arquivo “/etc/crontab”. Esta tabela define a periodicidade de

execução dos programas e o caminho onde está localizado o programa.

Um exemplo desse arquivo é apresentado na figura 1:

5 0 * * * $HOME/bin/log_diario.sc 15 14 1 * * $HOME/bin/processamento.sc 0 22 * * 1-5 mail -s “Feche o caixa” [email protected] 15 0-23/2 * * * $HOME/bin/aviso.sc 0 16 * * sun echo “16h de domingo!”

Figura 1: Conteúdo do arquivo “/etc/crontab”

A definição dos campos no arquivo é a seguinte:

1) Minuto: 0 à 59;

2) Hora: 0 à 23;

3) Dia do mês: 1 à 31;

4) Mês do ano: 1 à 12;

5) Dia da Semana: 0 à 6, ou “sun”, “mon”, “tue”...;

6) Comando a ser executado.

Assim, as linhas da figura 1 executarão da seguinte maneira:

5 0 * * * $HOME/bin/log_diario.sc

o Executa o script “log_diari.sc” todos os dias na hora 0 aos 5 minutos.

o 00:05h → $HOME/bin/log_diario.sc

15 14 1 * * $HOME/bin/processamento.sc

Page 123: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

123

o Executa o script “processamento.sc” às 14:15 no primeiro dia de cada mês

o 14:15h no 1º dia do mês → $HOME/bin/processamento.sc

0 22 * * 1-5 mail -s “Feche o caixa” [email protected]

o Envia uma mensagem para “[email protected]” às 22:00h entre segunda e

sexta.

o O campo “1-5” define um intervalo.

30 0-23/2 * * * $HOME/bin/aviso.sc

o Executa o script “aviso.sc” todos os dias, a cada 2 horas, iniciando 00:30h.

o O campo “0-23/2” define um intervalo e uma frequência.

0 16 * * sun echo “16h de domingo!”

o Exibe uma mensagem todo domingo às 16 horas.

o Domingo 16:00h → echo “16h de domingo!”

Essas configurações podem ser feitas em um editor de texto, escrevendo diretamente o

arquivo “/etc/crontab”, ou utilizando a interface gráfica, através do “Agendador de Tarefas”.

Para acessar o “Agendador de Tarefas” no KDE, realiza-se os seguintes passos:

1) Clique no Menu principal

2) Clique em “Ferramentas”

3) Clique em “Ferramentas do Sistema”

4) Clique em “Configurar sua sessão”

5) Clique na aba “Avançados”

6) Clique no ícone “Agendador de Tarefas”

Page 124: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

124

A tela do Agendador de Tarefas é apresentada na figura 2:

Figura 2: Agendador de Tarefas

3 Programa “At”

Como foi visto, o “Cron” executa programas periodicamente. Em algumas situações, um

determinado programa deverá ser executado apenas 1 vez. Por exemplo: Emitir um aviso

para todos os usuários do servidor, informando que o computador será desligado para

manutenção em um determinado dia e horário.

Page 125: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

125

Para executar programas com agendamento sem repetição utiilza-se o “at”. Este programa é

utilizado em conjunto com outros 2: “atq” e “atrm”.

O programa “at” realiza o agendamento dos programas para execução, o programa “atq”

exibe uma lista dos programas agendados pelo “at”, e o programa “atrm” remove o

agendamento de um determinado programa.

Existem 2 arquivos que são utilizados para informarem quais são os usuários que podem ou

não executar o programa “at”. Estes arquivos são:

/etc/at.allow: contém a lista dos usuários que podem executar o programa “at”;

/etc/at.deny: contém a lista dos usuários que não podem executar o programa “at”.

Se o arquivo “/etc/at.allow” esteja vazio, então os usuários que não estiverem no arquivo

“/etc/at.deny” poderão utilizar o programa “at”.

Caso o arquivo “/etc/at.deny” esteja vazio, os usuários poderão utilizar o programa “at”.

O programa “at” é utilizado para agendar a execução de “scripts” em arquivos, ou

opcionalmente pode-se informar diretamente qual a sequência de comandos que deverá ser

executada. A sintaxe básica é apresentada na figura 3:

$ at -f <script> <horário>

Figura 3: Sintaxe do programa “at”

A inclusão do horário de funcionamento é obrigatória, e pode ser feita nos seguintes

formatos:

HH-MM: hora (00 à 23) e minutos (00 à 59);

MM/DD/AA: mês, dia e ano.

Page 126: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

126

Mas existem diversas opções para inclusão de um horário de execução:

$ at -f copia_tudo.sc 4pm tomorrow

Figura 4: Agendamento em formato diferenciado

Se o nome de um arquivo não for informado, deve-se digitar a sequência de comandos que

será executada, e ao final pressionar “CTRL+D” para agendar:

$ at 18:30 at> rm /tmp -fr at> CTRL+D

Figura 5: Inclusão de comandos diretamente no “at”

Para visualizar a lista de programas agendados pelo “at” utiliza-se outro programa, chamado

“atq”:

$ atq 1 Tue Oct 20 14:30:00 2009 a root 2 Tue Oct 20 17:30:00 2009 a root 3 Wed Oct 21 09:00:00 2009 a ricardoms

Figura 6: Lista de programas agendados mostrada pelo “atq”

A organização da lista mostrada pelo “atq” é a seguinte:

1ª Coluna: Número de Identificação do agendamento;

2ª Coluna: Data do agendamento;

3ª Coluna: Horário de execução;

4ª Coluna: usuário que realizou o agendamento.

Page 127: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

127

Um problema no “atq” é o fato de não se saber quais programas estão agendados, pois ele

mostra apenas os horários de execução e o usuário que agendou um programa.

Para remover um programa do agendamento, utiliza-se o “atrm”, que deve receber o numero

de identificação do agendamento a ser cancelado:

$ atrm 2

Figura 7: Agendamento em formato diferenciado

A grande dúvida é saber se o agendamento removido realmente era o desejado. Para saber

quais são os programas agendados, deve-se verificar o diretório “/var/spool/at”. Esse

diretório contém “scripts” que armazenam o conteúdo do agendamento. A tarefa aqui será

verificar cada arquivo neste diretório através do programa “cat” e olhar as últimas linhas e

tentar reconhecer o script. ( o programa “tail” não é recomendado, pois mostra apenas as

últimas 10 linhas do arquivo )

A melhor estratégia para utilização do programa “at” é a seguinte:

1º Verifique o diretório “/var/spool/at” e veja quais são os arquivos presenes ali;

2º Execute o programa “atq” e veja os identificadores em uso nos agendamentos;

3º Execute o programa “at”;

4º Verifique novamente o diretório “” e veja qual o arquivo adicionado;

5º Execute o programa “atq” e veja o novo número, que representa o último

agendamento realizado.

Page 128: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

128

UNIDADE 16

Cópia de Segurança de Arquivos Objetivo: Entender a manutenção de cópias de arquivos

1 Introdução

Um dos trabalhos mais importantes na manutenção de um servidor é a cópia regular dos

arquivos. Essa tarefa recebe vários nomes, os mais comuns são “Cópia de Segurança” e

“Backup” que consiste em realizar uma cópia dos arquivos mais importantes localizados no

servidor. Esses arquivos podem ser: arquivos de configuração, documentos dos usuários,

programas, bancos de dados, e vários outros.

Para realizar a cópia existem várias ferramentas. Pode-se utilizar o programa “cp” ou um

programa específico, como o Drakbackup ou Bacula.

Figura 1: Interface do Bacula O mais importante não é a ferramenta a ser utilizada e sim definir quais serão os arquivos e

qual será a frequência de realização das cópias.

Page 129: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

129

2 Definição dos Arquivos e Frequência da Cópia

O principal motivo de se realizar uma Cópia de Segurança, é garantir a usabilidade dos

arquivos que estão no servidor, pois mesmo que haja algum defeito, os arquivos estarão

seguros em uma outra localização.

A regra básica para manter a segurança dos arquivos, independente da situação dos

computadores, é fazer a cópia em uma mídia, e manter esta mídia em uma localização

distante dos computadores. Pois mesmo que haja um incêndio, ou outro dano físico, em toda

a organização, os arquivos estarão seguros.

A definição de quais arquivos serão copiados dependerá de vários fatores, mas o critério de

escolha é basicamente o mesmo: “se o arquivo original for perdido, qual será o impacto

causado ?” Para essa pergunta existem várias respostas:

Nenhum: então não precisa ser copiado;

Baixo: talvez precise ser copiado;

Médio: então é melhor copia-lo, pelo menos com certa frequência;

Alto: com certeza deve ser copiado, preferencialmente todo dia.

Existem vários tipos de arquivos, divididos em 4 categorias básicas: arquivos dos usuários,

arquivos da empresa, arquivos de configuração e arquivos de programas.

Para facilitar a realização das cópias de segurança, a estrutura de diretórios deve ser

planejada de forma que facilite esta tarefa. Uma boa estratégia e a organização dos

diretórios no servidor em locais que já indiquem a separação dos arquivos por critério.

Por exemplo: um diretório exclusivo para os arquivos da empresa, pois estes são os mais

importantes.

Page 130: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

130

3 Realizando A Cópia Utilizando O Terminal De Comandos

A cópia dos arquivos, pelo Terminal de Comandos, geralmente é realizadas através de um

“script” agendado no “Cron”. Pois seria muito trabalhoso ter que escrever os comandos

sempre que uma cópia fosse realizada.

Pode-se fazer mais de um “script” de cópia, de acordo com as prioridades de segurança dos

arquivos. A figura 2 mostra o “script” “Copiador_home.sc”, que realiza a cópia de segurança

do diretório “/home” e move-o para um disco de DVD:

Figura 2: Exemplo de “script” para realizar a cópia de arquivos

O formato final do “script” para fazer as cópias dependerá das prioridades específicas de

cada caso. Para cadastrar este “script” no “Cron”, pode-se acrescentar uma linha no

“crontab” semelhante a mostrada na figura 3:

0 8 * * sat ./etc/Copiador_home.sc Figura 3: Inclusão da cópia de segurança no “crontab”

No exemplo mostrado na figura 3 a cópia dos arquivos dentro do diretório “/home” será

realizada todos os sábados, às 8:00h da manhã.

Page 131: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

131

4. Realizando a Cópia e Utilizando o Drakbackup

As cópias de segurança também podem ser feitas utilizando-se o programa Drakbackup.

Esse programa pode ser iniciado a partir do Centro de Controle, cllicando-se no ícone

“Backups”, como mostra a figura 4:

Figura 4: Centro de Controle

Page 132: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

132

Várias opções estão disponíves e, a partir da primeira tela, existem opções que serão

utilizadas por usuários iniciantes ou avançados:

Figura 5: Opções de utilização do Drakbackup

Page 133: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

133

Ao clicar no item “Assistente de Configuração”, o drakbackup assumirá as configurações

padronizadas para realizar a cópia dos arquivos, permitindo que o usuário realize algumas

alterações:

Figura 6: Opções de utilização do Drakbackup

Page 134: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

134

Uma das escolhas poderá ser a de realizar a cópia apenas para alguns usuários:

Figura 7: Opções de utilização do Drakbackup

Page 135: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

135

Usuários que precisem de configurações mais avançadas também poderão utilizar o

Drakbackup.

Como mostra a tela apresentada na figura 5, basta clicar no item “Configuração Avançada”

para o Drakbackup exibir novas opções para a realização das cópias:

Figura 8: Opções de utilização do Drakbackup

Page 136: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

136

Clicando-se no item “O quê”, na tela da figura 8, pode-se escolher quais os recursos serão

copiados:

Figura 9: Opções de utilização do Drakbackup

Page 137: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

137

O item “Onde”, permite a escolha do local onde será guardado a cópia:

Figura 10: Opções de utilização do Drakbackup

Page 138: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

138

E o item “Quando”, apresentado nas “Configurações Avançadas”, permite a escolha do

momento de execução das cópias, permitindo inclusive o cadastramento de cópias

agendadas:

Figura 11: Opções de utilização do Drakbackup

Page 139: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

139

UNIDADE 17

Protocolo TCP/IP Objetivo: Conhecer as características básicas das redes TCP/IP versão 4 e 6.

1 Introdução

No mundo de hoje, não se pode falar de redes sem falar do TCP/IP. O conjunto de

protocolos originalmente desenvolvido pela Universidade da Califórnia em Berkeley, sob

contrato para o Departamento de Defesa dos EUA, se tornou o conjunto de protocolos

padrão das redes locais e remotas, suplantando conjuntos de protocolos bancados por pesos

pesados da indústria, como a IBM (SNA), Microsoft (NetBIOS/NetBEUI) e Novell (IPX/SPX).

O grande motivo de todo esse sucesso foi justamente o fato do TCP/IP não ter nenhuma

grande empresa associada ao seu desenvolvimento. Isso possibilitou a sua implementação e

utilização por diversas aplicações, em praticamente todos os tipos de equipamentos e

sistemas operacionais existentes.

Mesmo antes do boom da Internet o TCP/IP já era o protocolo obrigatório para grandes

redes, formadas por produtos de muitos fornecedores diferentes e havia sido escolhido pela

Microsoft como o protocolo preferencial para o Windows NT, devido às limitações técnicas do

seu próprio conjunto de protocolos, o NetBEUI.

2. As Pilhas de Protocolos

Todos os softwares de redes são baseados em alguma arquitetura de camadas e

normalmente a referência é a um grupo de protocolos criado para funcionar em conjunto

como uma pilha de protocolos (em inglês, protocol stack, por exemplo the TCP/IP stack).

Page 140: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

140

O termo "pilha" é utilizado porque os protocolos de uma dada camada normalmente

interagem somente com os protocolos das camadas imediatamente superior e inferior.

O modelo de pilha traz a vantagem de modularizar naturalmente o software de redes,

permitindo a sua expansão com novos recursos, novas tecnologias ou aperfeiçoamentos

sobre a estrutura existente, de forma gradual.

O nome TCP/IP vem dos nomes dos protocolos mais utilizados desta pilha, o IP (Internet

Protocol) e o TCP (Transmission Control Protocol). Mas a pilha TCP/IP possui ainda muitos

outros protocolos, dos quais veremos apenas os mais importantes, vários deles necessários

para que o TCP e o IP desempenhem corretamente as suas funções.

Visto superficialmente, o TCP/IP possui 4 camadas, desde as aplicações de rede até o meio

físico que carrega os sinais elétricos até o seu destino:

Page 141: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

141

1. Interface: tem a função de permitir o uso de um meio físico, que conecta os

computadores na rede, e fazer com que as informações enviadas por um computador

cheguem a outro computador diretamente desde que haja uma conexão direta entre

eles.

2. Identificação: é responsável pela identificação dos computadores na rede. É nessa

camada que se define o número IP de cada máquina da rede.

3. Transporte: realizam o controle no envio das informações dos aplicativos pela rede. É

nessa camada que se faz a conexão com o aplicativo que o usuário está utilizando.

4. Aplicação: são específicos para cada programa que faz uso da rede. Dessa forma,

existe um protocolo para a conversação entre um servidor web e um navegador web

(HTTP), entre outras. Cada aplicação de rede tem o seu próprio protocolo de

comunicação, que utiliza os protocolos das camadas mais baixas para poder atingir o

seu destino.

Pela figura, anterior percebe-se que existem dois protocolos de transporte no TCP/IP: TCP e

UDP.

O TCP é um protocolo orientado a conexão. Ele permite que sejam enviadas mensagens de

qualquer tamanho e controla a divisão das mensagens em pacotes que possam ser enviados

pela rede. Ele também cuida de rearrumar os pacotes no destino e de retransmitir qualquer

pacote que seja perdido pela rede, de modo que o destino receba a mensagem original, da

maneira como foi enviada.

Já o UDP, é um protocolo que trabalha com datagramas, que são mensagens com um

comprimento máximo pré-fixado e cuja entrega não é garantida. Caso a rede esteja

congestionada, um datagrama pode ser perdido e o UDP não informa as aplicações das

camadas superiores que o datagrama foi perdido. Outra possibilidade é que o

congestionamento em uma rota da rede pode fazer com que os pacotes cheguem ao seu

destino em uma ordem diferente daquela em que foram enviados.

Page 142: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

142

3 TCP/IP Versão 4

Em uma rede TCP/IP, cada computador (ou melhor, cada placa de rede, caso o computador

possua mais do que uma) possui um endereço numérico formado por 4 bytes, geralmente

escritos na forma w.x.y.z.

Para ter um maior controle sobre os endereços foram criadas as classes de endereço, que

são representadas no primeiro byte do endereço:

Classe A = 1 até 126

Classe B = 128 até 191

Classe C = 192 até 223

Classe D = 224 até 239 Multicast

Classe E = 240 até 254 Não Utilizado

Além desse Endereço IP, cada computador possui uma máscara de rede (network mask ou

subnet mask), que é um número do mesmo tipo, mas com a restrição de que ele deve

começar por uma sequência contínua de bits em 1, seguida por uma sequência contínua de

bits em zero. Ou seja, a máscara de rede pode ser um número como:

11111111.11111111.00000000.00000000 (255.255.0.0).

A máscara de rede serve para quebrar um endereço IP em um Endereço de Rede e um

Endereço do Elemento. Todos os computadores em uma mesma rede local (fisicamente, por

exemplo, um mesmo barramento Ethernet) devem ter o mesmo endereço de rede, e cada um

deve ter um endereço de elemento diferente. O roteamento dos pacotes na rede é feito pelo

Endereço de Rede e a entrega dos pacotes é feita pelo Endereço do Elemento.

Page 143: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

143

3.1 Comunicação em uma Rede TCP/IPv4

Digamos que o elemento com o endereço IP 172.16.1.101 deseje enviar um pacote de

informação para o endereço 172.16.2.102. Caso a máscara de rede seja 255.255.0.0, isso

faria o TCP/IP identificar que a rede dos elementos é 172.16.0.0, mostrando que ambos

possuem o mesmo endereço e portanto estão diretamente conectados.

Nesse caso, o nível IP envia um pacote de aviso ARP (explicado com mais detalhes na

Unidade 19) pela rede Ethernet para identificar qual o endereço Ethernet do elemento cujo IP

é 172.16.2.102.

Esse pacote é enviado como um broadcast, de modo que todos os elementos conectados no

mesmo segmento Ethernet receberão o pacote e o elemento configurado para o endereço

desejado irá responder ao pacote ARP indicando qual o seu endereço Ethernet. Assim o IP

pode montar o pacote Ethernet corretamente endereçado e enviar o pacote para o seu

destino.

Agora, se a máscara de rede não fosse 255.255.0.0, mas sim 255.255.255.0, os endereços

de rede da origem e destino seriam respectivamente 172.16.1.0 e 172.16.2.0. Como os

endereços de rede são diferentes, significa que não há conectividade direta, entre os dois

elementos, portanto o pacote deverá ser entregue por intermédio de uma Ponte de Rede.

Caso a Ponte de Rede seja 172.16.1.1 (observe que o endereço de rede da Ponte de Rede é

172.16.1.0, o mesmo do nosso elemento de origem). O elemento irá enviar um pacote ARP

pela rede para descobrir o endereço Ethernet da Ponte de Rede e enviará o pacote para ela.

Ao receber o pacote, a Ponte de Rede irá verificar que o endereço IP de destino é o IP de

outro elemento, e não dele, e irá verificar qual o endereço de rede do destino. Pode ser que o

pacote esteja endereçado para uma rede local na qual a Ponte de Rede tenha uma conexão

direta, ou pode ser que a Ponte de Rede tenha que direcionar o pacote para outra Ponte de

Rede ou Roteador.

Page 144: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

144

De qualquer forma, a Ponte de Rede segue o mesmo processo de gerar o endereço de rede

utilizando a máscara de rede e, em seguida, enviar um pacote ARP pedindo o endereço

Ethernet do próximo elemento a receber o pacote.

4. TCP/IP Versão 6

O Protocolo Ipv6 é um dos principais padrões a ser implantado no mundo. Embora as atuais

especificações do IPv6 não se transformem oficialmente em um padrão, é importante se

tenha uma visão geral do atual desenvolvimento deste protocolo. Algumas alterações nas

especificações do protocolo são esperadas, na medida em que se aproxima do fechamento

das características do Protocolo IPv6 como um padrão, assim este resumo se apresenta

como um guia ao IPv6, não sendo a informação definitiva.

A versão 4 do Protocolo IP, IPv4, é o mais popular em uso hoje, embora haja algumas

questões abertas sobre sua capacidade para servir à comunidade da Internet por muito mais

tempo. O IPv4 foi concluído na década de 1970 e atualmente começou a mostrar sua idade.

A questão principal que cerca IPv6 é o endereçamento, pois muitos peritos acreditam que

atualmente estejam em uso cerca de quatro bilhões de endereços, um valor muito próximo

do limite disponível no IPv4. Embora isso pareça um número muito grande de endereços, os

grandes blocos múltiplos são dados às Agências Governamentais e às Grandes

Organizações. IPv6 poderia ser a solução de muitos problemas, mas ainda não foi

plenamente desenvolvido e não é um padrão de fato!

O Protocolo IPv6 está em desenvolvimento desde a década de 1990, tendo sido criado

centenas de documentos com especificações sobre o funcionamento específico em

determinados aspectos, incluindo: Endereçamento Expandido, Formato Simplificado do

Cabeçalho, Etiquetas de Transporte, Autenticação e Privacidade.

Page 145: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

145

4.1 Endereçamento

Um exemplo de endereço IPv4 é “172.146.17.10”. No Protocolo IPv4 os endereços IP são

formados por 4 números de 8 bits. Isso permite que existam no máximo 4 bilhões de

endereços diferentes (número que está sendo alcançado atualmente). No Protocolo IPv6

utiliza-se 8 números de 16 bits para formar um endereço, por exemplo, pode-se ter o

seguinte número para um endereço “A462:19C0:0102:3109:AC12:512D:0192:BC43”. Os

números que formam um endereço são escritos em Hexadecimal e para cada parte do

endereço existe um número hexadecimal de 4 dígitos, totalizando um endereço de 128 bits.

Uma diferença no formato do endereço do IPv6 em relação ao IPv4 é a possibilidade de se

escrever o endereço de forma reduzida, caso uma parte seja formada por zeros:

A462:0000:0000:0000:0000:512D:0192:BC43 = A462::512D:0192: BC43

A462:0000:0000:3109:0000:0000:0000:BC43 = A462::3109::BC43

4.2. Cabeçalho do pacote IPv6

O formato do cabeçalho no IPv6 é simplificado, sendo formado por 8 partes:

Figura 1: Cabeçalho do IPv6

Page 146: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

146

As partes do cabeçalho do IPv6 são descritas na tabela a seguir:

Parte Descrição Versão Número de versão IP, o valor é 6. Classe Valor de prioridade de cada pacote. Especifica a

classe de tráfego: - 0 a 7 são definidos para tráfegos de dados; - 8 a 15 para tráfegos de vídeo e áudio.

Etiqueta de Transporte

Utilizado para aplicações que necessitam de garantia de desempenho. Um fluxo é definido como um seqüência de pacotes enviados de uma fonte particular até um destino particular. É identificado pela combinação do endereço da fonte e um rótulo de fluxo de 24 bits. Desse modo, todos os pacotes que pertencem a um mesmo fluxo, possuem um único rótulo.

Tamanho do Pacote Especifica o tamanho dos dados transportados. Próximo Líder Identifica o tipo de cabeçalho que se segue

imediatamente após o cabeçalho de base. Por exemplo, um cabeçalho TCP/UDP ou um cabeçalho opcional do IPv6.

Limite de Saltos Número de saltos (hops) restante para um particular pacote. Esse número é colocado pela fonte e decrementado por 1 em cada nó. Se esse número chega a zero, o pacote em questão é descartado.

Endereço de Origem

Endereço de quem está enviando o pacote.

Endereço de Destino

Endereço de quem está recebendo o pacote.

O formato do cabeçalho do IPv4 é mais complexo, sendo formado por 14 partes, isso exige

um maior tempo de processamento que o cabeçalho do IPv6. Um cabeçalho mais

simplificado implica em menos processamento para cada pacote, sendo extremamente útil

para redes de alta velocidade.

Page 147: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

147

UNIDADE 18

Configuração da Rede

Objetivo: Conhecer a cofiguração de um computador para estar presente em uma rede de computadores.

1. Introdução

Para conectar vários computadores, e fazê-los trabalhar em conjunto, não basta apenas “ligar cabos”. Deve-se configurar os computadores, para que os mesmos possam “enxergar” uns aos outros. Essas configurações formarão as características de um computador, e determinarão:

A qual rede ele pertence;

Qual sua função na rede;

Como ele acessará os outros computadores;

E como as outras máquinas o acessarão.

Nesta Unidade serão vistas as maneiras de se definir algumas dessas características. E, as

outras características, serão definidas nas unidades seguintes.

2. Definição da Presença na Rede

A configuração de um computador, para que ele pertença a uma rede, é a definição básica

para a construção de uma rede de computadores. Nesta configuração serão definidos o tipo

de rede e a maneira como este computador se identificará nesta rede.

O tipo de rede mais utilizado é o TCP/IPv4, Rede TCP/IP Versão 4. Nesse tipo de rede

existem 4 características básicas para o computador:

Classe da Rede;

Número da Rede;

Máscara de Rede;

Número de Identificação na Rede.

Page 148: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

148

A definição da Classe da Rede, do Número da Rede e do Numero de Identificação são

simultâneas, e acontecem no momento de definição do Número de Identificação.

Um computador com IP 17.56.24.3 pertence à Classe A, e outro computador com IP

202.13.85.6 pertence à Classe C. O primeiro número do conjunto dos números definirá a

classe da rede.

Uma das características do protocolo TCP/IP é o fato de o mesmo ser controlado pelo

governo dos Estados Unidos. Isto implica em uma série de restrições, dentre as quais a

liberação de números IP para serem utilizados. Inicialmente não havia uma regra específica,

mas atualmente existe um padrão para o fornecimento de números de identificação. A tabela

1 lista alguns números em uso e reservados para uso:

Tabela 1: Números IP reservados atualmente

Page 149: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

149

Algumas empresas que tinham um IP na Classe A, como o caso da IBM, mantiveram esse

número. Outros casos, como acontece na maioria das empresas no Brasil, receberam um IP

de acordo com sua região. Como o Brasil pertence à Região LACNIC, a maioria dos IP's

registrados inicia com o número “200”.

A definição da Máscara da Rede é realizada logo após a escolha do Número IP e a Máscara

de Rede será utilizada para identificar como é a conectividade dos computadores na rede,

identificando o número da rede do computador.

Em um cenário onde existam 5 computadores, identificados com os seguintes números:

Computador A: 172.185.63.1;

Computador B: 172.185.65.1;

Computador C: 172.196.84.4;

Computador D: 172.196.84.7;

Computador E: 200.123.78.5;

Dependendo da Máscara de Rede utilizada, encontram-se uma quantidade de redes:

Se a Máscara de Rede for: 255.255.0.0, tem-se três redes:

o 1) Computadores A e B: 172.185.0.0;

o 2) Computadores C e D: 172.196.0.0;

o 3) Computador E: 200.123.0.0;

Se a Máscara de Rede for: 255.255.255.0 , se tem 4 redes:

o 1) Computador A: 172.185.63.0;

o 2) Computador B: 172.185.65.0;

o 3) Computadores C e D: 172.196.84.0;

Page 150: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

150

o 4) Computador E: 200.123.78.0;

O impacto disto, na rede, será o seguinte:

Se a Máscara for 255.255.0.0, então os computadores A e B poderão se comunicar

diretamente;

Se a Máscara for 255.255.255.0, os computadores A e B precisarão de um “Gateway”

para se conectar.

Um “Gateway” é um computador com duas ou mais placas de rede, configuradas cada uma

para uma rede.

Para configurar o IP de um computador pelo terminal de comandos, utiliza-se o programa:

ifconfig. A sintaxe básica dele é a seguinte:

$ ifconfig <placa> netmask <máscara> <endereço-IP>

Existem outras opções para este programa. As mais importantes são: as que definem qual

placa será configura, qual será a máscara de rede, e qual o número utilizado no endereço IP:

Figura 1: Configuração de uma placa com ifconfig.

Page 151: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

151

Para configurar a placa com IP Dinâmico, isto é, DHCP, utiliza-se o seguinte comando:

$ ifconfig <placa> dhcp start

Também é possível configurar a placa de rede utilizando o Centro de Controle do Mandriva,

acessando o Centro de Rede:

Page 152: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

152

Após iniciado o programa, para configurar as placas de rede, deve-se escolher a placa

corretamente, e clicar no botão “Configurar”:

Page 153: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

153

Será mostrada uma tela para realizar a configuração da placa selecionada:

Page 154: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

154

UNIDADE 19

Ferramentas TCP-IP Objetivo: Aprender sobre a utilização de algumas ferramentas para gerenciar e verificar o comportamento da rede.

1 Introdução

Após a configuração da rede a tarefa mais importante será a verificação do funcionamento

da mesma. Existem várias ferramentas para realizar esse trabalho, e nesta unidade serão

vistas as seguintes:

arp;

netstat;

traceroute;

nslookup;

ssh;

ping.

Page 155: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

155

2 Arp

A sigla ARP representa Address Resolution Protocol, que significa Protocolo de Resolução

de Endereços. Sua utilização é importante, pois através dele obtem-se os números dos

endereços MAC das placas de rede a partir do endereço IP de um computador, como mostra

a figura 1:

Figura 1: Utilização do ARP

Page 156: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

156

3. Netstat

O NetStat informa sobre algumas estatísticas relacionadas com a rede, dentre as quais:

tabelas de roteamento, conexões de entrada e saída, processos com acesso à rede, e várias

outras.

Figura 2: Utilização do NetStat

Page 157: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

157

4. Traceroute

O traceroute é utilizado para verificar a rota existente até um determinado endereço.

Exemplos de rastreamento de endereços com o comando Traceroute:

França - www.encr.com.fr

traceroute to www.encr.com.fr (193.51.164.164), 30 hops max, 60 byte packets 1 192.168.10.1 (192.168.10.1) 1.344 ms 1.029 ms 0.808 ms 2 200.137.67.126 (200.137.67.126) 1.700 ms 1.519 ms 2.202 ms 3 200.137.64.8 (200.137.64.8) 1.386 ms 1.100 ms 2.070 ms 4 so-1-3-0-0-r1-rj.bkb.rnp.br (200.143.253.90) 11.811 ms 11.581 ms 11.869 ms 5 so-0-1-0-r1-sp.bkb.rnp.br (200.143.252.21) 17.545 ms 17.408 ms 17.591 ms 6 rnp-br-spau.core.redclara.net (200.0.204.129) 17.335 ms 17.224 ms 16.932 ms 7 clara.rt1.mad.es.geant2.net (62.40.124.61) 222.941 ms 222.712 ms 222.498 ms 8 so-4-1-0.rt1.par.fr.geant2.net (62.40.112.118) 239.338 ms 238.977 ms 238.819 ms 9 renater-gw.rt1.par.fr.geant2.net (62.40.124.70) 241.767 ms 239.362 ms 239.693 ms 10 * * * 11 in2p3-lyon-rtr-021.noc.renater.fr (193.51.186.177) 244.222 ms 243.993 ms 244.484 ms 12 193.51.164.2 (193.51.164.2) 245.260 ms 250.399 ms 250.370 ms 13 pftp.iarc.fr (193.51.164.164) 250.332 ms 250.905 ms 250.540 ms

Tabela 1: Rastreamento de endereço localizado na França

Estados unidos - www.disney.com

traceroute to www.disney.com (199.181.132.250), 30 hops max, 60 byte packets 1 192.168.10.1 (192.168.10.1) 1.072 ms 0.745 ms 1.506 ms 2 200.137.67.126 (200.137.67.126) 1.316 ms 2.236 ms 2.025 ms 3 200.137.64.8 (200.137.64.8) 1.775 ms 1.770 ms 1.532 ms 4 so-1-3-0-0-r1-rj.bkb.rnp.br (200.143.253.90) 12.581 ms 11.791 ms 11.962 ms 5 * ge-0-3-0.425.ar1.GIG1.gblx.net (64.208.205.105) 20.530 ms 20.332 ms 6 64.210.15.78 (64.210.15.78) 200.921 ms 201.949 ms 201.809 ms 7 * * * 8 killbill.movies.go.com (199.181.132.250) 201.458 ms 201.267 ms 201.019 ms

Tabela 2: Rastreamento de endereço localizado nos Estados Unidos

Page 158: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

158

China – www.chinadaily.com.cn

traceroute to www.chinadaily.com.cn (72.21.91.20), 30 hops max, 60 byte packets 1 192.168.10.1 (192.168.10.1) 1.842 ms 1.549 ms 1.288 ms 2 200.137.67.126 (200.137.67.126) 1.820 ms 1.612 ms 1.398 ms 3 200.137.64.8 (200.137.64.8) 1.712 ms 1.481 ms 1.254 ms 4 so-1-3-0-0-r1-rj.bkb.rnp.br (200.143.253.90) 11.865 ms 11.642 ms 11.430 ms 5 ge-0-3-0.425.ar1.GIG1.gblx.net (64.208.205.105) 17.922 ms 17.743 ms 17.501 ms 6 Te-8-2.NewYork1.Level3.net (4.68.111.241) 129.277 ms 129.621 ms 129.065 ms 7 ae-2-79.edge2.NewYork1.Level3.net (4.68.16.80) 136.588 ms 136.387 ms * 8 EDGECAST-NE.edge2.NewYork1.Level3.net (4.71.230.38) 129.928 ms 129.768 ms 129.521 ms 9 72.21.91.20 (72.21.91.20) 129.307 ms 129.804 ms 129.525 ms

Tabela 3: Rastreamento de endereço localizado na China

Alguns domínios podem ter a terminação de um país, mas os arquivos podem estar

armazenados em um servidor em outro país, como acontece com o endereço do Clube do

Hardware, mostrado na tabela 4:

Brasil - www.clubedohardware.com.br traceroute to www.clubedohardware.com.br (69.41.161.36), 30 hops max, 60 byte packets 1 192.168.10.1 (192.168.10.1) 1.301 ms 0.875 ms 0.721 ms 2 200.137.67.126 (200.137.67.126) 1.027 ms 1.380 ms 1.031 ms 3 200.137.64.8 (200.137.64.8) 0.966 ms 1.272 ms 1.216 ms 4 so-1-3-0-0-r1-rj.bkb.rnp.br (200.143.253.90) 12.433 ms 12.248 ms 11.811 ms 5 ge-0-3-0.425.ar1.GIG1.gblx.net (64.208.205.105) 19.516 ms * * 6 INTERNAP.ae0.411.ar1.DAL2.gblx.net (208.51.41.58) 150.572 ms * 150.225 ms 7 border4.pc2-bbnet2.ext1.dal.pnap.net (216.52.191.94) 150.355 ms 150.422 ms 150.342 ms 8 colo4dallas-4.border4.ext1.dal.pnap.net (216.52.189.10) 150.588 ms 150.711 ms * 9 ae0.43.j7r-1.dfw02.800hosting.net (206.123.69.130) 158.138 ms 159.534 ms 159.082 ms 10 v22.c6r-1.dfw02.800hosting.net (69.41.191.38) 292.875 ms 292.758 ms 292.355 ms 11 v100.g3k-1.dfw02.800hosting.net (69.41.191.45) 159.274 ms 159.435 ms 160.028 ms

Tabela 4: Rastreamento de endereço com terminação “.br”

Page 159: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

159

5. Nslookup

O programa NSLookup é uma ferramenta muito útil para o gerenciamento de Nomes de

Máquinas e Servidores DNS. Com este programa, pode-se saber se o Servidor DNS está

operando corretamente, passando-lhe alguns endereços como parâmetros:

Figura 3: Utilização do NSLookup

6. SSH

A sigla SSH representa Secure Shell, que significa Comando Seguro. Este programa é

utilizado para se realizar uma conexão segura, com criptografia dos dados, entre dois

computadores. Sua sintaxe é muito simples, como mostra a figura 4, precisando informar

apenas o número IP da máquina a qual se deseja conectar:

Figura 4: Utilização do SSH

Page 160: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

160

7. Ping

O programa Ping é o mais simples, e um dos mais úteis. Com ele pode-se saber se uma

máquina está corretamente conectada e configurada em uma rede. Sua tarefa é muito

simples: testar a conexão com a máquina informada.

Figura 5: Utilização do PING

Page 161: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

161

UNIDADE 20

Proteção do Servidor

Objetivo: Compreender a configuração de um Firewall, que irá proteger o servidor contra acessos indevidos.

1. Introdução

A segurança em uma rede de computadores é a característica de maior prioridade. Não seria

bom ter uma rede invadida, e os arquivos roubados, ou corrompidos, por um usuário não

autorizado.

A definição de senhas de acesso, grupos de usuários, permissões para arquivos, e outras

atitudes, não garantem por completo a segurança. Deve-se ter também um método para

garantir que as informações que trafegam na rede são informações confiáveis.

Para alcançar este objetivo, utiliza-se um Firewall que, literalmente, significa “Barreira de

Fogo”. Um Firewall é um programa que agirá como protetor da rede, impedindo que acessos

impróprios sejam efetuados.

O Firewall padrão no Linux é o IPTables. Esse programa permite a definição de uma

configuração que verificará constantemente as informações na rede, analisando os pacotes

que passam pelo servidor.

Page 162: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

162

2. Pontos de Inspeção

A verificação do IPTables ocorrerá em determinados pontos. Esses pontos são

mapeamentos do comportamento da rede, e são 3:

Filter: pacotes gerais que serão verificados;

NAT: pacotes da rede interna, gerados na comunicação local entre os computadores

da rede;

Mangle: pacotes com características de QoS especiais. Geralmente são relacionadas

a dados multimídia transmitidos em tempo real.

Para cada ponto de verificação existe um conjunto de regras específico. As regras de

funcionamento do IPTables são as seguintes:

Ponto de Inspeção

Momento da Verificação Descrição

Filter

FORWARD Verifica os pacotes que são direcionados à outro Firewall.

INPUT Verifica os pacotes que são destinados ao próprio Firewall.

OUTPUT Verifica os pacotes que são originados no próprio Firewall.

NAT

PREROUTING Verifica os pacotes quando a mudança do IP acontece antes do roteamento.

POSTROUTING Verifica os pacotes quando a mudança do IP acontece depois do roteamento.

OUTPUT

Verifica os pacotes quando a mudança do endereço do próprio Firewall muda no roteamento (raramente acontece)

Mangle

PREROUTING POSTROUTING INPUT OUTPUT FORWARD

Verifica os pacotes quando ocorrem mudanças nos bits de QoS.

Tabela 1: Momentos de verificação dos pacotes no Firewall

Page 163: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

163

3. Operação a ser Realizada

No momento em que um pacote for interceptado pelo IPTable, ele realizará uma operação,

que definirá a continuidade da comunicação do pacote. Estas operações são apresentadas

na tabela 2:

Operação Descrição ACCEPT O pacote será aceito pelo Firewall DROP O pacote é bloqueado no Firewall, e não retorna aviso para quem o originou. LOG Em conjunto com DROP, geralmente em dupla. Primeiro LOG depois DROP REJECT O pacote é rejeitado pelo Firewall, e um aviso é enviado a quem o originou. DNAT Utilizado para alterar o endereço de destino do pacote SNAT Utilizado para alterar o endereço de origem do pacote MASQUERADE Similar ao SNAT

Tabela 2: Operações feitas pelo Firewall

4. Opções de Ativação

As características apresentadas anteriormente são características básicas do IPTables. Além

dessas, existem outras, que têm como objetivo informar números de IP, portas de dados,

protocolos utilizados.

Opção Descrição -t <inspeção> Verifica o pacote de acordo com o ponto de inspeção informado. -j <operação> Realiza a operação informada. -A <momento-verif.> Verifica no momento informado. -p <protocolo> Verifica o protocolo selecionado. Principais são: TCP, UDP e ICMP. -s <IP-origem> Verifica os pacotes originados neste IP. -d <IP-destino> Verifica os pacotes destinados para este IP. -i <placa-entrada> Verifica a entrada de pacotes na placa. -o <placa-saída> Verifica a saída de pacotes na placa. -F Apaga todas as regras. -P <verific.> <oper.> Define operação padrão para o momento da verificação informados.

Tabela 3: Opções de configuração

Page 164: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

164

Existem outras opções que podem ser utilizadas. A lista completa de opções permitem que

se configure um Firewall com as características necessárias para a manutenção da

segurança e acessibilidade da rede.

5. Exemplo de Arquivo para o Firewall

O método mais aconselhado para se ativar o IPTables é a criação de um “script”. Este

“script” será feito para que seja inicializado no momento em que o Servidor for ligado.

Um exemplo de arquivo para o Firewall é apresentado a seguir:

#Limpa Regras iptables -F #permite ping iptables -A INPUT -p icmp -j ACCEPT iptables -A OUTPUT -p icmp -j ACCEPT iptables -A FORWARD -p icmp -j ACCEPT #Contra IP Spoofing iptables -A INPUT -i eth0 -s 192.168.10.1 -j REJECT iptables -A INPUT -i eth0 -s 127.0.0.1 -j REJECT iptables -A INPUT -i eth0 -s 202.147.89.123 -j REJECT #Define Politica Padrao iptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROP #Permite comunicacao ilimitada Servidor > Rede Interna iptables -A OUTPUT -o ! eth0 -j ACCEPT #Conexao OK iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT #HTTP iptables -A INPUT -p tcp --dport 80 -j ACCEPT iptables -A OUTPUT -p tcp --dport 80 -j ACCEPT

Page 165: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

165

iptables -A FORWARD -p tcp --dport 80 -j ACCEPT iptables -A FORWARD -p tcp --sport 80 -j ACCEPT #HTTPS iptables -A INPUT -p tcp --dport 443 -j ACCEPT iptables -A OUTPUT -p tcp --dport 443 -j ACCEPT iptables -A FORWARD -p tcp --dport 443 -j ACCEPT iptables -A FORWARD -p tcp --sport 443 -j ACCEPT #DNS iptables -A INPUT -p tcp --dport 53 -j ACCEPT iptables -A OUTPUT -p tcp --dport 53 -j ACCEPT iptables -A FORWARD -p tcp --dport 53 -j ACCEPT iptables -A FORWARD -p tcp --sport 53 -j ACCEPT iptables -A INPUT -p udp --dport 53 -j ACCEPT iptables -A OUTPUT -p udp --dport 53 -j ACCEPT iptables -A FORWARD -p udp --dport 53 -j ACCEPT iptables -A FORWARD -p udp --sport 53 -j ACCEPT #DHCP iptables -A INPUT -i eth1 -p tcp --dport 67 -j ACCEPT iptables -A INPUT -i eth1 -p udp --dport 68 -j ACCEPT iptables -A OUTPUT -o eth1 -p tcp --dport 67 -j ACCEPT iptables -A OUTPUT -o eth1 -p udp --dport 68 -j ACCEPT # MSN iptables -A FORWARD -p udp --dport 1863 -j ACCEPT iptables -A FORWARD -p udp --sport 1863 -j ACCEPT iptables -A FORWARD -p tcp --dport 1863 -j ACCEPT iptables -A FORWARD -p tcp --sport 1863 -j ACCEPT echo "Firewall..........[OK]"

Antes de dar continuidade aos seus estudos é fundamental que você acesse sua

SALA DE AULA e faça a Atividade 2 no “link” ATIVIDADES.

Page 166: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

166

FÓRUM II

Se no segmento de Servidores o Linux consegue a preferência de uma boa fatia dos

administradores, no segmento de Escritórios e Domicílios, a larga vantagem do MS-Windows

é mais que evidente. Os dados mais recentes apontam para uma dominância de 92% de

máquinas com Windows, e apenas 1% de máquinas com Linux. Como as empresas

envolvidas com o Linux poderão obter sucesso na instalação em Escritórios e Domicílios?

Page 167: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

167

UNIDADE 21 Conexão Remota com Segurança Objetivo: Entender a utilização do programa SSH para realizar conexões seguras entre computadores.

1. Introdução

O programa SSH é utilizado para efetuar conexões entre computadores que não estejam na

mesma rede, fazendo acesso à máquina conectada de modo transparente, ou seja, como se

o usuário realmente estivesse operando um terminal de comandos diretamente.

A principal diferença com relação ao serviço Telnet Padrão, Rlogin e Rsh é que toda a

comunicação entre cliente/servidor é feita de forma encriptada usando chaves

públicas/privadas RSA para criptografia garantindo uma transferência segura de dados.

A velocidade na comunicação é muito boa, principalmente pelo fato de que os dados são em

modo texto.

As principais características do programa SSH são:

Conexão de dados criptografada entre os computadores;

Cópia de arquivos usando conexão criptografada (scp);

Suporte a ftp criptografado (sftp);

Suporte a compactação de dados entre os computadores;

Autenticação usando um par de chaves pública/privada RSA ou DSA;

Algoritmo de criptografia livre de patentes.

A comunicação no SSH é feita na porta 22, então esta porta deve estar habilitada no firewall

para permitir a troca de dados entre os computadores que utilização o SSH para realizarem

conexões entre si.

Page 168: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

168

2. Conjunto de Programas

A utilização do SSH é feita através da utilização de vários programas, cada um com um

propósito específico. Os principais são os seguintes:

SSHD: programa instalado em todos os computadores que receberão uma conexão

SSH;

SSH: programa utilizado nos computadores para solicitar uma conexão com outro

computador;

SCP: programa para realizar uma cópia de arquivos, com criptografia, entre dois

computadores;

SFTP: programa para realizar uma conexão de FTP com criptografia entre dois

computadores;

Os arquivos de configuração utilizados pelo SSHD e SSH são:

Para configurar o SSHD:

o /etc/ssh/sshd_config

Para configurar o SSH:

o /etc/ssh/ssh_config: arquivo de configuração geral;

o ~/.ssh/config: arquivo de configuração do usuário.

A configuração do SSHD deve ser feita com muito cuidado. Os campos que se deve ter

maior cuidado são:

Port: especifica a porta de comunicação, a padrão é a 22;

Page 169: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

169

ListenAdress: identifica os computadores que serão atendidos. O padrão é 0.0.0.0,

indicando que qualquer máquina será atendida (dependerá apenas de usuário e

senha);

PermitRootLogin: especifica se permitirá ou não o login do ROOT. Se permitir, então

o valor será yes. Se não permitir, o valor será no.

LoginGraceTime: tempo em segundos de espera para informar a senha no momento

da conexão;

KeepAlive: Quando especificada com o valor yes verifica constantemente se o

computador que solicitou a conexão continua ativo;

PasswordAuthentication: Se possuir o valor yes, fará autenticação das senhas;

PermitEmptyPasswords: Se especificado com o valor no, só aceitará conexões que

sejam feitas com envio de senha.

Deve-se tomar cuidado com estes parâmetros, pois se forem informados de forma errada,

permitirão um acesso de um usuário não autenticado que, mesmo sem senha, acessará um

computador.

3. Inicialização do SSHD

A inicialização do SSHD é feita como um serviço do Linux, caso não esteja cadastrada como

serviço, pode-se iniciá-lo através do comando:

$ /etc/init.d/sshd

As principais opções de inicialização são as seguintes:

-f <arquivo>: indica arquivo de configuração de entrada;

Page 170: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

170

-g <segundos>: indica o tempo máximo de espera para digitação da senha no

momento da conexão. O padrão é 600 segundos. Se indicar um tempo de 0 (zero)

segundos, então o tempo será ilimitado;

-p <porta>: indica a porta que será utilizada para atender as conexões. A porta padrão

é a 22;

-4: força a utilização do TCP/IP versão 4;

-6: força a utilização do TCP/IP versão 6.

Se nenhum parâmetro for utilizado na inicialização do SSHD, então o arquivo

“/etc/ssh/sshd_config” será utilizado.

4. Utilização do SSH, SCP E SFTP

Para realizar as conexões, pode-se utilizar os programas SSH, SCP ou SFTP. O mais

comum é o SSH, este programa inicia uma conexão segura, e simula um terminal de

comandos no computador, como mostra a figura 1:

Figura 1: Conexão SSH

Page 171: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

171

A opção básica de conexão com o SSH é informar o IP da máquina que se deseja alcançar.

Os programas SCP e SFTP são utilizados para cópias seguras, e com eles, além de informar

o IP da máquina que se quer fazer a conexão, deve-se informar o diretório completo do

arquivo que se deseja copiar.

Uma alternativa de uso no MS-Windows é o programa WinSCP, nele tem-se um ambiente

gráfico, onde é visualizada a lista de arquivos e diretórios, tanto na máquina local, quanto na

máquina conectada, como pode ser visto na figura 2:

Figura 2: Utilização do WinSCP

Com o WinSCP pode-se fazer uma conexão segura entre dois computadores, através dos

protocolos SCP ou SSH.

Page 172: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

172

UNIDADE 22

Servidor de Rede DHCP Objetivo:Conhecer a configuração de um servidor de rede no Linux

1. Introdução

O principal protocolo de rede utilizado atualmente é o TCP/IP versão 4. Este protocolo é

encontrado em praticamente todas as organizações no mundo. Alguns protocolos antigos

ainda permanecem em uso, por questões de compatibilidade com sistemas legados.

A principal característica do protocolo TPC/IP é o fato de que todas as máquinas

pertencentes à rede possuirão um número de identificação. Este número é utilizado como

controle básico na comunicação realizada na rede.

A versão 4, como visto na Unidade 17, utiliza um número de 32 bits para identificar cada

máquina da rede. Para definir qual número será aplicado à máquina, existem duas

estratégias:

1. Numeração Estática: as máquinas são identificadas com números fixos, que não são

mais alterados durante a permanência destas máquinas na rede, mesmo quando

essas máquinas são desconectadas e reconectadas na rede;

2. Numeração Dinâmica: as máquinas recebem um número de identificação quando

são conectadas à rede (geralmente quando são ligadas), e este número não é

obrigatoriamente fixo, podendo alterar após um tempo em que houve uma

desconexão e reconexão à rede.

Page 173: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

173

A Numeração Dinâmica é realizada pelo protocolo DHCP (Dynamic Host Configuration

Protocol, que significa Protocolo de Configuração Dinâmica de Equipamento). Opcionalmente

pode-se também realizar a Numeração Estática.

2. Funcionamento do DHCP

O protocolo DHCP é acionado através de 4 tarefas:

1. Descoberta: Quando uma máquina é conectada a rede (ou ligada), ela enviará uma

mensagem para o endereço 255.255.255.255 (realizando um broadcast), utilizando a

porta 67. Apenas uma máquina entenderá a mensagem, esta máquina é o Servidor

DHCP. A mensagem da máquina cliente tem como objetivo avisar que ela não tem IP

definido.

2. Oferta: O Servidor DHCP definirá um número IP para a máquina cliente. Antes de

enviar o número, o Servidor identificará o número MAC da placa do cliente (a partir da

Mensagem de Descoberta), e verificará se o cliente já utilizou algum IP anteriormente.

Caso já tenha utilizado o mesmo número (se não estiver em uso), será enviado para a

máquina cliente, caso contrário um novo número será definido.

Como a máquina cliente ainda não possui um número IP, o controle do envio da

mensagem é feito pelo número MAC da placa na máquina cliente.

3. Recebimento: Quando a máquina recebe sua configuração de rede designada pelo

Servidor, incluindo: número IP, máscara de rede e outras características, a máquina

cliente decidirá se aceita ou não a configuração. Aceitando a configuração, ela enviará

uma nova mensagem ao servidor informando que a configuração foi recebida.

4. Confirmação: Ao receber a mensagem do cliente, informando que a configuração foi

aceita, o Servidor DHCP envia a última mensagem, confirmando a configuração da

máquina cliente.

Page 174: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

174

3. Configuração do Servidor DHCP

A configuração do Servidor DHCP é feita a partir do arquivo “/etc/dhcpd.conf”. A configuração

a ser feita, aqui, assumirá as seguintes características:

Rede: 192.168.27.0

Máscara: 255.255.255.0;

Gateway: 192.168.27.1;

Servidor DNS: 192.168.27.1;

Domínio: unidade22.com.br;

Máquinas na rede terão IP entre: 192.168.27.100 à 192.168.27.180;

Para a configuração apresentada, deve-se escrever o arquivo como mostrado na figura 1:

ddns-update-style none; option routers 192.168.27.1; option domain-name-servers 192.168.27.1; option domain-name “unidade27.com.br”; subnet 192.168.27.0 netmask 255.255.255.0 { range 192.168.1.100 192.168.1.150; }

Figura 1: Exemplo de arquivo de configuração “/etc/dhcpd.conf”

O arquivo de configuração do Servidor DHCP é dividido em duas área: uma Global e outra

Específica. A área Global é apresentada na figura 1, as opções de configuração mais

importantes são:

Page 175: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

175

ddns-update-style: define o tipo de sincronização com o servidor DNS. Esta opção é

obrigatória, e os valores possíveis são: none, interim e ad-hoc.

authoritative: define o servidor DHCP prioritário. Não é necessário em ambientes com

apenas 1 servidor DHCP, mas se houver mais de um, um dos servidores

obrigatoriamente deverá ter este parâmetro.

default-lease-time: define o tempo mínimo, em segundos, que um número IP será

associado a uma máquina da rede;

max-lease-time: define o tempo máximo, em segundos, que um número IP será

associado a uma máquina da rede;

option routers: define o endereço IP da máquina que servirá como gateway

(geralmente a máquina ou roteador que conecta à Internet).

option domain-name-servers: define os endereços dos servidores DNS para a rede.

Os números dos servidores DNS são separados por vírgulas;

option domain-name: define o nome de domínio dos clientes;

subnet <rede> netmask <mascara>: definem a rede e a máscara a ser utilizadas.

Esta opção também é obrigatória;

range: define o intervalo de numeração que será utilizado para identificar as máquinas

da rede. Pode existir mais de uma faixa, sendo escrita cada uma em uma linha

diferente, prescedidas pelo identificador “range”. Deve existir obrigatoriamente pelo

menos 1 intervalo definido.

A outra área é a Área Específica. Nesta área são colocadas configurações específicas para

determinadas máquinas, como por exemplo um número fixo de IP.

host: nome da máquina;

Page 176: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

176

use-host-decl-names: se o valor for “true”, então o nome definido em host será

passado para a máquina cliente;

hardware ethernet: número MAC da máquina clliente;

fixed-adress: número de IP que será fixo para a máquina cliente.

Quando houver algum conflito entre as áreas Global e Específica, prevalecerá o que estiver

definido na área Específica. Se uma máquina tiver seu IP definido na área Específica, e este

IP estiver dentro da faixa definida na área Global, o servidor DHCP não enviará este IP para

uma segunda máquina, mesmo que a segunda máquina já tenha utilizado o IP anteriormente

e for ligada primeiro.

Na figura 2 é apresentada outra opção de escrita do arquivo “/etc/dhcpd.conf”:

ddns-update-style none; option routers 192.168.27.1; option domain-name-servers 192.168.27.1; option domain-name “unidade27.com.br”; subnet 192.168.27.0 netmask 255.255.255.0 { range 192.168.1.100 192.168.1.150; range 192.168.1.180 192.168.1.200; } host Impressora-HP2600 { use-host-decl-names: false; hardware ethernet: 00:01:d5:3a:77:a5; fixed-adress: 192.168.27.151; } host ftp { use-host-decl-names: true; hardware ethernet: 00:a2:f3:54:81:07; fixed-adress: 192.168.27.171; }

Figura 2: Exemplo de arquivo de configuração “/etc/dhcpd.conf” com restrições específicas

Page 177: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

177

Também é possível configurar o Servidor DHCP pelo drakwizard, basta ir seguindo as

opções que aparecem e preencher os campos de acordo com o necessário. Mas, por ser um

processo automático e simplificado, opções específicas deverão ser feitas manualmente,

editando-se o arquivo “/etc/dhcpd.conf”.

Page 178: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

178

UNIDADE 23

PHP

Objetivo: Conhecer a importância da Linguagem PHP

1. Introdução

O PHP, inicialmente, era chamado de PHPtools, que significava “Personal Home Page tools”.

Atualmente a sigla representa “PHP: Hypertext Preprocessor”. Originalmente foi

desenvolvido pelo programador dinamarquês Rasmus Lerdorf, responsável pelas versões 1

em 1994 e versão 2 em 1995, sendo a versão 3 escrita por Ramus, Zeev Suraski e Andi

Gutmans, sendo esta liberada em 1998. Em 2000 surgiu a versão 4, e em 2004 foi lançada a

versão 5. A versão 6 é aguardada para lançamento em 2010.

O PHP é uma linguagem de programação, desenvolvida para facilitar a construção de

páginas para a Internet. Os programas escritos em PHP ficam armazenados no computador

servidor, e o que as pessoas acessam são os resultados dos programas.

2. Utilização

A linguagem PHP é uma linguagem de script de propósito geral, isso significa que ela pode

ser utilizada para construir diversos scripts. Mas a principal utilização do PHP é na Internet;

sendo o principal rival das linguagens ASP da Microsoft e JSP da Sun Microsystem (que

atualmente pertence à Oracle Corporation).

Existem várias ferramentas de programação para o PHP, as principais são:

CakePHP;

Symfony;

Page 179: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

179

CodeIgniter;

Zend Framework.

Na internet, a principal função dos scripts PHP é a filtragem de formulários, lendo os dados

digitados, estando presente em mais de 20 milhões de páginas.

As vantagens na utilização do PHP em relação à outras linguagens são as seguintes:

O programa é gratuito, diferente do ASP que é pago;

O programa consome pouca memória e precisa de pouco processamento no servidor,

diferente do JSP que consome muita memória e exige muito dos processadores;

Tem acesso a banco de dados diversos;

Possui capacidade em processar imagens, montando figuras para gerar gráficos;

Manipula arquivos PDF;

Manipula informações XML;

Manipula arquivos texto;

Suporte aos protocolos IMAP, POP3, FTP e outros;

Utiliza funções e Orientação a Objetos.

Page 180: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

180

3. Programação

A escrita dos programas PHP pode ser feita em qualquer editor de texto.

A figura 1 mostra um exemplo de um programa simples em PHP:

Figura 1: Primeiro programa em PHP

Para executar qualquer programa em PHP, basta utilizar o executor de php, chamado “php-

cgi”:

$ php-cgi <arquivo.php>

A sintaxe da linguagem PHP é semelhante a sintaxe de diversas linguagens, com algumas

pequenas variações. Todo programa PHP inicia com o identificador “<?php” e termina com o

identificador “?>”.

Os comandos “if”, “else”, “while”, “for”, “do...while”, “switch...case”, e vários outros estão

disponíveis. Além de uma grande variedade de funções que acessam arquivos: “fopen”,

“fclose”, “fgets”, “fputs”, “fwrite”, “fread”, “fscanf”, entre outras.

Page 181: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

181

A figura 2 mostra outro exemplo de programa PHP que realiza a leitura do arquivo texto

“usuarios.txt”:

Figura 2: Programa PHP que lê conteúdo de arquivo texto

Para executar programas PHP no terminal de comandos será necessária a instalação do

programa “php-cgi”. Para utilizar programas PHP em páginas da HTML, a solução mais

indicada é instalar um módulo adicional no servidor http utilizado. No caso do Apache, o

módulo chama-se “apache-mod_php”:

Figura 3: Instalação de programas para o funcionamento do PHP

Page 182: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

182

UNIDADE 24

Servidor de Banco de Dados

Objetivo: Conhecer o servidor de banco de dados MySQL

1. Introdução

Uma das grandes vantagens em ter um servidor em uma organização é utilizá-lo para

centralizar as informações importantes. E, para gerenciar essas informações, a ferramenta

básica é um Gerenciador de Dados.

Um dos programas mais utilizados nos sistemas Linux, para gerenciar dados, é o programa

MySQL. Esse programa é um Gerenciador de Banco de Dados Relacional e opera todas as

suas funções com base na linguagem SQL. Permite a criação de ambientes multiusuário e

diversos bancos de dados.

O MySQL é um programa que possui licenças de distribuição gratuito e licenças pagas. As

licenças pagas dão direito a suporte técnico e atualizações automáticas. As licenças gratuitas

são atualizadas apenas quando a equipe de desenvolvimento liberar uma nova versão.

Atualmente a equipe oficial de desenvolvimento faz parte da Oracle Corporation, que

desenvolve o banco de dados Oracle.

O MySQL é utilizado por diversas empresas, sendo as mais destacadas: Google, Wordpress,

Facebook e Nokia. Essas empresas manipulam bases de dados gigantescas, e mantém uma

vasta estrutura de servidores.

Page 183: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

183

2. Utilização

A utilização do MySQL pode ser feita tanto pelo terminal de comando do próprio MySQL

quanto por uma ferramenta gráfica que pode ser; o MySQL GUI Tool Kit ou o Navicat ou

ainda, outra que se queira utilizar):

bsh$ mysql Welcome to the MySQL monitor. Commands end with ; ou \g Your MySQL connection id is 89 Server Version: 5.1.34 Mandriva Linux – MySQL Standard Edition mysql> create database DB_ESAB; Query OK, 1 row affected (0.04 sec) mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | BD_ESAB | | mysql | | test | +--------------------+ 4 rows in set

Figura 1: Terminal de Comandos do MySQL

Figura 2: MySQL GUI Tool

Page 184: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

184

Figura 3: Navicat

3. Comandos Principais

Como é um Gerenciador SQL o MySQL, aceita todos os comandos padronizados por essa

linguagem. Assim sendo, os comandos “CREATE”, “SELECT”, “UPDATE”, “DELETE” e

diversos outros da linguagem SQL são aceitos.

3.1 Criação De Banco De Dados

Para criar uma tabela no MySQL utilizando-se o terminal de comando utiliza-se o comando:

mysql> CREATE DATABASE nome_do_banco; Query OK, 1 row affected (0.04 sec)

Figura 4: Criação de Banco de Dados

Cada banco de dados criado deve possuir um nome único.

Page 185: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

185

3.2. Manipulação de Tabelas

Após criar um Banco de Dados, deve-se construir a estrutura do banco, definindo quais são

as tabelas e quais serão os campos de cada tabela. Para construir uma tabela utiliza-se o

comando “create table”, como mostra a figura 5.

CREATE TABLE Produtos ( Codigo int NOT NULL, Descricao varchar(255), Preco currency, Dt_Inclusao date, Qtd_Estoque int, PRIMARY KEY (Codigo) )

Figura 5: Criação de uma tabela de dados

Se uma tabela não for mais útil, pode-se apagá-la com o comando “drop table”, ou alterar

seus campos com o comando “alter table”

3.3. Manipulação dos Dados

A principal tarefa de um Gerenciador de Banco de Dados é manipular dados. Para realizar

essa tarefa existem os comandos “select”, “update”, “delete” e “insert”. A figura 6 demonstra

a utilização do comando “select”.

SELECT Codigo, Descricao, Preco FROM Produtos; Figura 6: Criação de uma tabela de dados

Page 186: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

186

UNIDADE 25

Servidor de Correio Eletrônico

Objetivo: Conhecer a Configuração de um Servidor de Correio Eletrônico

1. Introdução

Um Servidor de Correio Eletrônico é um computador que envia, recebe e armazena

mensagens eletrônicas. Um dos programas utilizados, no Linux, para realizar esta tarefa é o

Cyrus, que opera nos protocolos SMTP, POP3 e IMAP.

O protocolo SMTP é utilizado quando se deseja enviar alguma mensagem. Já os protocolos

POP3 e IMAP são utilizados quando é preciso receber alguma mensagem. O protocolo IMAP

possui várias vantagens em relação ao POP3, sendo uma opção mais interessante de ser

utilizada.

IMAP é a sigla para Internet Message Access Protocol, que significa Protocolo de Acesso à

Mensagens na Internet. Este protocolo tem como vantagem o fato de que as mensagens

permanecem disponíveis ao usuário no servidor, e são gravadas na máquina local apenas

quando o usuário desejar. O protocolo POP3 grava todas as novas mensagens no

computador do usuário, assim que ele conecta-se no servidor, não permitindo que o usuário

escolha quais são as mensagens que ficarão no servidor, e quais serão armazenadas

localmente.

Essa diferença permite que um usuário tenha sempre acesso às mensagens mais

importantes, pois ele pode deixar estas mensagens armazenadas no servidor. Não importa

onde o usuário esteja, ou qual computador utilize, ele sempre terá acesso a essas

mensagens.

Page 187: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

187

Para iniciar a configuração do Servidor de Correio Eletrônico deve-se ter instalado o

programa Cyrus Mail no servidor. Após a instalação, pode-se realizar as devidas

configurações.

2. Autenticação no Servidor de Correio

Existem 2 principais métodos de autenticação no Cyrus:

1. SASLDB: este é o método padrão, os usuários e as senhas são armazenados no

arquivo “sasldb”.

2. LDAP: os usuários e as senhas são armazenados em um diretório LDAP.

Também é possível configurar a autenticação para utilizar o Kerberos, PAM ou “shadow”.

3. Configuração do Servidor de Correio

Para utilizar o Cyrus Mail deve-se ter no servidor um grupo chamado “mail” e um usuário

chamado “Cyrus”.

Para configurar o servidor Cyrus, deve-se editar os arquivos “/etc/syslog.conf” e

“/etc/imapd.conf”.

O arquivo “/etc/syslog.conf” ficará semelhante ao apresentado na figura 1:

local6.debug /var/adm/imapd.log auth.debug /var/adm/auth.log

Figura 1: Configuração do arquivo “/etc/syslog.conf”

Page 188: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

188

O arquivo “/etc/imapd.conf” ficará semelhante ao apresentado na figura 2:

configdirectory: /var/imap partition-default: /var/spool/imap admins: cyrus srvtab: /var/imap/srvtab allowanonymouslogin: no sasl_passwd_check: saslauthd

Figura 2: Configuração do arquivo “/etc/imapd.conf”

Para testar a conexão, pode-se utilizar a seguinte sequência de comandos:

$ su cyrus $ imtest -m login -p imap localhost

O primeiro comando mudará o usuário de ROOT para CYRUS, e o segundo comando testará

a conexão com o serviço de correio disponível no servidor “localhost”. Se o servidor tiver

outro nome, essa última opção deverá ser alterada: $ imtest -m login -p imap <nome-do-

servidor>.

Para funcionar corretamente, o servidor necessitará da existência dos seguintes diretórios:

/var/adm

/var/imap

/var/imap/srvtab

/var/spool/imap

E dos seguintes arquivos, que podem ser criados com conteúdo vazio:

/var/adm/imapd.log

/var/adm/auth.log

Page 189: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

189

Se os diretórios não existiam, anteriormente, e foram criados pelo ROOT, deve-se digitar a

seguinte sequência de comandos:

$ chown cyrus /var/imap /var/spool/imap /var/imap/srvtab $ chgrp mail /var/imap /var/spool/imap /var/imap/srvtab $ chmod 750 /var/imap /var/spool/imap /var/imap/srvtab

Estes comandos ajustarão os diretórios para o usário CYRUS.

O arquivo “/etc/services” deve possuir as seguintes linhas:

pop3 110/tcp imap 143/tcp imsp 406/tcp kpop 1109/tcp sieve 2000/tcp

Deve-se acrescentar ao arquivo “/etc/inetd.conf” o seguinte conteúdo:

imap stream tcp nowait cyrus /usr/cyrus/bin/imapd imapd pop3 stream tcp nowait cyrus /usr/cyrus/bin/pop3d pop3d

E o arquivo “/etc/sendmail.mc” deve ser acrescentado com:

MAILER(local) MAILER(cyrus) define(`confLOCAL_MAILER',`cyrus') LOCAL_RULE_0 R$=N $: $#local $: $1 R$=N < @ $=w . > $: $#local $: $1 Rbb + $+ < @ $=w . > $#cyrusbb $: $1

Após editar o arquivo acima, deve-se digitar o comando:

$ m4 sendmail.mc > sendmail.cf

Page 190: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

190

O sendmail é o programa que enviará as mensagens do servidor (SMTP).

O cyrus receberá e armazenará as mensagens no servidor (POP3 e IMAP)

4. Criação de Contas de Correio

Para criar contas de correio para os usuários utiliza-se o programa CyrAdm. Para executar

esse programa, deve-se fazer o login com o usuário “Cyrus”, e depois digitar o seguinte, no

terminal de comandos:

$ cyradm -u <usuário> <servidor>

O campo <usuário> deve ser preenchido com o nome do usuário a ser criado e o campo

<servidor> com o nome do computador, que será o Servidor de Correio.

Após a criação dos usuários, deve-se criar as Caixas Postais. Para isso, com o usuário

“Cyrus”, utiliza-se o programa CM:

$ cm user.<usuario>

No lugar do campo <usuario>, o nome da conta do usuário deverá ser informada. Por

exemplo:

$ cyradm -u ricardoms esab.com.br $ cm user.ricardoms

Page 191: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

191

UNIDADE 26

Apache – Servidor WWW Objetivo: Conhecer a utilização de servidores web.

1. Introdução

Atualmente é muito importante para a maioria das médias e grandes empresas

disponibilizarem um espaço em seus servidores para a criação de uma Intranet. Uma Intranet

é uma Internet particular, com conteúdo controlado e adequado por uma empresa, com

acesso também gerenciado pela mesma.

Para criar uma Intranet, várias ferramentas são necessárias e a principal delas é o Servidor

Web. A Internet é chamada de Teia Global, que em inglês é escrito como “World Web”. Os

servidores que fornecem o conteúdo disponível na Internet foram denominados, em inglês,

“Web Servers” e em português, são chamados de Servidores Web.

Os Servidores Web mais famosos atualmente são:

Microsoft Internet Information Server: IIS;

Apache HTTP Server: Apache.

O Servidor Web da Microsoft opera exclusivamente no sistema operacional Windows. Já o

Apache pode ser utilizado em vários sistemas: Linux, Solaris, Netware, Windows, Mac OS X,

dentre outros.

Page 192: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

192

Os Servidores Web são acessados pelos Clientes Web, geralmente os navegadores da

internet: Microsoft Internet Explorer, Mozilla Firefox, Google Chrome, Opera Browser, Apple

Safari, dentre outros.

Figura 1: Servidor Web sendo acessado por Cliente Web

2. Características

As principais características do Apache são:

Integração com Linguagens de Programação: PHP, Perl, ASP, e outras;

Módulos DSO (“Dynamic Shared Objects”, que significa: Objetos Dinâmicos Compartilhados): Permite alterar as funcionalidades do servidor sem necessidade de recompilação do programa;

Autenticação: Permite a especificação de restrições específicas para arquivos ou diretórios acessados no servidor;

Virtual Hosting: Permite gerenciar vários domínios, simultaneamente, pelo mesmo processo, ou ter mais de um processo gerenciando um domínio;

Servidor Proxy: Possibilita a configuração de limite de acesso, caching e redirecionamentos;

Criptografia: Suporte, via SSL, permitindo a concessão de certificados digitais;

Internacionalização: Possibilita a exibição do conteúdo da página no idioma do Navegador.

Suporte a tipos MIME;

Page 193: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

193

O Apache está incluído na maioria das distribuições Linux, inclusive no Mandriva Linux 2009.

Caso haja necessidade, pode-se acessar a página oficial do Apache para obter a versão

mais recente:

http://httpd.apache.org

Figura 2: Página oficial do Apache.

3. Arquivos de Configuração

O Servidor Apache é dividido em 3 partes:

httpd: programa principal que gerencia as páginas HTML;

apachectl: utilitário para controlar o apache;

httpd.conf: principal arquivo para configurar o apache.

Essas 3 partes são utilizadas, cada uma a sua maneira, para fazer com que um servidor

comum torne-se um Servidor Web. Os arquivos de configuração do Apache, por padrão,

encontram-se no diretório: “/etc/httpd/conf” e “/etc/sysconfig”, sendo o principal:

/etc/httpd/conf/httpd.conf: este é o pincipal arquivo de configuração do Apache,

controlando a operação do daemon (serviço);

Page 194: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

194

A figura 3 mostra os principais parâmetros de configuração pertencentes ao httpd.conf:

## httpd.conf -- Arquivo de configuração do servidor httpd Apache # Listen: porta que o servidor atenderá. Listen 80 # HostnameLookups: registra os nomes DNS dos clientes (ON) # ou apenas seus endereços IP's (OFF) HostnameLookups off # User/Group: nome (ou #número) do usuário/grupo que executará # o servidor httpd. User apache Group apache # ServerAdmin: endereço de e-mail, onde os problemas com # o servidor devem ser enviadas. ServerAdmin [email protected] # ServerRoot: topo da árvore de diretórios onde os arquivos # de configuração do servidor, erros, e log são mantidos. ServerRoot /etc/httpd # ExtendedStatus: controla se o Apache gerará detalhes # completos de status ExtendedStatus on # ErrorLog: localização do arquivo de log de erros. ErrorLog /var/log/apache/error.log LogLevel warn # Timeout: O número de segundos antes de receber # e enviar um time out Timeout 300 # KeepAlive: permitir ou não conexões persistentes KeepAlive On # MaxKeepAliveRequests: número máximo de requisições # que serão permitidas MaxKeepAliveRequests 100

Figura 3: Principais parâmetros do httpd.conf

Page 195: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

195

Os arquivos de Log também possuem uma localização padrão: “/var/log/httpd”, e são os

seguintes:

access_log: registra o acesso aos arquivos no servidor;

error_log: registra os erros ocorridos, tanto de acesso, quanto internos;

4. Utilização

O Apache pode ser iniciado como Servidor Inetd ou Daemon. A inicialização de programas

pelo Inetd foi demonstrada na Unidade 18. Para iniciar o Apache, como serviço, utiliza-se um

dos diretórios /etc/rc_.d, pois cada diretório possui os programas que serão executados no

respectivo Nível de Execução.

O script de inicialização do Apache está em: /etc/init.d/apache. E esse script aceita os

seguintes parâmetros:

start: inicia o Apache;

stop: finaliza o Apache;

restart: reinicia o Apache, com intervalo de 5 segundos entre a finalização e o novo

início;

graceful: reinicia o Apache sem finalizar as conexões existentes.

gracefulstop: finaliza o Apache sem finalizar as conexões existentes. Os arquivos de

Log não são fechados imediatamente.

$ ./etc/init.d/apache start

Page 196: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

196

UNIDADE 27

Servidor de Arquivos e RAID Objetivo: Entender a criação de um servidor de arquivos e a utilização da tecnologia RAID.

1. Introdução

NFS é um protocolo para o gerenciamento de arquivos em rede. Os arquivos ficam

armazenados em vários computadores na rede, e são acessados de maneira simplificada

pelos usuários.

Este protocolo foi escrito em 1984 pela SUN Microsystems para o Solaris, mas se tornou

padrão nos sistemas UNIX.

RAID é a sigla para Redundant Array of Independent Disks, que significa Arranjo

Independente de Discos. Esta tecnologia é utilizada para aumentar a segurança dos dados e

velocidade de operação dos discos-rígidos no servidor.

A utilização do protocolo NFS em conjunto com a tecnologia RAID aumentará em muito a

confiabilidade e segurança do servidor Linux. Pode-se definir vários servidores com diretórios

compartilhados, ou apenas um Seervidor de Arquivos centralizado. O modelo de Servidor de

Arquivos centralizado será adotado nesta Unidade.

2. Configuração do NFS

Para configurar um servidor NFS deve-se:

1) Ter instalado o pacote NFS-Utils;

2) Criar um diretório que será compartilhado na rede;

3) Editar o arquivo “/etc/exports”.

Page 197: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

197

O diretório citado no item 2 deverá ser criado, pois será este diretório que ficará disponível

para outros uusuários. Se houver necessidade de mais diretórios compartilhados, então eles

deverão ser criados.

Por exemplo, assumindo que o Servidor de Arquivos possui a seguinte configuração:

IP: 192.168.27.220

Diretórios Compartilhados:

o /tmp/arquivos

o /tmp/programas

o /tmp/publico

Deve-se editar o arquivo “/etc/exports” no Servidor de Arquivos como mostrado na figura 1:

/tmp/arquivos 192.168.27.0/255.255.255.0 /tmp/programas 192.168.27.0/255.255.255.0 (ro) /temp/publico 192.168.27.0/255.255.255.0 (rw,insecure)

Figura 1: Exemplo de escrita para o arquivo “/etc/exports”

O conteúdo deste arquivo é dividido em duas colunas:

A primeira coluna indica os diretórios que serão exportados pelo computador;

A segunda coluna indica as máquinas que terão acesso ao diretório, e o tipo de acesso:

o 192.168.27.0/255.255.255.0: indica que todas as máquinas da rede 192.168.27.xxx terão acesso;

o (ro) indica acesso apenas para leitura;

o (rw) indica acesso para leitura e escrita.

o (insecure) indica que a conexão não precisa ser autenticada, por exemplo, pode vir de FTP como convidado.

Page 198: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

198

O acesso pode ser definido para uma rede, ou para máquinas específicas, onde deve-se

informar apenas o IP da máquina. Mais de uma máquina poderá ser definida, separando-se

com espaços cada uma delas, como mostra a figura 2:

/tmp/arquivos 192.168.27.51(rw) 192.168.27.52(rw) Figura 2: Exemplo de escrita para o arquivo “/etc/exports”

Quando os tipos de acesso não são especificados o tipo padrão é assumido, que permite o

acesso apenas para leitura, com autenticação de senha (do Linux ou SSH). Existe várias

outras opções, que permitem configurações diversas de acesso.

A partir da configuração do Servidor de Arquivo, ou dos servidores, deve-se configurar os

computadores da rede para acessarem os diretórios compartilhados. Pode-se fazer isso

através do programa “mount” ou editando-se o arquivo “/etc/fstab”, como mostra a figura 3:

192.168.27.220:/tmp/arquivos /arquivos nfs soft,bg,retry=10 0 0 192.168.27.220:/tmp/programas /programas nfs soft,bg,retry=10 0 0 192.168.27.20:/temp/publico /publico nfs soft,bg,retry=10 0 0

Figura 3: Exemplo de escrita para o arquivo “/etc/exports”

As opções “soft” e “bg” significam o seguinte:

soft: Não exibe uma mensagem de erro na tela se houver algum erro;

bg: A montagem do diretório é feita em segundo plano. O sistema não “paraliza”

durante a montagem do sistema de arquivos NFS;

retry: tempo de espera em minutos até que consiga montar o diretório efetivamente.

O resultado desta configuração será a seguinte: todos os arquivos disponíveis nas máquinas

da rede, nos diretórios locais “/arquivos”, “/programas”, e “/publico”, na verdade estão

armazenados no Servidor de Arquivos.

Page 199: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

199

Isso implica no seguinte: qualquer alteração feita no servidor 192.168.27.220 em um arquivo,

refletirá automaticamente na rede. Por outro lado, qualquer gravação feita por um cliente em

seu diretório “/publico” estará disponível para todos (desde que as permissões de acesso do

arquivo permitam).

A configuração mais comum é a seguinte:

Criar um Servidor de Arquivos e compartilhar o diretório “/home”.

Em cada máquina cliente, montar o diretório “/home” local pelo servidor.

Esta configuração pode ser vista na figura 4:

No Servidor 192.168.27.220, incluir no arquivo “/etc/exports”: /home 192.168.27.0/255.255.255.0 (rw) Nas máquinas clientes, incluir no arquivo “/etc/fstab”: 192.168.27.220:/home /home nfs soft,bg,retry=10 0 0

Figura 4: Alteração para tornaar o diretório “/home” compartilihado na rede

Desta maneira, qualquer usuário que utilizar a rede e gravar seus arquivos em sua própria

conta, gravará os arquivos automaticamente no Servidor. E todas as cópias de segurança

feitas no servidor, armazenarão os arquivos de todos os usuários.

Um cuidado que deve-se tomar ao editar o arquivo “/etc/fstab” é de se colocar sempre o tipo

de sistema de arquivos como NFS.

Page 200: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

200

UNIDADE 28

SAMBA – Conexão com Windows Objetivo: Aprender sobre o funcionamento do SAMBA, que permite a integração entre Linux e MS-Windows.

1. Introdução

SAMBA é um programa para permitir o acesso a servidores

Windows, pois estes utilizam um protocolo específico, chamado

Server Message Block, ou SMB.

O protocolo SMB foi desenvolvido pela IBM em 1985, com o objetivo de criar um protocolo de

acesso a arquivos em rede. Em 1987 a Microsoft adotou este protocolo em seu programa

“LAN Manager”. E desde o lançamento do MS-Windows NT, o protocolo SMB é utilizado

nativamente em servidores Windows.

Uma das características do Linux é sua integração com outros servidores, e através do

SAMBA permite atualmente a inclusão de um servidor Linux a um Domínio de um Servidor

Windows, bem como a criação de um Servidor de Domínio Primário no próprio Linux.

2. Características

As principais características do SAMBA, atualmente, são as seguintes:

Compartilhamento de Arquivos: permite o compartilhamento de arquivos entre

Windows e Linux de maneira transparente, através de protocolos, como NetBIOS e

TCP/IP;

Page 201: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

201

Compartilhamento de Impressoras: o SAMBA permite que se utilize uma impressora

na rede, estando ela em uma máquina Windows ou Linux;

Além destas duas características, as versões mais recentes do SAMBA permitem a

integração com Domínios do Windows e com o Active Directory.

Para utilizar o SAMBA no Linux, dois programas precisam estar ativos, geralmente como

serviços:

smbd: permite o compartilhamento de arquivos e impressoras;

nmbd: provê o serviço de resolução de nomes na rede.

O primeiro permite o compartilhamento básico, e o segundo o acesso aos serviços de

Domínio e Active Directory do Windows Server.

3. Configuração

Para ser configurado, o SAMBA necessita da edição do arquivo “/etc/samba/smb.conf”. Este

arquivo é dividido em duas partes: Configuração Global e Compartilhamentos.

A primeira parte de configuração global, é definida na seção [global], e irá caracterizar as

configurações globais do SAMBA, algumas delas são as seguintes:

Definições para Windows:

o workgroup: Domínio do Windows;

o netbios name: nome do servidor Linux/SAMBA;

o server string: descrição do servidor Linux/SAMBA;

Page 202: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

202

Definições de Impressão:

o printcap name: servidor de impressão;

o load printers: indica se carregará ou não as impressoras;

Arquivos de Log:

o log file: define onde será gravado o Log;

A segunda parte, configuração de compartilhamentos, definirá como e quais serão os

compartilhamentos disponibilizados na rede. Esta parte pode ser divivida em várias seções:

Diretórios compartilhados, Impressoras, Arquivos, e várias outras.

Para compartilhar um diretório, deve-se configurar basicamente as seguintes opções:

path: informa o endereço completo do diretório a ser comparttilhado no servidor

Linux/SAMBA;

writable: indica se os usuários poderão gravar arquivos no diretório; (existe uma

opção chamada Read Only, que funciona de modo semelhante, mas inverso)

valid users: usuários que podem acessar o compartilhamento. Se for prescedido pelo

sinal “+” define um grupo de usuários.

A lista de opções do SAMBA é muito extensa, e não há necessidade de incluir todas as

opções nesta Unidade.

A configuração final do SAMBA dependerá de uma série de fatores:

Tipos de Compartilhamento;

Características da Rede;

Page 203: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

203

Integração ou não com Windows Server;

dentre outras.

4. Exemplo de Configuração

Neste capítulo será mostrado, como exemplo, um arquivo com uma configuração básica para

o funcionamento do SAMBA.

[global] workgroup = esab.com netbios name = Serv_Esab server string = "Servidor ESAB-LX" encrypt passwords = yes unix password sync = yes log file = /var/log/samba/s_esab_lx.log wins support = yes security = share [pasta_publica] comment = Pasta Publica path = /esab/pub writable = no [pasta_admin] comment = Pasta dos Administradores path = /esab/admins writable = yes valid users = pedro, tiago, joao [pasta_usuarios] comment = Pasda dos Usuarios path = /esab/usuarios writable = yes valid users = +funcionario

Figura 1: Exemplo de arquivo de configuração do SAMBA

No arquivo mostrado na figura 1 são definidas 4 seções: global, pasta_publica, pasta_admin

e pasta_usuarios.

Page 204: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

204

Na seção global são definidos o Domínio Windows, esab.com, e principalmente o tratamento

das senhas, que serão encriptadas (encrypt password) e sincronizadas com as senhas do

Linux (unix passwords sync), além do arquivo de Log.

Na seção pasta_publica é criada uma pasta, localizada em “/esab/pub” apenas para leitura

dos arquivos que estiverem ali.

Na seção pasta_admin é criada uma área exclusiva para os usuários pedro, tiago e joao.

Apenas estes 3 usuários poderão acessar o diretório “/esab/admins”.

E a última seção pasta_usuarios define que o diretório “/esab/usuarios” será acessado por

todos os usuários do grupo “funcionario”. O campo “valid users” define os usuários, mas

como o nome “funcionario” está precedido do sinal “+” então o nome indicado é considerado

como um nome de grupo de usuários.

Page 205: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

205

UNIDADE 29

Monitoramento do Servidor Objetivo: Aprender a monitorar o Servidor, para garantir o seu funcionamento.

1. Introdução

Após a instalação e configuração do Servidor, a principal tarefa a ser realizada será o seu

monitoramento. Este trabalho consiste em verificar continuamente a utilização dos recursos

do servidor:

Processador, Memória, Discos;

Usuários, Programas;

Transferência de Dados.

Uma das vantagens da utilização de uma ferramenta específica de monitoramento é a

customização permitida, principalmente a visualização em modo gráfico oferecida por muitas

dessas ferramentas, como pode ser visto na figura 1:

Figura 1: Monitoramento gráfico do servidor

Page 206: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

206

Existem várias ferramentas que realizam essa tarefa, e nesta Unidade algumas dessas

ferramentas serão analisadas:

Nagios;

Cacti;

OpenNMS;

Pandora FMS;

2. Nagios

O programa Nagios é um dos mais populares programas de

monitoramento de rede. Ele permite acompanhar computadores

e serviços, emitindo alertas quando necessário.

As principais características deste programa são:

Monitoramento de Serviços da Rede: SMTP, POP3, HTTP, ICMP, FTP, SSH, dentre outros.

Monitoramento do Computador: processador, discos-rígidos, memória.

Monitoramento de Alarmes: se um equipamento estiver conectado a rede, como por exemplo um No-Break ou Detector de Movimento, então este equipamento poderá ser monitorado pelo Nagios.

Adição de “plug-ins” específicos desenvolvidos por terceiros. Estes “plug-ins” podem ser escritos em C++, Perl, PHP, bsh, e várias outras linguagens.

Habilidade para criar uma hierarquia na rede, permitindo a detecção de computadores que estejam “inalcançaveis” na rede. Esta característica é útil em ambientes que possuem várias redes internas.

Emissão de notificações por correio eletrônico ou SMS (telefone celular);

Habilidade para definição de scripts para solução de problemas. Esses scripts podem ser ativados quando determinado problema acontecer na rede. Por exemplo, quando a memória do servidor ficar sobrecarregada, desliga-se alguns serviços temporariamente, reiniciando-os quando for possível.

Page 207: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

207

O Nagios também possui os seguintes módulos adicionais:

Nagios Remote Executor: possibilita a execução de scripts remotamente.

Nagios Graph: permite a visualização de gráficos de acompanhamento;

PNP4Nagios: também permite a visualização de gráficos.

A figura 2 mostra uma das telas que podem ser vistas utilizando-se o Nagios:

Figura 2: Monitoramento feito pelo Nagios

3. Cacti

O Cacti é um programa desenvolvido em PHP para realizar o

monitoramento da rede. O usuário pode cadastrar alguns

serviços da rede e acompanhar o seu comportamento em

intervalos de tempo determinados.

Page 208: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

208

O Cacti é bastante utilizado para o monitoramento do tráfego de rede, através do

acompanhamento de roteadores ou switchs, a partir do protocolo SNMP (Simple Network

Management Protocol).

O Cacti também permite a criação de ambientes separados para vários usuários, permitindo

que cada um faça o monitoramento que desejar (desde que os mesmos tenham permissão

para fazê-los).

Os dados são armazenados em um banco de dados MySQL, a partir de scripts que são

criados e cadastrados no Cacti. São estes scripts que fornecerão as informações que serão

visualizadas.

Uma das telas mostrada pelo Cacti pode ser vista na figura 3:

Figura 3: Utilização do Cacti para monitorar uma rede

Page 209: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

209

4. OpenNMS

O programa OpenNMS foi desenvolvido em Java, e tem como

principal característica o foco em Distribuição e Escalabilidade.

As principais características deste programa são:

Gerenciamento de Serviços: monitora a disponibilidade e latência (demora no

atendimento), medindo e gravando as informações sobre os serviços;

Coleta de Dados: coleta as informações geradas pelos componentes

(equipamentos/nós) da rede via SNMP, JMX, HTTP, WMI e NSClient. Com isso pode

monitorar desde a impressora até o consumo de processador no servidor;

Definição de Alarmes: a partir de determinados valores, eventos são acionados para

indicar que uma situação de emergência está ocorrendo. Por exemplo: Muitos

arquivos na fila da impressora, ou alto consumo do processador do servidor;

Gerenciador de Eventos: gerencia os eventos que acontecem, tanto no OpenNMS

quanto fora dele;

Emissão de Notificação: mensagens de aviso podem ser enviadas por correio

eletrônico ou XMPP (protocolo aceito por Trillian, GoogleTalk, Proteus, Kopete).

Page 210: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

210

Um exemplo de tela do OpenNMS pode ser visto na figura 5:

Figura 5: Exemplo de tela do OpenNMS

5. Pandora FMS

O programa Pandora FMS é um aplicativo que permite a

visualização da situação e utilização de diversos recursos da

rede: Firewall, Proxie, Banco de Dados, Servidor HTTP,

Roteadores, dentre outros.

Page 211: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

211

O Pandora é dividido em 6 módulos:

Pandora Agents;

Pandora Data Server;

Pandora Network Server;

Pandora Database;

Pandora SNMP Console;

Pandora Web Management System (Pandora Web Console).

O principal módulo é o “Pandora Agents”. Esse módulo será responsável em realizar o

monitoramento de fato, checando constantemente os parametros configurados. Os “agentes”

são pequenos scripts, que se comunicam via SSH, FTP, NFS ou outro modo, e em sua

maioria são escritos em Perl.

Os módulos servidores: “Pandora Data Server” e “Pandora Network Server”, são

responsáveis pelo acompanhamento dos dados gerados pelo “Pandora Agents”.

O módulo “Pandora Database” armazenará todas as informações gerenciadas pelo Pandora

FMS. Essas informações incluem: dados de coniguração, eventos, auditoria, dados coletados

pelos “agentes”, dentre outras.

Os módulos utilizados para operar o Pandora FMS são: “Pandora SNMP Console” e

“Pandora Web Console”. Eles permitem gerenciar as informações e assim realizar o

monitoramento do servidor.

Page 212: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

212

A figura 6 mostra uma das telas que podem ser vistas no Pandora FMS:

Figura 6: Pandora Agent

Page 213: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

213

UNIDADE 30

Certificação Linux Objetivo: Entender a importância da obtenção de Certificado Linux.

1. Introdução

Um Certificado é um documento que apresenta uma garantia de que o seu dono possui um

domínio. Na Informática, os Certificados garantem que os seus donos possuem habilidades

que os distinguem dos demais. Essas habilidades vão desde conhecimentos de Hardware à

Software.

Existem vários tipos de Certificados:

Certificado Microsoft: abrangem os programas desenvolvidos pela Microsoft, e

certificam pessoas que possuem avançados conhecimentos de utilização;

Certificado IBM: esse certificado é fornecido à pessoas com alto grau de

conhecimento nas plataformas IBM;

Certificado Borland: oferecido aos programadores que alcançaram grandes índices

de aproveitamento nas ferramentas desta empresa;

Certificado Red Hat: fornecido pela empresa Red Hat aos usuários do sistema

operacional Red Hat Linux, que possuem grandes habilidades na utilização deste

sistema;

Certificado Mandriva: na época da Conectiva Linux, essa oferecia uma certificação

totalmente brasileira. Após a compra pela Mandrake, e renomeação de ambas para

Mandriva, a nova certificação passou-se a chamar Certificado Mandriva Conectiva.

Esta certificação avalia 3 tipos de profissionais: Administradores de Sistema,

Administradores de Rede e Instrutores.

Page 214: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

214

Certificado LPI: este certificado é concedido pelo Instituto Profissional Linux (Linux

Professional Institute, em inglês), como proposta de um modelo de certificação

independente, pois não está relacionado a nenhuma empresa de informática.

Nesta Unidade serão vistas algumas características da Certificação LPI, como obtê-la e

como se preparar para a mesma.

2. Certificação LPI

O Instituto Profissional Linux, com sede no Canadá iniciou as avaliações para certificação no

Brasil em 2003. Este instituto é atualmente um dos mais importantes do mundo, e sua

certificação é desejada pela maioria dos profissionais.

As provas não têm foco em uma determinada distribuição Linux, sendo suas questões

elaboradas de maneira genérica, fazendo com que todos os usuário tenham as mesmas

condições de avaliação.

Várias empresas têm apoiado essa iniciativa, uma das mais destacadas é a Novell, que

distribui o Novell Suse Linux. Os cursos da Novell não são para emissão de certificados

próprios, mas são cursos preparatórios para obetnção do Certificado LPI.

A avaliação para receber o Certificado LPI é constituída de três níveis e, em cada nível, são

realizadas duas provas.

Os níveis são os seguintes:

Nível 1: Administrador Linux Júnior;

Nível 2: Administrador Linux Pleno;

Nível 3: Administrador Linux Sênior.

Page 215: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

215

2.1. Administrador Linux Júnior

As provas para o primeiro nível cobrem assuntos simples:

Utilização do Terminal de Comandos para a realização de tarefas;

Realizar tarefas de manutenção simples:

o Auxílio aos usuários;

o Administrar usuários em grandes sistemas;

o Realizar cópias e restaurações de segurança;

o Reiniciar o sistema de maneira segura.

Instalar e Configurar uma estação de trabalho contendo:

o Ambiente gráfico;

o Acesso à rede;

o Acesso à internet.

A figura 1 mostra dois exemplos de perguntas feitas para este nível:

Question What is the man command used for ? Answer A) It displays information about the syntax for a command

B) It is the replacement for the boy command C) It is a standard alisa to ls -la | more D) It is used to display formated HTML pages

Question What command do you use to create swap space ? Answer A) mkswap

B) activeswap C) swapon D) mkfs -t swap

Figura 1: Exemplos de questões para a prova de Nível 1 do LPI

Page 216: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

216

2.2. Administrador Linux Pleno

As provas do Nível 2 abordam os seguintes temas:

Administração de um servidor de tamanho médio ( até 250 usuários);

Planejamento, implantação, manutenção e segurança de uma rede mista (MS-

Windows e Linux), incluindo:

o SAMBA;

o Gateway (firewall, proxy, correio, intranet);

o Servidores (HTTP, FTP).

Supervisão de assistentes (técnicos de informática);

Definições de ampliação e compra de equipamentos.

A figura 2 mostra um exemplo de pergunta nesta prova:

Question A system with five separate drives is to be configured to use RAID and the main requirement is to obtain maximum possible I/O throughput. Which of the following RAID levels will provide the greatest throughput using all five drives ?

Answer A) RAID 0 B) RAID 1 C) RAID 3 D) RAID 5

Question When configuring name-based virtual hosts in Apache, which directive contains the name of the virtual host that is matched to the "Host:" request from the client ?

Answer A) NameVirtualHost B) VirtualHost C) ServerName D) UseCanonicalName E) ServerAlias

Figura 2: Exemplos de questões para a prova de Nível 2 do LPI

Page 217: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

217

2.3. Administrador Linux Sênior

O último nível, Nível 3, exigirá conhecimentos profundos em sistemas Linux, e os tópicos

abordados serão:

Administração de um servidor de grande porte (milhares de usuários);

Experiência com instalação e manutenção de sistemas Linux em computadores de

diferentes propósitos (Servidor, Estação de Trabalho, Roteador, Multimídia);

Experiência na integração de diversas tecnologias e sistemas;

Conhecimentos avançados na administração de sistemas Linux corporativos (Grandes

Empresas);

Habilidade em utilizar programas para fazer o planejamento e o gerenciamento da

rede;

Experiência avançada na integração entre Linux e MS-Windows, utilizando:

o LDAP,

o SAMBA,

o PAM,

o Active Directory.

Habilidade na criação de scripts bsh e perl e conhecimentos básicos em Linguagem C.

Habilidade no planejamento e implantação de sistemas complexos customizados para

soluções específicas (empresas com dezenas de servidores e ambientes

diferenciados, com integração de aplicações administrativas e sistemas legados).

Page 218: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

218

A figura 3 mostra dois exemplos de perguntas realizadas nas provas de nível 3:

Question vsftpd is reporting the error message: str_getpwnam. This is most likely because the _____ user account does not exist on the system.

Answer FITB

Question What permissions on the ~/.gnupg directory will not cause warnings or errors when running gpg?

Answer A) r-x------ B) rwx------ C) rwxrwx--- D) rwxrwxrwx

Figura 3: Exemplos de questões para a prova de Nível 3 do LPI

Antes de iniciar sua Avaliação Online, é fundamental que você acesse sua SALA

DE AULA e faça a Atividade 3 no “link” ATIVIDADES.

Atividade Dissertativa.

Acesse sua sala de aula, no link “Atividade Dissertativa” e faça o exercício proposto.

Bons Estudos!

Page 219: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

219

FÓRUM II

A utilização do sistema operacional Linux começa com a escolha de uma distribuição

adequada às necessidades do ambiente de uso. Para utilizar em casa, um ambiente onde

não serão necessárias ferramentas para gerenciamento e controle de uma rede, nem mesmo

um controle muito aperfeiçoado dos usuários, uma distribuição poderá apresentar um

determinado conjunto de aplicativos e ferramentas específicos. Já em um ambiente

empresarial, com várias máquinas, servidor centralizado, vários usuários e arquivos, não

poderá aceitar exatamente a mesma distribuição utilizada em um ambiente doméstico.

Acesse o Fórum do conteúdo e, liste os nomes das distribuições que você já utilizou,

mostrando as razões que levaram a escolha feita.

Caso tenha instalado uma distribuição e, depois, optado por trocar por outra, descreva os

pontos fracos da primeira escolha na distribuição.

Page 220: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

220

GLOSSÁRIO Caso haja dúvidas sobre algum termo ou sigla utilizada, consulte o link Glossário em sua

sala de aula, no site da ESAB.

Page 221: Módulo - Administração de Redes Linux

Copyright © 2009, ESAB – Escola Superior Aberta do Brasil

221

BIBLIOGRAFIA Caso haja dúvidas sobre algum termo ou sigla utilizada; ou queira ampliar a leitura, consulte

o link Bibliografia em sua sala de aula, no site da ESAB.