existentes. 1 Introduo Um sistema Linux nunca foi entregue sozinho, contendo apenas o sistema operacional. Desde o incio eram criadas verses chamadas distribuies, que continham alm do Sistema Operacional Linux (o chamado kernel do Linux), uma srie de aplicativos e utilitrios. Algumas empresas, e grupos de desenvolvedores, passaram a entregar (gratuitamente ou por um preo) o sistema operacional Linux, e cada CD passou a ser chamado de uma Distribuio Linux. As principais distribuies disponveis no Brasil so: Red Hat, Novel SuSE, Conectiva, Librix, Insignea, Kurumin, Ubuntu. No final da dcada de 1990, praticamente 90% das distribuies do Linux eram utilizadas em Servidores. Atualmente, as distribuies so desenvolvidas para serem utilizadas em Computadores Pessoais ou Servidores, sendo que algumas permitem que se escolha qual tipo de computador ser utilizado. Ento, o primeiro cuidado que se deve ter na escolha de qual distribuio ser instalada no Servidor. 2 Distribuies A tabela 1 mostra uma comparao de algumas caractersticas das distribuies mais importantes no Brasil: Distribuio Fedora openSuSE Mandriva Librix Insignea Kurumin Ubuntu Slackware Debian Muriqui Verso Kernel Empresa Estvel 12 11.2 2010 3.2 5.0 8.06 9.10 13 5.0.3 1.4 2.6 2.6 2.6 2.6 2.6 2.6 2.6 2.6 2.6 2.6 Red Hat Novell Itautec Insignea Docttum Pas EUA ALE BRA BRA BRA EUA EUA BRA Cliente Servidor SIM SIM SIM SIM SIM SIM SIM SIM SIM SIM SIM SIM SIM Origem da Reconhecimento distribuio de Perifricos RedHat RedHat RedHat Gentoo Alta Alta Alta Mdia(3) Mdia(3) Alta Alta Alta Alta Mdia(3)
Canonical AF.S.
NO(1) Debian
_______________ (1) Insignea, Kurumin e Muriqui no so direcionados para servidores, e no contam com aplicativos para o gerenciamento de servidores, mas nada impede que tais aplicativos sejam instalados. (2) Ubuntu direcionado para computadores pessoais, e sua verso para servidores contm um conjunto mnimo de aplicativos, e nenhuma interface grfica. (3) Librix, Insignea e Muriqui so direcionados para empresas especficas (Librix para Itautec; Insignea para CCE, Novadata, SempToshiba, Positivo, dentre outras; Muriqui para Docttum), possuem um nvel de compatibilidade com perifricos teoricamente alto, pois so sistemas Linux e em ltimo caso a instalao de um perifrico ser trabalhosa. O Librix possui um aplicativo de Verificao de Compatibilidade que pode ser utilizado durante a instalao. 3 No So Distribuies Linux Uma considerao a ser feita, e que algumas pessoas confundem, a seguinte: alguns sistemas compatveis com o padro POSIX no so uma distribuio Linux, dentre as quais se destaca:
BSD e FreeBSD (e suas distribuies); 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 opo interessante para se considerar. 4 Ambiente De Estudo Para o estudo desta apostila, podem-se utilizar diversas estratgias: 1. Instalao completa em um computador de teste; 2. Instalao compartilhada em um computador com MS-Windows, tendo 2 sistemas operacionais; 3. Instalao em uma Mquina Virtual. Como o objetivo estudar sem medo de errar, a opo mais indicada a de nmero 3. Esta apostila foi escrita utilizando a distribuio Mandriva Linux 2010, instalada em uma mquina virtual criada no aplicativo Sun VirtualBox, que um aplicativo gratuito para criao de mquinas virtuais. Outra opo de mquina virtual o VMWare Workstation, mas este vlido por apenas 30 dias (ao terminar o perodo, faa um novo
cadastro com um endereo de correio eletrnico diferente, e continue a utilizar o VMWare por mais 30 dias).
UNIDADE 2 Instalao 01 - Incio Objetivo: Aprender os passos necessrios para instalar o Mandriva 2010 em um computador habilitado para Servidor. Instalao Do Mandriva Linux 2010 O primeiro passo para a instalao baixar a verso Mandriva 2010, gravar um DVD e coloc-lo no computador que ser utilizado. Esta a verso mais recente, e contm uma srie de pacotes prontos para ser utilizados tanto em um computador de escritrio (ou domstico) quanto em um Servidor de Rede. A primeira tela a ser exibida mostrada na figura 1:
Figura 1: Primeiras opes de instalao O que se deseja realizar a instalao do Mandriva 2010, ento deve-se escolher a opo Install Mandriva Linux 2010. No h necessidade de troca de idioma (ingls) nem da resoluo da tela (800x600), pois na prxima tela, que a tela de instalao de fato, ser feita a troca do idioma, e no final da instalao a troca da resoluo da tela. A segunda tela apresentada ir mostrar as opes de idioma do Mandriva Linux 2010, sendo ento nesta etapa que ser feita a escolha para o idioma Portugs do Brasil.
Figura 2: Escolha do idioma Ao selecionar o idioma Portugus do Brasil todas as informaes na tela passam a ser exibidas em brasileiro. Deve-se clicar no boto Prximo para continuar com a instalao. A terceira tela da instalao mostra o contrato de licena, que informa os termos de utilizao do sistema operacional e dos programas inclusos nele.
Figura 3: Contrato de Licena Existem duas opes: 1. Aceitar e continuar a instalao, e posteriormente utilizar o Mandriva Linux 2010; 2. Recusar e cancelar a instalao, e no utilizar o Linux Selecione a opo Aceitar, e clique no boto Prximo. A quarta tela de instalao referente etapa de particionamento do disco-rgido. Existem duas opes: 1. Usar o espao livre: neste caso o instalador ir particionar automaticamente o disco-rgido existente no computador. 2. Personalizar Particionamento: a escolha de como ser feito o particionamento do disco-rgido ficar a critrio do usurio.
Figura 4: Particionamento do Disco-Rgido A maioria dos usurios prefere realizar o particionamento personalizado do discorgido, e para cada situao haver uma personalizao adequada. Nesta apostila a instalao foi realizada em um computador com 10 GB de disco rgido, e o particionamento escolhido no foi automtico, sendo personalizado com as seguintes divises: 8,8 GB como ext3 e 1,1 GB como swap. Esta escolha mostrada na figura 5 a seguir.
Figura 5: Particionamento utilizado Cada caso dever ser analisado para se ter uma utilizao de disco rgido que reflita as necessidades apresentadas em cada ambiente. Pode-se tambm utilizar mais de um disco rgido, e at mesmo ter a utilizao de sistemas com RAID. A distribuio OpenSuSE Linux permite definir sistemas RAID na fase de instalao do sistema operacional. Aps a realizao do particionamento, deve-se clicar no boto Pronto para continuar a instalao. A sexta tela apresentada ir permitir que se faa a escolha de mais alguma opo de fonte de instalao, isto , de mais um local alm do DVD para se instalar o Mandriva Linux 2010 e seus pacotes. Caso seja necessrio instalar mais algum aplicativo, que no esteja includo no DVD disponibilizado pela Mandriva, deve-se escolher uma das opes apresentadas: CDROM, Rede (HTTP), Rede (FTP) ou Rede (NFS). Esta instalao foi feita apenas com o DVD Mandriva Linux 2010, sendo escolhida a opo Nenhum para indicar que nenhuma fonte adicional ser utilizada para a instalao do sistema operacional.
Figura 6: Opes de Fonte de Instalao Aps selecionar a opo Nenhum, deve-se clicar no boto Prximo para continuar a instalao. A stima tela apresentada ir direcionar a opo de instalao, onde ser escolhida uma instalao de um computador pessoal ou um servidor. Esta escolha no feita de maneira simples, pois as opes apresentadas so as seguintes: 1. KDE: instalao de um computador pessoal com interface KDE. 2. GNOME:instalao de um computador pessoal com interface Gnome. 3. Personalizar: permite fazer a escolha de quais programas e utilitrios sero instalados.
Figura 7: Escolha do tipo de instalao Se a instalao for realizada em um computador pessoal, pode-se escolher qualquer uma das opes. Se a instalao for em um Servidor, deve-se obrigatoriamente selecionar a opo Personalizar, como mostrado na figura 8:
Figura 8: Escolha da instalao personalizada Ao escolher a opo Personalizar, deve-se clicar no boto Prximo para continuar a instalao. As prximas etapas sero vistas na prxima unidade.
UNIDADE 2 Instalao 02 - Personalizando Objetivo: Aprender os passos necessrios para instalar o Mandriva 2010 em um computador habilitado para Servidor. Instalao Do Mandriva Linux 2010 Continuando a instalao do Linux, a partir da escolha de personalizao da instalao do sistema operacional, passa-se para a escolha de quais itens faro parte da instalao, como pode ser visto na figura 1:
Figura 1: Itens que sero instalados Como o objetivo da instalao ter um Computador Servidor, deve-se escolher os itens relativos ao Servidor. Nesta apostila ser adotada a instalao de todas as opes referentes ao Servidor, ento deve-se clicar em todos os itens disponveis referentes ao Servidor, como pe mostrado na figura 2:
Alm disso, deve-se escolher o item Seleo individual de pacotes, pois nem todos os programas e utilitrios de um Servidor so instalados. Quando se clica na opo Web/FTP do Servidor, apenas os programas e utilitrios bsicos sero instalados. Nestas apostila ser adotada uma instalao completa dos programas e utilitrios disponveis no Mandriva Linux 2010.
Figura 3: Escolha de selecionar individualmente os pacotes a serem instalados Aps selecionar a opo Seleo individual de pacotes deve-se clicar no boto Prximo para continuar a instalao do sistema. A nona tela apresentada permite realizar a escolha individual dos pacotes que sero instalados. Pode-se fazer a escolha dos pacotes referentes ao Servidor, Estao de Trabalho, e quais Ambientes Grficos sero disponibilizados para utilizao.
Figura 4: Primeira tela para a escolha de pacotes individuais Para instalar um Servidor com todas os pacotes disponveis no Mandriva Linux 2010, deve-se expandir o item Servidor clicando em cima da seta ao lado esquerdo do nome Servidor.
Figura 5: Opes dentro do Servidor Sero mostradas as opes para escolha dentro de Web/FTP, E-mail, Banco de Dados, Firewall/Roteador, e Servidor de Rede. Nesta apostila ser adotada uma instalao completa dos pacotes disponveis no Mandriva Linux 2010, ento todos os itens em cada uma das opes dentro do Servidor sero adotadas. Na figura 6 apresentada uma tela onde o pacote cyrus-imapd no est selecionado, mas este pacote e todos os outros dentro do Servidor sero selecionados.
Figura 6: Seleo do pacote cyrus-imapd. Eventualmente na escolha de algum pacote poder surgir uma mensagem como a apresentada na figura 7:
Figura 7: Mensagem de informao Esta mensagem informa que para a instalao do pacote selecionado, outros pacotes sero instalados tambm. Isso acontece pois alguns pacotes dependem de algumas funes disponveis em pacotes especficos, devendo-se sempre confirmar a instalao dos pacotes adicionais clicando-se no boto Ok. Deve-se prosseguir escolhando-se os demais pacotes disponveis para o Servidor at que todos sejam escolhidos.
Figura 8 O campo Tamanho total: 4379/7870 MB indica duas informaes: 1. O tamanho em megabytes que ser utilizado para a instalao dos pacotes individuais, no caso apresentado o tamanho de 4379 megabytes; 2. O tamanho em megabytes de todos os pacotes disponveis, que no caso apresentado de 7870 megabytes. Durante a escolha, algumas informaes sobre os pacotes sero exibidas no campo Informaes, mas em alguns casos a informao apresentada no est totalmente correta. Por exemplo, ao escolher o pacote pidgin, a instalao informa que este pacote precisa ter na instalao. O pidgin um programa semelhante ao MSN, e na instalao de um Servidor completamente descartvel, no precisando ter.
Figura 9: Informaes sobre os pacotes Ao concluir a escolha dos pacotes que faro parte da instalao, deve-se clicar no boto Instalar para que a instalao realmente inicie, com a transferncia dos pacotes do DVD para o disco-rgido do computador. Aps a escolha dos pacotes individuais a instalao de fato iniciar, e este processo ser demorado. O tempo total depender dos pacotes escolhidos, e da velocidade do leitor de DVD e do disco-rgido. Na maioria dos computadores atuais demora cerca de 1 hora.
UNIDADE 4
Instalao 03 - Configurao Objetivo: Aprender os passos necessrios para instalar o Mandriva 2009 em um computador habilitado para Servidor. Instalao Do Mandriva Linux 2009 Aps a concluso da fase de transferncia de arquivos, a instalao do sistema continuar, e a etapa seguinte ser a definio da senha do administrador do sistema (usurio ROOT) e de um segundo usurio, que poder ter qualquer nome.
Figura 1: definio de usurios O Mandriva Linux 2009, e a maioria das distribuies Linux, no probe a utilizao de determinadas senhas, indicando apenas se as senhas so fortes ou fracas.
Figura 2: Criao das senhas do Root e de um usurio adicional Ao preencher os campos, deve-se clicar no boto Prximo para continuar a instalao. A prxima tela ir fornecer as opes de escolha da resoluo do monitor que ser utilizada no computador. A escolha poder ser feita tanto de um fabricante especfico, ou utilizando-se a opo Genrico, que foi a escolhida para a figura 3:
Aps a escolha da resoluo, deve-se clicar no boto Prximo. A tela apresentada mostra um resumo da configurao adotada para o Servidor. Caso seja necessrio realizar alguma alterao, deve-se clicar no boto Configurar. Por exemplo, se for necessrio alterar o Fuso horrio do Servidor, deve-se clicar no boto Configurar colocado frente do item Fuso horrio Brazil/East, como mostra a figura 4:
Figura 4: Alterao do Fuso horrio A tela mostrada ir apresentar as opes de fuso horrio disponveis, devendo-se escolher a mais adequada para utilizao do Servidor, como mostra a figura 5:
Figura 5: Escolha do fuso horrio Aps a definio do fuso horrio, deve-se clicar no boto Prximo para continuar a instalao. Alm do fuso horrio, ser escolhida a hora do servidor, podendo-se escolher tambm a opo de sincronizao, que para a instalao adotada nesta apostila foi deixada desmarcada (sem sincronizao).
Figura 6: Definio do horrio e da sincronizao Aps a escolha da hora certa e da sincronizao, deve-se clicar no boto Prximo para continuar a instalao. A penltima tela da instalao apresenta uma opo de se realizar a atualizao dos pacotes, por verses mais recentes caso existam. Na instalao adotada nesta apostila, no foi feita a atualizao, sendo utilizados exatamente as verses dos pacotes disponveis na distribuio Mandriva Linux 2009 Spring.
Figura 7: Atualizao dos pacotes Aps a escolha da atualizao, deve-se clicar no boto Prximo para continuar a instalao. A ltima tela da instalao mostrar uma mensagem parabenizando pela instalao, informando que a instalao foi realizada corretamente, como pode ser visto na figura 8:
Figura 8: Mensagem parabenizando a instalao Com o trmino da instalao do Mandriva Linux 2009, deve-se clicar no boto Reiniciar para que o sistema operacional seja carregado e comece-se a sua utilizao. Aps a instalao e reinicio do computador, a primeira tela mostrada a tela de opo de instalao. Deve-se escolher a opo Iniciar Mandriva Linux 2009 Spring para se comear a utilizar o Servidor.
Figura 9: Inicializao do Servidor A opo Iniciar Mandriva Linux 2009 Spring (modo seguro) deve-se escolhida caso se queira realizar algum tipo de manuteno especfica no Servidor. Quando se inicia o Servidor pela primeira vez, uma mensagem de Boas Vindas apresentada. Basta clicar no boto Fechar para continuar a inicializao do sistema. E esta tela no ser mostrada em mais nenhuma inicializao.
Ao carregar o sistema operacional, a primeira tela mostrada pede que seja informado um usurio para utilizar o computador. Pode-se escolher tanto o usurio cadastrado na instalao (ou algum outro cadastrado posteriormente), como o usurio root, sendo que o usurio root no aparece na lista de usurios, como mostra a figura 11:
Figura 11: Tela de entrada de usurio Quando se informa o nome de usurio e a senha correta, o sistema carregar a interface grfica padro, que para esta apostila ser adotada a interface KDE, como pode ser visto na figura 12:
Figura 12: Interface KDE Nas prximas unidades sero apresentados os conceitos e programas que sero utilizados para a manuteno e administrao de um Servidor Linux.
UNIDADE 5
KDE Objetivo: Aprender sobre a interface grfica KDE, como o seu funcionamento e suas caractersticas. 1 Introduo O KDE um projeto iniciado em 1996, que tinha como propsito o desenvolvimento de um ambiente grfico para interao 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 inspirao o ambiente CDE, Common Desktop Environment, utilizado em sistemas desenvolvidos pelas empresas SUN, IBM, HP, dentre outras.
O KDE comeou a ser desenvolvido em 1996, e a primeira verso publicada para ser utilizada foi lanada em 1998. Este ambiente rapidamente obteve sucesso no sistema operacional Linux, tornando-se a interface grfica padro nas distribuies Red Hat, Conectiva, SuSE, e vrias outras disponveis no final da dcada de 1990. Atualmente, junto com a interface Gnome, disponibilizado em praticamente todas as distribuies Linux. O KDE atualmente entregue com um conjunto de aplicativos e utilitrios que permitem aos usurios terem um ambiente realmente amigvel e confortvel de ser utilizado. Uma lista parcial de aplicativos do KDE inclui: Descrio Gerenciador Multimdia Ambiente de Desenvolvimento de Programas Emulador de Terminal de modo texto Navegador para Internet Sute de Escritrio Mapas Geogrficos Aplicativo Amarok KDevelop Konsole Konqueror KOffice KGeography cone
Tabela 1: Programas e Utilitrios disponveis no KDE Algumas tecnologias no presentes nas verses anteriores foram adicionadas verso 4.0, e so: 1. Utilizao de widgets, pequenos utilitrios grficos, que podem ser instalados por qualquer usurio; 2. Biblioteca integrada para desenvolvimento de aplicaes multimdia; 3. Biblioteca integrada para acesso aos perifricos; 4. Biblioteca para processamento simtrico, que melhora o desempenho do ambiente em computadores com processadores de vrios ncleos; 2 Ambiente Grfico Neste captulo sero mostradas algumas telas da interface KDE, e algumas de suas caractersticas. A primeira tela do KDE pode ser vista na figura 1, onde esto presentes a rea de Trabalho, o Menu Inicial, alguns botes de comando, o Gerenciador de Ambiente, a Barra de Tarefas, e no canto inferior esquerdo est a rea de Avisos.
Figura 1: Tela inicial do KDE O Menu Iniciar do KDE muito parecido como o boto Iniciar do MS Windows, apresentando uma lista de itens incluindo programas, comandos e outras opes. 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 A figura 3 mostra o funcionamento do Gerenciador de Arquivos do KDE, tem um formato um pouco diferente do MS-Windows Explorer, mas algumas caractersticas so semelhantes:
Figura 3: Gerenciador de Arquivos Do lado esquerdo do Gerenciador de Arquivos so mostrados os diretrios do sistema. Os cones dos arquivos so identificados de acordo com o tipo de arquivo. E no lado direito, quando se clica em um arquivo, exibida uma breve descrio, e visualizao, do arquivo. A figura 4 mostra a utilizao de alguns widgets no KDE:
Figura 4: Widgets no KDE Os widgets disponveis abrangem uma variada gama de opes, e vrios outros podem ser procurados na internet. Em um computador servidor, a utilizao de alguns widgets pode ser interessante, pois mostraram algumas caractersticas diretamente, agilizando a deteco de anomalias. A figura 5 mostra o Centro de Controle do Mandriva Linux, atravs deste recurso podese configurar uma srie de caractersticas do sistema:
Figura 5: Centro de Controle O Centro de Controle acessado a partir da opo Configure seu Computador no menu principal, ou na barra de ferramentas:
Para conseguir executar todas as tarefas deste curso ser necessrio utilizar o usurio ROOT. Este o principal usurio no Linux, e que tem permisso para executar todos os programas. Por padro no possvel fazer Login com o usurio ROOT, mas para que isso acontea necessria apenas uma alterao no arquivo /var/lib/mandriva/kde4profiles/common/share/config/kdm/kdmrc. Este arquivo possui um campo chamado AllowRootLogin, que deve receber o valor true para permitir que o usurio ROOT faa login no KDE.
UNIDADE 6
Instalao De Programas Objetivo: Aprender sobre a instalao de aplicativos e utilitrios no Mandriva. 1 Introduo No Linux, e em diversos sistemas operacionais, tudo que se faz feito com o auxlio de programas. Os programas possuem instrues especficas para a realizao de tarefas, como o Open Office Writer que um editor de textos, ou o Dolphin, o gerenciador de arquivos do KDE. Estes dois exemplos so de programas grandes e complexos, mas existem programas mais simples, como o TAR. O TAR um programa para a compactao de arquivos. No Linux todos os utilitrios, aplicativos, comandos e servidores (daemons), so programas. Alguns programas so utilizados para iniciar outros programas, como o Bash Shell. Outros so utilizados para finalizar todos os programas, como o Shutdown. No Mandriva Linux, e em vrias outras distribuies Linux, a principal ferramenta para a instalao de programas o RPM. A sigla RPM representa RedHat Package Manager, que significa Gerenciador de Pacotes RedHat. Como o prprio nome induz, este gerenciador foi criado pela empresa RedHat para a sua distribuio, e por consequncia, pode ser utilizado em todas as distribuies derivadas da RedHat. O gerenciador de instalao denomina pacote todos os programas do Linux, ento deste ponto em diante neste mdulo, ser utilizado o termo Pacote para se referir a qualquer programa instalvel no Linux. O nome pacote surgiu do fato de que o arquivo de instalao no contm apenas uma nica informao, mas um conjunto de informaes que sero utilizadas para auxiliarem o processo de instalao do programa, que tambm est includo no pacote. O pacote pode conter: arquivos de configurao, arquivos de documentao, manuais, arquivos com cdigo fonte, programas executveis, e outras informaes. A lista de distribuies Linux que utiliza o RPM para instalar pacotes formada principalmente por:
RedHat Enterprise Fedora Mandriva Conectiva PCLinuxOS Red Flag Linux CentOS Novell SUSE Linux Enterprise
2 Funcionamento Do RPM Um pacote um arquivo binrio que contm as seguintes informaes: 1. Incio: identifica-o como sendo um pacote RPM, e possui algumas informaes de controle. 2. Assinatura: utilizada para garantir que o pacote que est sendo instalado realmente corresponde s informaes contidas no cabealho. Este campo importante, pois minimiza significativamente a instalao de pacotes errados, e principalmente, pacotes falsos. 3. Cabealho do Arquivo: inclui informaes referente ao nome do pacote, verso, arquitetura de instalao (SPARC, x86, PowerPC), arquivos que formam o pacote, dentre outras. 4. Arquivos de Instalao: este ponto em diante formado pelos arquivos que fazem parte do pacote. O arquivo do pacote de instalao possui a terminao .rpm, e um arquivo comprimido, pelo gzip ou bzip2, contendo todos os dados descritos acima. Em cada distribuio Linux que utiliza a instalao atravs de pacotes RPM existe um arquivo no diretrio /var/lib chamado rpm, que contm um banco de dados de todos os pacotes rpm instalados no computador. Este arquivo sempre verificado quando se deseja fazer uma instalao ou desinstalao de um pacote. 2.1 Formato Do Pacote Todo arquivo RPM que contm um aplicativo ou um utilitrio entregue obedecendo uma nomenclatura especfica:
Figura 1: Pacote de Instalao Exemplos: 1) abiword-2.6.4-42.46.x86_64.rpm Nome: abiword Verso: 2.6.4-42.46 Distribuio: sem especificao.
2) MySQL-server-community-5.0.83-0.rhel5.ia64.rpm Nome: MySQL Server Community Verso: 5.0.83-0 Distribuio: RedHat Enterprise Linux 5 Arquitetura: Intel Itanium
3) MySQL-server-community-5.0.83-0.sles10.i586.rpm Nome: MySQL Server Community Verso: 5.0.83-0 Distribuio: 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 Portugus Brasileiro Verso: 1.39-12362cl Distribuio: sem especificao. Arquitetura: noarch (instalvel em qualquer arquitetura)
Os arquivos RPM que contm o cdigo fonte de um aplicativo ou utilitrio possuem uma pequena alterao na parte final do arquivo:
3 Utilitrios Atualmente as principais distribuies Linux incluem um utilitrio que auxilia a instalao dos pacotes, tornando esta tarefa muito simples:
YUM: presente no Fedora, RedHat, CentOS e outros; up2date: utilizado em verses anteriores do RedHat; Synaptic: desenvolvido para o PCLinuxOS; YaST: utilizado nas distribuies SUSE e openSUSE; rpmdrake: presente no KDE distribuido com o Mandriva; SMART: includo em vrias distribuies derivadas do Fedora;
4 Bancos De Dados Sobre RPM Na Internet A Internet uma grande ferramenta de informaes, e os servios de informaes de pacotes RPM existem em vrios locais. Alguns dos principais so:
3 Rpmdrake A utilizao do RPMDrake muito simples. Basta selecion-lo a partir do Centro de Controle, escolhendo a opo Instalar e Remover Programas que o RPMDrake ser iniciado, como mostra a figura 3:
Com o RPMDrake o usurio poder ver o conjunto de programas instalados, e quais os que podem ser instalados. Para instalar um pacote, basta selecionar o pacote desejado e clicar no boto Aplicar localizado no canto inferior direito. Se necessitar instalar mais de um pacote, selecione todos os pacotes primeiro, e depois clique em Aplicar.
5 Instalao Manual Se o programa que voc quer instalar no for mostrado no RPMDrake, voc poder utilizar a instalao manual, atravs do programa RPM que pode ser utilizado pelo Terminal de Comandos. Para instalar um programa, basta digitar o seguinte: $ rpm -i <pacote>
Se desejar instalar o pacote MySQL Server Community 5.0.83, voc dever ir para o diretrio que contm o arquivo de instalao deste pacote e digitar:
$ rpm -i MySQL-server-community-5.0.83-0.sles10.i586.rpm
UNIDADE 7
Manpages = Documentao Interna Objetivo: Aprender como acessar a documentao interna do Linux e do Mandriva. 1 Introduo Uma das caractersticas mais conhecidas dos sistemas Unix e similares, incluindo o Linux, a existncia de um programa que contm uma grande documentao sobre o sistema Unix, e seus programas utilitrios. Esse programa chamado de MANPAGE, que e a juno das palavras manual e pages (pginas). Este programa um utilitrio de documentao, e organizado em pginas, e cada pgina faz uma referncia a algum dos muitos utilitrios existentes nos sistemas Unix. 2 Utilizao Para utilizar o utilitrio de documentao, digite o comando man, de manual, na linha de comando do sistema, e o programa que ser verificado: $ man unix
Figura 1: Utilitrio de Documentao O utilitrio manpage apresenta uma vasta documentao sobre vrios programas, funes, utilitrios e termos em geral. A apresentao da documentao obedece um padro, mas em alguns casos este padro no seguido. Em relao ao idioma, grande parte da documentao traduzida para os disversos idiomas existentes no mundo, mas isso no acontece em todos os casos. A maior parte da documentao no traduzida est em ingls, mas podem surgir outros idiomas, como espanhol ou francs, no Mandriva Linux 2009. 3 Formato De Apresentao A documentao apresentada em um formato prprio, dividindo o texto em alguns tpicos. Os principais tpicos so: Nome: contm o nome do programa, ou funo, ou utilitrio, ou termo, e em alguns casos, contm tambm uma lista de termos associados, seguido de uma rpida descrio de uma ou duas linhas. Sinopse: apresenta o contexto de utilizao do programa ou funo ou utilitrio. Descrio: contm uma descrio explicando o funcionamento do programa, e algumas de suas caractersticas.
Exemplos: exemplos de utilizao, com explicaes, para melhorar o entendimento da documentao. Veja tambm: mostra alguns casos extras, de termos que esto associados documentao que est sendo vista. Alguns casos podero incluir outros tpicos, diretamente relacionados ao programa que est sendo visto ou includos pelo autor do texto da documentao: Opes de Entrada, Opes de Formatao, Ambiente, Defeitos Conhecidos, Arquivos, Autor, Histrico, Registro, dentre outros. 4 Sees Do Manpages Em alguns casos existir mais de uma documentao para um determinado termo. Isto acontece porque alguns comandos so utilizados tanto na linha de comando do Unix quanto em programas de computador, como acontece com o comando printf. A documentao do manpages dividida em Sees, e cada seo ir tratar de um caso especfico de utilizao daquele comando. Existem vrias sees disponveis para o manpages, dependendo de qual sistema est em uso. A tabela 1 mostra as sees presentes nas principais distribuies Linux e em algumas verses do Unix System IV: Seo 1 2 3 4 5 6 7 8 Tipo De Contedo Comandos prprios do sistema, executados na linha de comando Chamadas para o Sistema Operacional Biblioteca de Funes da linguagem C Arquivos Especiais (exemplo: unidades de dispositivo) Formato de Arquivos Jogos e Protetores de Tela Seo Geral Administrao de Sistema e Daemons Tabela 1: Sees presentas na manpages de algumas distribuies Linux No Unix System V algumas sees so diferentes, mas este sistema pouco utilizado, ento no ser abordado. Alguns poucos sistemas, tanto Unix quanto Linux, podem possuir algumas sees extras: Seo 0 9 Tipo de Contedo Biblioteca de Cabealho da linguagem C Rotinas do Ncleo do Sistema
n x p
Comandos TCL/TK Servidor de Interface X Window Comandos POSIX Tabela 2: Sees extras do manpages
$ man fork
$ man nfs
$ man tcp
$ man ipconfig
$ man http
Para acessar a descrio desejada, basta informar o nmero desta ao executar o utilitrio manpages: $ man 3 printf
Alm disso, pode-se combinar o utilitrios manpages com outros utilitrios 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
5 Manual E Documentao Do Mandriva O Mandriva Linux tambm possui uma documentao prpria, disponvel em arquivos HTML, que so acessveis pelo Menu Iniciar do KDE, como pode ser visto na figura 3:
Figura 3: Manual e Documentao do Mandriva A diferena destes manuais que o enfoque para o Mandriva a utilizao de interfaces e utilitrios grficos para a realizao das tarefas.
UNIDADE 8
Programao Objetivo: Aprender sobre programao no Linux utilizando Bash Shell. 1 Introduo Uma das caractersticas do Linux a possibilidade de construo de pequenos programas, chamados scripts, que so utilizados para realizarem pequenas tarefas de maneira automatizada.
Estes programas so executados atravs da prpria linha de comando, pois muitas distribuies disponibilizam um utilitrio de comando compatvel com o Bash Shell, que o interpretador dos scripts. Os scripts permitem a automao do processo de criao de usurios em grandes empresas, ou a automao da instalao de alguns programas, e podem ser utilizados por todos os usurios do sistema. Nesta Unidade sero apresentados os conceitos bsicos de programao no Linux. 2 Funcionamento Dos Scripts Os scripts do Linux so criados em arquivos de texto, sendo executados diretamente, no havendo necessidade de compilao (processo de converso do cdigo fonte para cdigo executvel). A execuo direta chamada de Interpretao, e o interpretador mais utilizado no sistema Linux o Bash Shell. Para criar um script deve-se crir 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: #!/bin/bash 2: 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 criao de scripts. Para executar um script deve-se realizar os seguintes procedimentos: 1. Alterar a permisso do arquivo para executvel 2. digitar o nome do arquivo onde foi gravado o script, precedido por ./ Em relao Permisso do Arquivo, sero vistos com maiores detalhes todas as opes possveis na Unidade 13. Por enquanto o comando que ser utilizado : $ chmod 755 <arquivo>, como pode ser visto na figura 2:
3 Construo De Scripts A construo de scripts no Linux muito semelhante construo de programas tradicionais, em Linguagem C ou Pascal. Um script poder ser formado por: Variveis: armazenam informaes temporariamente; Comandos: executam rotinas pr-definidas; Funes: executam rotinas definidas pelo programador. Na figura 3 apresentado mais um exemplo de script, contendo algumas variveis:
Os comandos que esto disponveis atravs do prprio Bash Shell para a criao de scripts so: Comando echo read exit clear sleep tput stty if case Descrio Exibe uma informao na tela L informaes digitadas no teclado Termina a execuo do script Limpa a tela Paralisa temporariamente a execuo do script Altera o modo de exibio Configura a utilizao do terminal de comando Verificador condicional Verificador de expresso
for while
Tabela 1: Comandos prprios do Bash Shell Alm destes comandos, pode-se utilizar qualquer comando/programa do Linux: ls, cp, cron, adduser, dentre vrios outros. Existem algumas caractersticas que so prprias no Bash Shell para a utilizao de alguns comandos, as principais so: Tratamento de Mensagens de Texto e Comando IF 3.1 Tratamento De Mensagens De Texto A criao de uma varivel de texto, como foi demonstrado na figura 3, muito simples. Mas algumas consideraes devem ser observadas: O texto poder ser escrito de trs modos diferentes: Aspas Duplas ( ): as variveis dentro do texto sero tratadas; Aspas Simples ( ' ' ): o texto ser exibido literalmente; Crase ( ` ` ): executaro um comando dentro do texto.
3.2 Comando If O comando IF muito semelhante ao utilizado em outras linuagens, as diferenas so na terminao do comando e na maneira como as condies so escritas nos scritps.
Um comando IF deve obedecer a seguinte sintaxe: if condio then comandos executados quando a condio verdadeira else comandos executados quando a condio falsa fi Figura 5: Comando IF
Nas linguagens tradicionais, quando se deseja verificar se uma varivel maior que outra, escreve-se o seguinte comando: IF Var1 > Var2 THEN Na programao de scripts do Linux o mesmo comando deve ser escrito da seguinte maneira: IF [ Var1 -gt Var2 ] THEN As condies matemticas ( =, , >, , < e ) so escritos atravs de cdigos. A tabela 2 mostra uma lista de equivalncia entre as condies matemticas: Condio Matemtica Equivalncia no Script = > < -eq -ne -gt -ge -lt
-le
Alm das condies matemticas, existem as condies de arquivo e diretrio: Condio -s arquivo -f arquivo -d diretrio -w arquivo -r arquivo -x arquivo Descrio Verifica se o arquivo no est vazio Verifica se um arquivo Verifica se um diretrio Verifica se o arquivo pode ser escrito Verifica se o arquivo apenas de leitura Verifica se o arquivo executvel Tabela 3: Condies para verificao de arquivos
Existem tambm os operadores lgicos, utilizados quando se deseja incluir mais de uma condio em um comando IF: Condio Lgica ! -a -o Descrio Negao E (and) OU (or) Tabela 4: Operadores Lgicos
E para concluir, os comandos para verificao de textos: Verificao texto1 = texto2 texto1 != texto2 -n texto -z texto Descrio Verifica se so iguais Verifica se so diferentes Verifica se o texto no nulo Verifica se o texto nulo Tabela 5: Operadores Lgicos
A seguir, na figura 6, apresentado um script contendo alguns dos comandos vistos nesta Unidade:
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 sequncia de instrues de acordo com um valor pr-definido; Comando WHILE: utilizado para repetir uma sequncia de instrues de acordo com uma condio pr-definida; Comando CASE: utilizado para executar uma sequncia de instres de acordo com um valor informado.
UNIDADE 9
Gerenciamento De Processos Objetivo: Aprender sobre o gerenciamento e controle de programas em execuo no Linux. 1 Introduo Um processo, na maioria dos sistemas operacionais, o nome dado a um programa em execuo. No Linux, tanto os comandos, quanto utilitrios e aplicativos, so todos considerados processos. Existe uma srie de utilitrios que auxiliam o gerenciamento dos processos em execuo, permitindo que o usurio tenha o controle sobre eles. Nesta Unidade sero mostradas algumas caractersticas dos processos no Linux, e algumas ferramentas de manipulao de processos. As ferramentas mostradas aqui sero as seguintes: Nativas do Linux:
TOP, PS e KILL;
Nativas do Mandriva:
Monitor de Sistema
2 Caractersticas De Um Processo Todos os processos so programas em execuo gerenciados pelo sistema operacional. Para realizar este gerenciamento os processos so criados com caractersticas que sero utilizadas e manipuladas durante a sua execuo. Dentre as principais caractersticas esto as seguintes:
Proprietrio: usurio que iniciou a execuo do programa que originou o processo; Estado: indica o estado de execuo do processo, os mais comuns so: o D (Aguardando) processo espera a liberao de algum recurso; o R (Executando) processo realizando alguma tarefa; o S (Parado) alguma tarefa interrompeu a execuo do processo; o Z (Zumbi) o processo finalizou, mas ainda permanece carregado na memria. Prioridade: indica a prioridade de execuo do processo por um valor numrico. Quanto menor o valor, maior a prioridade de execuo; Comando: comando que originou a execuo do processo.
Alm das caractersticas citadas acima, existem vrias outras, como: tempo de execuo, consumo de processador, consumo de memria, entre outros, como pode ser visto na figura 1.
3 Comando Top O comando TOP utilizado para mostrar os processos em execuo no computador. A figura 2 mostra uma apresentao deste comando:
Atravs do comando TOP pode-se visualizar uma srie de caractersticas dos processos em execuo, e escolh-las para serem exibidas na tela. o TOP permanece em execuo continua, isto , aps a exebio dos processos em execuo, o comando continua em execuo, atualizando as informaes sobre os processos at o momento em que o usurio queira finalizar o TOP. Na figura 2 as caractersticas escolhidas foram as seguintes: Caracterstica PID UID USER PR TIME RES VIRT Flags Time+ %CPU %MEM S COMMAND Descrio Nmero de identificao para o processo. Nmero de identificao do usurio que iniciou o processo. Nome do usurio que iniciou o processo. Prioridade do Processo. Tempo de execuo. Quantidade de memria utilizada. Imagem Virtual. Flags de execuo. Tempo de execuo extendido, inclui os segundos. Percentual de utilizao do Processador. Percentual de utilizao da Memria. Estado do Processo. Comando que originou o processo. Tabela 1: Caractersticas apresentadas pelo comando TOP
Para visualizar todas as opes de caractersticas que podero ser visualizadas pelo TOP, basta pressionar a tecla f de Fields, que significa Campos.
4 Comando Ps O comando PS semelhante ao comando TOP, a diferena que enquanto o TOP permanece em execuo continua, o comando PS no . O comando PS mostra os processos executados, e suas caractersticas, 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 usurio, utilizando as opes extras do comando. Para a opo u so exibidas as colunas: USER: Nmero de identificao do usurio; PID: Nmero de identificao do processo; %CPU: Percentual de utilizao do processador; %MEM: Percentual d utilizao da memria; VSZ: Memria Virtual (Disco-Rgido); RSS: Memria Residente (RAM); TTY: Terminal ou Console de inicializao do processo; STAT: Status do processo; START: Hora de incio do processo; TIME: Tempo de execuo; COMMAND: Linha de comando do processo. As principais opes do comando PS so:
$ ps -AjF: exibe todos os processos em execuo no computador; $ ps -f u <usurio>: exibe todos os processos de <usurio>, se for deixado em branco, exibe os processos do usurio 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 execuo. Os possveis sinais so:
STOP: inativa temporariamente a execuo de um processo; CONT: reativa um processo que recebeu o sinal STOP; SEGV: informa erros de memria; TERM: ordena o trmino da execuo de um processo; ILL: informa erros de execuo de instrues; KILL: mata um processo que parou de responder.
O comando KILL geralmente utilizado para encerrar a execuo de um processo que apresentou algum erro de execuo e no poder finalizar corretamente. Mas tambm pode ser utilizado em programas que esto consumindo muito tempo, ou muitos recursos do computador. 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:
Outro caso apresentado na figura 5, onde um programa escrito em Linguagem C, PROG_MEM.C, consome 256MB de memria, correspondente 51,4% da memria RAM disponvel no computador:
Figura 5: Processo consumindo muita memria 6 Monitor De Sistema O Mandriva Linux tambm possui um gerenciador de processos grfico, chamado de Monitor do Sistema, que pode ser visto na figura 6:
Para enviar um sinal a um processo, basta clicar com o boto direito em cima do processo, como pode ser visto na figura 7:
Figura 7: Enviando um sinal E para visualizar a utilizao geral dos recursos do computador, basta clicar na aba Carga do Sistema, como pode ser visto na figura 8:
UNIDADE 10
Runlevels = Nveis De Execuo Objetivo: Aprender sobre a inicializao de processos dentro do Linux. 1 Introduo Ao iniciar, o primeiro programa do Linux a iniciar o INIT. Este programa ser utilizado para determinar a maneira como todos os processos sero criados. Para isso, o INIT l o contedo do arquivo /etc/inittab, pois neste arquivo esto descritas as configuraes de inicializao dos processos. A principal caracterstica de execuo de um processo o Nvel de Execuo (Run Level, em ingls). a definio do nvel de execuo que determinar como os processos sero executados pelo sistema operacional. Algumas distribuies Linux utilizam uma configurao de inicializao semelhante ao BSD, como acontece com o Slackware. Em outras verses a inicializao controlada por um programa chamado UPSTART, sendo este o programa adotado no Ubuntu. Como este Mdulo baseado no Mandriva Linux 2009, o programa INIT ser estudado nesta Unidade, 2 Nvel De Execuao De Um Processo O Nvel de Execuo determina como um processo ser executado, isto , quais as possibilidades de execuo de um determinado processo. Por exemplo: o comando LS s pode ser executado pelo terminal de comandos, em modo texto. No modo grfico (KDE ou Gnome) iniciado um aplicativo grfico, Konsole, que possibilita a execuo de comandos em modo texto. Atualmente existem ao todo 10 nveis de execuo nas diversas distribuies do sistema operacioal Linux e Unix: Nvel 0 1 2 3 4 5 Descrio Modo de Inicializao Modo de execuo para Usurio nico Modo de execuo para Multi-usurio, sem NFS Modo de execuo para Multi-usurio Completo Reservado Modo de execuo para Ambiente Grfico
6 7 8 9
Modo de Reinicializao Modo de Desligamento Utilizado em sistemas Unix dedicados Utilizado em sistemas Unix dedicados Tabela 1: Valores para os Nveis de Execuo
O Nvel 1 em algumas verses do Unix chamado de Nvel S (Single). Os valores dos nveis de execuo so informados no arquivo /etc/inittab, e um mesmo processo poder ter mais de um valor para o seu nvel de execuo. que ser mostrado no prximo captulo. 3 Arquivo /Etc/Inittab O arquivo /etc/inittab (Tabela de Inicializao) armazena a configurao de inicializaao que ser realizada pelo programa INIT. O arquivo /etc/inittab do Mandriva Linux mostrado parcialmente na figura 1: # Default runlevel. id:5:initdefault:
# 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 : Nvel de Execuo : Ao : Processo O campo Identificador armazena um valor referente entrada na tabela de inicializao. O campo Nvel de Execuo armazena o nvel de execuo do processo associado. O campo Ao armazena um das possveis aes a ser tomada em relao ao processo associado:
respawn: o processo ser reinicializado, mesmo que termine sua execuo normalmente. wait: o processo iniciar quando seu nve de execuo for iniciado, e o programa INIT aguardar o trmino do processo. once: o processo iniciar apenas quando o seu nvel de execuo for iniciado. boot: o processo iniciar durante a inicializao do sistema. bootwait: o processo iniciado durante a inicializao do sistema, que ser interrompida, e retomada apenas com o trmino da execuo do processo. off: no executa o processo. ondemand: o processo iniciar quando o nvel de execuo for iniciado. initdefault: especifica qual nvel de execuo ser iniciado ao terminar a inicializao do sistema. sysinit: o processo iniciar durante a inicializao 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.
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 Nvel de Execuo: 5 o Ao: initdefault (Faz o Nvel 5 ser o nvel de execuo ao terminar a inicializao do sistema) o Processo: <vazio>
si::sysinit:/etc/rc.d/rc.sysinit o Identificador: si o Nvel de Execuo: <vazio> o Ao: sysinit (o processo iniciar na inicializao do sistema) o Processo: /etc/rc.d/rc.sysinit
11, 12,...
o
Nvel de Execuo: 0,
1, 2,...
o o o o
Ao: wait (o processo iniciar quando iniciar o nvel de execuo) Processo: /etc/rc.d/rc 0, /etc/rc.d/rc 1, /etc/rc.d/rc 2, ...
ca::ctrlaltdel:/sbin/shutdown -t3 -r now o Identificador: Ca o Nvel de Execuo: <vazio> o Ao: ctrlaltdel (o processo iniciar quando for pressionado CTRL+ALT+DEL) o Processo: /sbin/shutdown -t3 -r now
~~:S:wait:/bin/sh o Identificador: ~~ o Nvel de Execuo: S (poderia ser 1) o Ao: wait o Processo: /bin/sh
UNIDADE 11
Arquivos De Log Objetivo: Aprender sobre o registro de atividades realizadas pelo sistema, e deteco de ocorrncia de falhas em processos. 1 Introduo Quando um processo executa uma tarefa de maneira errada, por erro no cdigo ou por falha em algum equipamento, desejvel que alguma informao referente a esse erro seja passada ao usurio do sistema, para que o mesmo possa corrigir o erro (quando for no cdigo) ou evit-lo (quando for em um equipamento). Os arquivos de Log so utilizados para auxiliar o usurio nesta tarefa de deteco de erros na execuo dos processos. Quando um processo no consegue completar uma tarefa com sucesso, ou seja, h uma falha na execuo da tarefa, algumas informaes so gravadas para que o usurio possa avaliar o que aconteceu durante a execuo daquela tarefa. A principal ferramenta no Linux para a gravao dos arquivos de Log o utilitrio SYSLOG. 2 Syslog O SYSLOG realiza a tarefa de gravar mensagens referentes a:
syslogd: daemon responsvel pelo Log dos processos; OpenLog: conjunto de funes para serem utilizadas em programas que sero gerenciados pelo SYSLog; Logger: utilitrio de linha de comando, que permite interagir com o SYSLog modificando algumas caractersticas da gravao dos Log's.
O mais importante dos 3 mdulos o syslogd que far o controle e gravao dos Log's dos processos. 3 Daemon Syslogd O syslogd o daemon, utilitrio inicializado como servio do sistema, responsvel pela gravao dos Log's dos processos, e dividido em 2 partes: klogd e syslogd. 3.1 Klogd O klogd o daemon responsvel em gravar os Log's gerados pelo kernel do sistema. O arquivo de Log gravado no diretrio /proc. 3.2 Syslogd O syslogd o daemon responsvel por capturar os Log's de todos os processos, inclusive do kernel, que so enviados para o klogd. Geralmente os arquivos de Log so gravados no diretrio /var/log, mas esse local pode variar de uma distribuio para outra. Os arquivos de Log so gravados geralmente com o nome do processo que gerou o Log seguido da extenso .log: Arquivo boot.log cron cups mysql.log auth.log yum.log Xorg.0.log message Descrio Informaes sobre a inicializao do sistema. Diretrio para gravar os Log's gerados pelo CRON. Diretrio para gravar os Log's das impressoras. Log's gerados pelo MySQL. Informaes sobre autenticao. Log's gerados pelo Yum. Log's gerados pelo Servidor X. Diretrio de mensagens gerais. Tabela 1: Arquivos de Log.
4 Visualizando O Log Uma das maneiras mais utilizadas para visualizar um arquivo de Log atravs do comando TAIL, como pode ser visto na figura 1:
Figura 1: Utilizao do comando TAIL Como pode ser visto na figura 1, o arquivo auth.log possui 18236 bytes, e seria invivel a sua leitura completa. Para agilizar essa tarefa utiliza-se o comando TAIL, que exibe apenas as ltimas linhas. Uma das informaes vistas na figura 1 a seguinte: o usurio RICARDOMS acessou a conta do usurio ROOT. Se esse procedimento for autorizado, ento no 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 no foi autorizado, ocorreu um gravssimo erro de segurana. Uma boa ttica para a monitorao da segurana o comando: $ tail -f /var/log/secure Este comando exibir constantemente as ltimas linhas do arquivo de Log de segurana, possibilitando um acompanhamento contnuo da situao do servidor. 5 Configurao Do SYSLOG A configurao do SYSLOG realizada utilizando-se o arquivo /etc/syslog.conf. A sintaxe bsica deste arquivo a seguinte: recurso.ao arquivo
Os recursos so identificados para a gravao das mensagens. Os programas utilizados no sistema utilizaro alguns destes recursos, e quando for um recurso que est em monitorao, um Log ser gravado no arquivo especificado. No SYSLOG existem 21 recursos, os mais utilizados so:
Recurso kern user mail daemon auth cron syslog * Kernel do Linux
Programas que utilizam Programas do usurio Servidor de Correio Daemon's inicializados Programas de Autenticao e Segurana CRON O prprio SYSLOG Todos os programas sero monitorados. Tabela 2: Recursos disponveis no SYSLOG.
As aes especificam o momento em que o Log ser gravado: Recurso emerg alert crit err warn notice info debug * Emergncia crtica Situao de emergncia momentnea Condies crticas Erro de execuo Situao de advertncia Situao para investigao Informao Depurao de programas Qualquer situao Tabela 3: Aes que resultam em Log. Por exemplo:
Descrio
user.* /var/log/user.log: gravar todas as mensagens de um usurio no arquivo /var/log/user.log. Ex: login do usurio, inicializao de aplicativos, erros, etc. kern.warn /var/log/kernel/warnnings.log: gravar todas as mensagens de advertncia originadas pelo kernel no arquivo /var/log/kernel/warnnings.log. Ex: falha ao iniciar processo.
Para no acumular excesso de informao de Log, o Linux realiza a substituio dos Log's antigos, utilizando o programa LOGROTATE. O arquivo de configurao o /etc/logrotate.conf. Virios programas auxiliares para o monitoramento de Log's foram desenvolvidos, sendo os principais:
UNIDADE 12
Administrao De Usurios Objetivo: Aprender sobre a administrao de contas de usurios no Linux. Como criar e gerenciar usurios do servidor. 1 Introduo A principal tarefa de um administrador de um servidor o Gerenciamento de Usurios. Os usurios sero cadastrados para terem acessarem ao Servidor de acordo com regras estabelecidas. Estas regras definiro, por exemplo, quais arquivos sero acessveis por um determinado usurio, quais equipamentos sero utilizados, quais os horrios que o usurio poder se conectar ao Servidor, dentre outras. Nesta Unidade sero vistos alguns comandos e utilirrios que permitiro ao administrador gerenciar os usurios. Utilitrios disponveis no Mandriva Linux:
Atravs do Terminal de Comandos: o Gerenciamento de Usurios: useradd, userdel, usermod, passwd; o Gerenciamento de Grupos: groupadd, groupdel, groupmod; Atravs do Centro de Controle: o Userdrake: Gerenciador de Usurios do Sistema (tambm pode ser iniciado pelo terminal de comandos: userdrake). O Userdrake acessvel apenas pelo ROOT, no sendo possvel a um usurio comum utiliz-lo.
As informaes dos usurios so armazenadas nos seguintes arquivos: /etc/shadow e /etc/passwd. As informaes referentes aos grupos so armazenadas no arquivo: /etc/group. Estes arquivos so visados por intrusos, os chamados hackers, que buscam informaes e senhas de usurios, para terem acesso todos os dados armazenados nos servidores de uma empresa. Na Seo seguinte sero mostradas as maneiras de se administrar Usurios e Grupos no Mandriva Linux, tanto pelo Terminal de Comandos, quanto pelo Centro de Controle.
2 Gerenciando Usurios Atravs do Terminal de Comandos, pode-se utilizar vrios comandos de administrao dos usurios. Estes comandos permitem criar, apagar e modificar as informaes referentes a usurios e grupos. 2.1 Adicionando Um Usurio Para adicionar usurios atravs 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 As principais opes do comando useradd so descritas na Tabela 1: Opo -c -d -g login Descrio Comentrio, geralmente associado ao nome completo do usurio. Diretrio de utilizao do usurio. O padro o /home, mas pode ser qualquer outro. Grupo associado ao usurio. O grupo deve ser criado antes do usurio. Nome utilizado para o login do usurio. Tabela 1: Principais opes do comando useradd.
Se o grupo no for informado, ento ser criado um grupo com o mesmo nome do usurio, e o usurio ser associado a ele. Para adicionar o usurio ricardo, pertencente ao grupo administradores, digita-se o comando mostrado na figura 2: $ useradd -c Ricardo M. S. ricardoms Figura 2: Comando useradd para adicionar o usurio ricardo Um detalhe no comando useradd, que atrapalha seu uso inicialmente, o tratamento da senha do usurio. A senha passada no comando useradd deve estar criptografada, sendo quase invivel inform-la neste comando. Se a senha no for informada, a conta do usurio recm-criada ficar bloqueada, at que se defina uma senha para o mesmo.
Aps a utilizao do comando useradd, deve-se utilizar o comando passwd, para se criar uma senha para o usurio, 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: Criao de usurio e definio da senha Se j tiver digitado o comando da figura 2, utilize um outro nome de usurio para o comando da figura 3. Para adicionar um usurio no Userdrake, basta acess-lo no Centro de Controle, e clicar no boto Adicionar Usurio, e preencher os campos solicitados, como pode ser visto na figura 4:
Figura 4: Adicioando usurio pelo Userdrake Quando se cria uma pequena quantidade de usurios pode-se utilizar tanto a comando useradd quanto o Userdrake. Mas quando deseja-se criar uma quantidade grande de usurios estas ferramentas no so adequadas, pois demoraria-se muito tempo com elas. A melhor estratgia a criao de um script. Crie a seguinte lista de usurios 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:
2.2 Removendo Um Usurio Para remover um usurio pelo Terminal de Comandos, basta digitar o comando userdel -r <usuario>, como mostrado na figura 6: $ userdel -r pele Figura 6: Remoo de usurio O comando userdel remove o usurio, e a opo -r remover o diretrio do usurio. Se ela no for passada, o diretrio do usurio dever ser removido manualmente. Para apagar um usurio pelo Userdrake, basta selecionar o usurio a ser removido, e clicar no boto Apagar.
2.3 Modificando Um Usurio A modificao dos dados de um usurio 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 opes so as mesmas do comando useradd, e a alterao ser imediata. Para alterar os dados de um usurio pelo Userdrake, basta selecion-lo e clicar no boto Editar, como pode ser visto na figura 8:
2.4 Alterando A Senha De Um Usurio A alterao da senha poder ser feita pelo comando passwd, ou pelo Userdrake. Se a alterao da senha for feita pelo prprio usurio, e o mesmo utilizar o comando passwd, sero necessrios 3 passos: 1. Informar a senha atual; 2. Informar a nova senha; 3. Repetir a nova senha. Se a alterao da senha for feita pelo ROOT, tanto com o comando passwd quanto pelo Userdrake, sero necessrios 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: Adio de um novo grupo Opcionalmente pode-se informar o nmero de identificao do grupo, com a opo -g NUM, da seguinte maneira: $ groupadd -g 2009 fiscal. Para adicionar um grupo pelo Userdrake, basta clicar no boto Adicionar Grupo e prencher as informaes necessrias, como mostra a figura 10:
2.6 Removendo Um Grupo Para remover um grupo, deve-se verificar se o mesmo no possui nenhum usurio associado a ele. Para isso, utiliza-se o Userdrake, e verificar a aba Grupos, ou ento verifica-se os usurios criados no diretrio /home, aplicando para cada um o comando groups <usuario>, e assim v-se os grupos associados a cada usurio. Se um grupo no contiver nenhum usurio, ento 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 boto Excluir. 2.7 Modificando Um Grupo Para modificar um grupo pelo terminal de comandos utiliza-se o comando groupmod. possvel modificar-se o Nmero de Identificao do grupo, com a opo -g, ou o Nome do grupo, com a opo -n, como pode ser visto na figura 11: $ groupmod -g 2010 -n Fiscal2010 fiscal Figura 11: Modificao do grupo fiscal O comando da figura 12 modificar o grupo fiscal, renomeando-o para Fiscal2010, e tambm modificar o seu nmero de identificao, para 2010. Para modificar um grupo pelo Userdrake, basta selecionar o grupo e clicar no boto Editar, e alterar as informaes desejadas. 2.8 Criao Automatizada De Usurios Com um script, pode-se criar uma quantidade de usurios do tamanho que se queira, e todo o processo de configurao da conta dos usurios estar automatizado no script, como pode ser visto na figura 12:
No script simplificado mostrado na figura 12 so criados alguns usurios para o grupo fiscal. Os nomes dos usurios esto armazenados no arquivo fiscais.txt, e o script gravado no arquivo cadastro.scr. No arquivo cadastro.scr as principais linhas so:
useradd -g fiscal -d /home/$usuario -m $usuario: criao do usurio; echo $usuario123 | passwd stdin $usuario: criao da senha.
A senha dos usurios definida da seguinte maneira: para o usurio burti a senha burti123, para o usurio fitipaldi a senha fitipaldi123, e assim por diante. Para a criao de senhas mais complexas, um script mais complexo ser necessrio. Ao final destas etapas, considerando a existncia do grupo fiscal e do usurio pele, altere os usurios para que a tela final do Userdrake seja semelhante a tela apresentada na figura 13:
UNIDADE 13
Permisses De Acesso Objetivo: Aprender sobre o acesso arquivos e diretrios em ambiente com vrios usurios. 1 Introduo Uma das caractersticas dos sistemas Unix, portanto tambm presente no Linux, a capacidade de gerenciamento de mltiplos usurios no sistema. Esta caracterstica define um sistema como sendo Multi-usurio. Em sistemas multi-usurio, os arquivos e diretrios passam a pertencer a usurios especficos, ou a grupos de usurios. O Linux possui a capacidade de classificar a maneira como um arquivo ou diretrio ser acessado pelos usurios do sistema. Esta classificao dividida em 3 partes:
Proprietrio do arquivo: classificao para o usurio que possui controle total sobre o arquivo, sendo geralmente o criador do arquivo; Grupo de usurios: classificao para os usurios que compartilham o mesmo grupo do proprietrio do arquivo; Todos os usurios: classificao feita a todos os usurios do sistema.
2 Organizao Do Acesso Quando um usurio criado no Linux, um grupo dever ser definido para este usurio. Se o grupo no for definido, ento um grupo com o mesmo nome do usurio ser criado e associado ao usurio. Se no houver necessidade de integrao entre os usurios, ento no existe problema em ter um grupo para cada usurio, mas se a inteno integrar as atividades e tarefas dos usurios, ser mais vantajoso criar grupos de usurios, que compartilharo alguns recursos do sistema. Uma estratgia simples e eficiente para a definio dos grupos de usurios a separao por atividades, por exemplo, usurios que trabalham em um determinado setor so cadastrados em um mesmo grupo. Alm de definir um grupo principal, podem-se definir grupos secundrios, que permitiro maior compartilhamento de recursos no sistema. Para associar um usurio a um grupo, pode-se fazer isso na criao do usurio ou atravs do comando usermod. Por exemplo, se o usurio 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: Definio do grupo fiscal para o usurio joao.
Nos dois casos apresentados na figura 1 o grupo fiscal dever existir antes de se aplicar o comando ao usurio. Para se associar mais de um grupo a um usurio, por exemplo, os grupos contabilidade e administrador, deve-se criar os grupos, e aplicar, por exemplo, o comando apresentado na figura 2: $ usermod -G contabilidade,administrador joao Figura 2: Definio de novos grupos para o usurio joao. No exemplo mostrado na figura 2, os grupos contabilidade e administrador devero existir antes da aplicao do comando. Com os comandos das figuras 1 e 2 executados, tem-se que o usurio joao poder acessar os arquivos disponibilizados para os grupos fiscal, contabilidade e administrador. Para incluir ou excluir grupos para um usurio pelo Userdrake, basta selecionar o usurio, clicar em Editar, e depois clicar na aba Grupos, e marcar os grupos que se deseja associar quele usurio:
Figura 3: Usurio ricardoms est associado apenas aos grupos administrador, contabilidade e fiscal.
Todo usurio tem um grupo principal, que fica visivelmente associado ao usurio. Este grupo chamado de Grupo Primrio. Na figura 3 v-se que o grupo primrio do usurio ricardoms o grupo administrador. Todo arquivo que for criado pelo usurio ricardoms estar associado ao grupo administrador, enquanto este grupo for o Grupo Primrio. Se o grupo primrio for alterado, os novos arquivos sero associados ao novo grupo primrio, mas os antigos permanecero com o grupo antigo.
UNIDADE 14
Permisses De Acesso Objetivo: Aprender sobre o acesso arquivos e diretrios em ambiente com vrios usurios. 1 Introduo Os sistemas Linux possuem a caracterstica de permitirem a criao de vrios usurios e grupos, e o gerenciamento dos arquivos e diretrios ser feito de acordo com estes usurios e grupos. Nesta unidade sero vistos alguns comandos utilizados para se modificar o acesso aos arquivos e diretrios. 2 Modificao Do Acesso Os arquivos e diretrios no Unix so organizados de maneira que o acesso aos mesmos sejam definidos em 3 nveis: 1. Proprietrio do arquivo; 2. Usurios do mesmo grupo associado ao arquivo; 3. Todos os usurios do sistema. Quando um arquivo ou diretrio criado, ele associado a um usurio e a um grupo. Alm disso, sero definidas as restries ou permisses de acesso que os outros usurios tero, como pode ser visto na figura 1:
Leitura: permite visualizar o contedo, representado pela letra r; Escrita: permite alterar o contedo, representado pela letra w; Execuo: permisso de execuo, representado pela letra x.
Por exemplo, o arquivo Relatrio.odt apresentado na figura 2 possui as seguintes caractersticas: -rw-r----- joao fiscal Relatrio.odt Figura 2: Nveis de acesso para o arquivo Relatrio.odt
O proprietrio pode: Escrever e Ler; os usurios do grupo podem Ler, e os demais usurios no possuem acesso ao arquivo. Os diretrios so representados com a letra d no incio das permisses: drwxr-x--- joao fiscal Documentos Figura 3: Nveis de acesso para o diretrio Documentos
No exemplo mostrado na figura 3, o diretrio Documentos pode ser Lido, Escrito e Executado pelo seu proprietrio, e apenas Lido e Executado pelos usurios do grupo fiscal.
Pra definir restries ou permisses de acesso utilizado o comando chmod. As restries e permisses so definidas nos campos rwx a partir de nmeros decimais. Os nmeros decimais representam nmeros binrios, ento se a inteno alterar o arquivo Relatrio.odt para permitir que os usurios do grupo do arquivo possam editar este arquivo deve-se digitar o comando apresentado na figura 4: $ chmod 760 Relatrio.odt Figura 4: Utilizao do comando chmod para modificar o acesso Relatrio.odt
So utilizados sempre 3 nmeros no comando chmod. O primeiro ir alterar o acesso do proprietrio, o segundo do grupo e o terceiro para todos os usurios. Cada um dos nmeros varia de 0 7, representando as seguintes operaes: Nmero 0 1 2 3 4 5 6 7 Bits 000 001 010 011 100 101 110 111 Acesso ----X -W- WX R-R-X RW RWX
Os nmeros 0, 1, 2, e 3 raramente so utilizados, pois no permitem a manipulao completa dos arquivos e diretrios. Por exemplo, um diretrio que esteja com o seguinte nvel de acesso: d--x--x--x documentos poder ser acessado, mas seus arquivos no podero ser listados. Este tipo de permisso s faz sentido quando se sabe exatamente qual arquivo ser acessado em um diretrio. Pois se pode informar o caminho completo do arquivo e acess-lo, sem interferir nos demais arquivos do diretrio. Por exemplo, assumindo que o usurio atual seja joao e que o mesmo queira acessar o arquivo Relatrio.odt criado pelo usurio senna:, e que o mesmo encontra-se no diretrio d--x--x--x documentos com permisso total de acesso para os usurios do grupo fiscal, pode-se realizar o comando apresentado na figura 5: $ oowriter /home/senna/documentos/Relatrio.odt Figura 5: Acesso ao arquivo Relatrio.odt pelo usurio joao
Os scripts necessitam de um acesso que permita a execuo destes arquivos, ento sero utilizados os nmeros 5 ou 7, pois o contedo do arquivo dever ser lido para que os comandos sejam executados.
3 Modificao De Grupo E Proprietrio Para modificar o grupo de um arquivo (ou diretrio) utiliza-se o comando chgrp, da seguinte maneira: chgrp <grupo> <arquivo>, como pode ser visto na figura 6:
Para modificar o proprietrio de um arquivo (ou diretrio) utiliza-se o comando chown, da seguinte maneira: chown <usurio> <arquivo>, como pode ser visto na figura 7: $ chown joao Relatrio.odt Figura 7: Alterao do proprietrio do arquivo Relatrio.odt
Deve-se tomar cuidado com estes dois comandos, pois o ideal que os arquivos de um usurio estejam localizados em seus diretrios.
4 Modificaes Feitas No KDE Para realizar estas alteraes no KDE, de permisso de acesso e modificar o grupo ou proprietrio de um arquivo, basta selecionar o arquivo, clicar com o boto direito em cima do nome do arquivo, e ir na aba Permisses, como mostra a figura 8:
UNIDADE 15
Agendamento De Tarefas Objetivo: Aprender sobre o agendamento da execuo de programas no Linux
1 Introduo Algumas tarefas no Linux so executadas quando surge a necessidade, por exemplo, a criao de contas de usurio. Mas algumas tarefas so executadas em tempos determinados, como a cpia de arquivos ou o envio de informaes. Para realizar estas tarefas que precisam ser executadas em um instante especfico, podese utilizar os programas cron e at, que foram criados com o propsito de gerenciar o Agendamento de Tarefas. O programa cron utilizado para agendar a execuo de um programa em um detemrinado horrio, e se for necessrio, repetir a execuo em intervalos de tempo escolhidos pelo usurio. O programa at realiza a execuo de um arquivo de script apenas uma vez, em um momento definido pelo usurio. 2 Programa Cron O comando cron utilizado principalmente para gerenciar a execuo de programas que sero iniciados repetidas vezes, como por exemplo, a realizao da cpia dos arquivos dos usurios. A execuo do cron automtica, e ao ser iniciado, o programa faz a leitura da Tabela de Agendamento, localizada no arquivo /etc/crontab. Esta tabela define a periodicidade de execuo dos programas e o caminho onde est localizado o programa. Um exemplo deste 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 beti@loja.com.br
15 0-23/2 * * * $HOME/bin/aviso.sc 0 16 * * sun echo 16h de domingo! Figura 1: Contedo do arquivo /etc/crontab
A definio dos campos no arquivo a seguinte: 1. 2. 3. 4. 5. 6. Minuto: 0 59; Hora: 0 23; Dia do ms: 1 31; Ms do ano: 1 12; Dia da Semana: 0 6, ou sun, mon, tue...; Comando a ser executado.
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 o Executa o script processamento.sc s 14:15 no primeiro dia de cada ms o 14:15h no 1 dia do ms $HOME/bin/processamento.sc 0 22 * * 1-5 mail -s Feche o caixa beti@loja.com.br o Envia uma mensagem para beti@loja.com.br 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 frequncia. 0 16 * * sun echo 16h de domingo! o Exibe uma mensagem todo domingo s 16 horas. o Domingo 16:00h echo 16h de domingo!
Estas configuraes podem ser feitas tanto em um editor de texto, escrevendo diretamente o arquivo /etc/crontab, ou utilizando a interface grfica, atravs do Agendador de Tarefas. Para acessar o Agendador de Tarefas no KDE, realize os seguintes passos: 1. Clique no Menu principal
2. 3. 4. 5. 6.
Clique em Ferramentas Clique em Ferramentas do Sistema Clique em Configurar sua sesso Clique na aba Avanados Clique no cone Agendador de Tarefas
3 Programa At Como foi visto o cron executa programas periodicamente. Em algumas situaes um determinado programa dever ser executado apenas 1 vez. Por exemplo: Emitir um aviso para todos os usurios do servidor, informando que o computador ser desligado para manuteno em um determinado dia e horrio. Para executar programas com agendamento sem repetio utiilza-se o at. Este programa utilizado em conjunto com outros 2: atq e atrm.
O programa at realiza o agendamento dos programas para execuo, 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 so utilizados para informarem quais so os usurios que podem ou no executar o programa at. Estes arquivos so:
/etc/at.allow: contm a lista dos usurios que podem executar o programa at; /etc/at.deny: contm a lista dos usurios que no podem executar o programa at.
Se o arquivo /etc/at.allow esteja vazio, ento os usurios que no estiverem no arquivo /etc/at.deny podero utilizar o programa at. Caso o arquivo /etc/at.deny esteja vazio, ento todos os usurios podero utilizar o programa at. O programa at utilizado para agendar a execuo de scripts em arquivos, ou opcionalmente pode-se informar diretamente qual a sequncia de comandos que dever ser executada. A sintaxe bsica apresentada na figura 3: $ at -f <script> <horrio> Figura 3: Sintaxe do programa at
A incluso do horrio de funcionamento obrigatria, e pode ser feita nos seguintes formatos:
HH-MM: hora (00 23) e minutos (00 59); MM/DD/AA: ms, dia e ano.
Mas existem diversas opes para incluso de um horrio de execuo: $ at -f copia_tudo.sc 4pm tomorrow Figura 4: Agendamento em formato diferenciado
Se o nome de um arquivo no for informado, deve-se digitar a sequncia 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: Incluso 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 organizao da lista mostrada pelo atq a seguinte: 1 Coluna: Nmero de Identificao do agendamento; 2 Coluna: Data do agendamento; 3 Coluna: Horrio de execuo; 4 Coluna: usurio que realizou o agendamento.
Um problema no atq o fato de no se saber quais programas esto agendados, pois ele mostra apenas os horrios de execuo e o usurio que agendou um programa. Para remover um programa do agendamento, utiliza-se o atrm, que deve receber o numero de identificao do agendamento a ser cancelado: $ atrm 2 Figura 7: Agendamento em formato diferenciado
A grande dvida saber se o agendamento removido realmente era o desejado. Para saber quais so os programas agendados, deve-se verificar o diretrio /var/spool/at. Este diretorio contm scripts que armazenam o contedo do agendamento. A tarefa aqui ser verificar cada arquivo neste diretrio atravs do programa cat e olhar as ltimas linhas e tentar reconhecer o script. ( o programa tail no recomendado, pois mostra apenas as ltimas 10 linhas do arquivo ) A melhor estratgia para utilizao do programa at a seguinte: 1. 2. 3. 4. 5. Verifique o diretrio /var/spool/at e veja quais so os arquivos presenes ali; Execute o programa atq e veja os identificadores em uso nos agendamentos; Execute o programa at; Verifique novamente o diretrio e veja qual o arquivo adicionado; Execute o programa atq e veja o novo nmero, que representa o ltimo agendamento realizado.
UNIDADE 16
Cpia De Segurana De Arquivos Objetivo: Aprender sobre a manuteno de cpias de arquivos 1 Introduo Um dos trabalhos mais importantes na manuteno de um servidor a cpia regular dos arquivos. Esta tarefa recebe vrios nomes, os mais comuns so Cpia de Segurana e Backup, e consiste em realizar uma cpia dos arquivos mais importantes localizados no servidor. Estes arquivos podem ser: arquivos de configurao, documentos dos usurios, programas, bancos de dados, e vrios outros. Para realizar a cpia existem vrias ferramentas. Pode-se utilizar o programa cp ou um programa especfico, como o Drakbackup ou Bacula.
Figura 1: Interface do Bacula O mais importante no a ferramenta a ser utilizada, definir quais sero os arquivos e qual ser a frequncia de realizao das cpias.
2 Definio Dos Arquivos E Frequncia Da Cpia O principal motivo de se realizar uma Cpia de Segurana, garantir a usabilidade dos arquivos que esto no servidor, pois mesmo que haja algum defeito, os arquivos estaro seguros em uma outra localizao. A regra bsica para manter a segurana dos arquivos, independente da situao dos computadores, fazer a cpia em uma mdia, e manter esta mdia em uma localizao distante dos computadores. Pois mesmo que haja um incndio, ou outro dano fsico, em toda a organizao, os arquivos estaro seguros. A definio de quais arquivos sero copiados depender de vrios fatores, mas o critrio de escolha basicamente o mesmo: se o arquivo original for perdido, qual ser o impacto causado ?. A esta pergunta existem vrias respostas:
Nenhum: ento no precisa ser copiado; Baixo: talvez precise ser copiado; Mdio: ento melhor copia-lo, pelo menos com certa frequncia; Alto: com certeza deve ser copiado, preferencialmente todo dia.
Existem vrios tipos de arquivos, divididos em 4 categorias bsicas: arquivos dos usurios, arquivos da empresa, arquivos de configurao e arquivos de programas. Para facilitar a realizao das cpias de segurana, a estrutura de diretrios deve ser planejada de forma que facilite esta tarefa. Uma boa estratgia e a organizao dos diretrios no servidor em locais que j indiquem a separao dos arquivos por critrio, por exemplo: um diretrio exclusivo para os arquivos da empresa, pois estes so os mais importantes.
3 Realizando A Cpia Utilizando O Terminal De Comandos A cpia dos arquivos pelo Terminal de Comandos geralmente realizadas atravs de um script agendado no cron. Pois seria muito trabalhoso ter que escrever os comandos sempre que uma cpia fosse realizada. Pode-se fazer mais de um script de cpia, de acordo com as prioridades de segurana dos arquivos. A figura 2 mostra o script Copiador_home.sc, que realiza a cpia de segurana do diretrio /home e move-o para um disco de DVD:
O formato final do script para fazer as cpias depender das prioridades especficas 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: Incluso da cpia de segurana no crontab
No exemplo mostrado na figura 3 a cpia dos arquivos dentro do diretrio /home ser realizada todos os sbados, s 8:00h da manh.
4 Realizando A Cpia Utilizando O Drakbackup As cpias de segurana tambm podem ser feitas utilizando-se o programa Drakbackup. Este 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 Vrias opes esto disponves, e a partir da primeira tela existem opes que sero utilizadas por usurios iniciantes ou avanados:
Figura 5: Opes de utilizao do Drakbackup Ao clicar no item Assistente de Configurao, o drakbackup assumir as configuraes padronizadas para realizar a cpia dos arquivos, mas permite que o usurio realize algumas alteraes:
Figura 6: Opes de utilizao do Drakbackup Uma das escolhas poder ser a de realizar a cpia apenas para alguns usurios:
Figura 7: Opes de utilizao do Drakbackup Usurios que precisem de configuraes mais avanadas tambm podero utilizar o Drakbackup. Na tela apresentada na figura 5, basta clicar no item Configurao Avanada para o Drakbackup exibir novas opes para a realizao das cpias:
Clicando-se no item O qu na tela da figura 8, pode-se escolher quais os recursos sero copiados:
Figura 9: Opes de utilizao do Drakbackup O item Onde apresentado na figura 8 permite a escolha do local onde ser guardado a cpia:
E o item Quando apresentado nas Configuraes Avanadas permite a escolha do momento de execuo das cpias, permitindo inclusive o cadastramento de cpias agendadas:
UNIDADE 17
Protocolo TCP/IP Objetivo: Aprender as caractersticas bsicas das redes TCP/IP verso 4 e 6.
1 Introduo No mundo de hoje, no se pode falar de redes sem falar do TCP/IP. O conjunto de protocolos originalmente desenvolvido pela Universidade da Califrnia em Berkeley, sob contrato para o Departamento de Defesa dos EUA, se tornou o conjunto de protocolos padro das redes locais e remotas, suplantando conjuntos de protocolos bancados por pesos pesados da indstria, como a IBM (SNA), Microsoft (NetBIOS/NetBEUI) e Novell (IPX/SPX).
O grande motivo de todo este sucesso foi justamente o fato do TCP/IP no ter nenhuma grande empresa associada ao seu desenvolvimento. Isto possibilitou a sua implementao e utilizao por diversas aplicaes em praticamente todos os tipos de equipamentos e sistemas operacionais existentes. Mesmo antes do boom da Internet o TCP/IP j era o protocolo obrigatrio 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 limitaes tcnicas do seu prprio conjunto de protocolos, o NetBEUI.
2 As Pilhas De Protocolos Todos os softwares de redes so baseados em alguma arquitetura de camadas e normalmente nos referimos a um grupo de protocolos criado para funcionar em conjunto como uma pilha de protocolos (em ingls, protocol stack, por exemplo the TCP/IP stack). 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 expanso com novos recursos, novas tecnologias ou aperfeioamentos 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, vrios deles necessrios para que o TCP e o IP desempenhem corretamente as suas funes. Visto superficialmente, o TCP/IP possui 4 camadas, desde as aplicaes de rede at o meio fsico que carrega os sinais eltricos at o seu destino:
1. Interface: tem a funo de permitir o uso de um meio fsico que conecta os computadores na rede e fazer com que as informaes enviadas por um computador cheguem a um outro computador diretamente desde que haja uma conexo direta entre eles. 2. Identificao: responsvel pela identificao dos computadores na rede. nesta camada que se define o nmero IP de cada mquina da rede. 3. Transporte: realizam o controle no envio das informaes dos aplicativos pela rede. nesta camada que se faz a conexo com o aplicativo que o usurio est utilizando. 4. Aplicao: so especficos para cada programa que faz uso da rede. Dessa forma, existe um protocolo para a conversao entre um servidor web e um navegador web (HTTP), dentre outras. Cada aplicao de rede tem o seu prprio protocolo de comunicao, que utiliza os protocolos das camadas mais baixas para poder atingir o seu destino. Pela figura acima vemos que existem dois protocolos de transporte no TCP/IP: TCP e UDP. O TCP um protocolo orientado a conexo. Ele permite que sejam enviadas mensagens de qualquer tamanho e controla a diviso das mensagens em pacotes que possam ser enviados pela rede. Ele tambm 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 so mensagens com um comprimento mximo pr-fixado e cuja entrega no garantida. Caso a rede esteja congestionada, um datagrama pode ser perdido e o UDP no informa as aplicaes das camadas superiores que o datagrama foi perdido. Outra possibilidade que o congestionamento em uma rota da rede possa fazer com que os pacotes cheguem ao seu destino em uma ordem diferente daquela em que foram enviados.
3 TCP/IP Verso 4 Em uma rede TCP/IP, cada computador (ou melhor, cada placa de rede, caso o computador possua mais do que uma) possui um endereo numrico formado por 4 bytes, geralmente escritos na forma w.x.y.z. Para ter um maior controle sobre os endereos foram criadas as classes de endereo, que so representadas no primeiro byte do endereo: 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 No Utilizado Alm deste Endereo IP, cada computador possui uma mscara de rede (network mask ou subnet mask), que um nmero do mesmo tipo, mas com a restrio de que ele deve comear por uma sequncia contnua de bits em 1, seguida por uma sequncia contnua de bits em zero. Ou seja, a mscara de rede pode ser um nmero como: 11111111.11111111.00000000.00000000 (255.255.0.0). A mscara de rede serve para quebrar um endereo IP em um Endereo de Rede e um Endereo do Elemento. Todos os computadores em uma mesma rede local (fisicamente falando, por exemplo, um mesmo barramento Ethernet) devem ter o mesmo endereo de rede, e cada um deve ter um endereo de elemento diferente. O roteamento dos pacotes na rede feito pelo Endereo de Rede e a entrega dos pacotes feita pelo Endereo do Elemento. 3.1 Comunicao Em Uma Rede TCP/IPv4 Digamos que o elemento com o endereo IP 172.16.1.101 deseje enviar um pacote de informao para o endereo 172.16.2.102. Caso a mscara 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 endereo e portanto esto diretamente conectados. Neste caso, o nvel IP envia um pacote de aviso ARP (explicado com mais detalhes na Unidade 19) pela rede Ethernet para identificar qual o endereo 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 recebero o pacote e o elemento configurado para o endereo desejado ir responder ao pacote ARP indicando qual o seu endereo Ethernet. Assim o IP pode montar o pacote Ethernet corretamente endereado e enviar o pacote para o seu destino. Agora digamos que a mscara de rede no fosse 255.255.0.0, mas sim 255.255.255.0. Neste caso, os endereos de rede da origem e destino seriam respectivamente 172.16.1.0 e 172.16.2.0. Como os endereos de rede so diferentes, isto significa que no temos conectividade direta, entre os dois elementos, portanto o pacote dever ser entregue por intermdio de uma Ponte de Rede. Digamos que a Ponte de Rede seja 172.16.1.1 (observe que o endereo de rede da Ponte de Rede 172.16.1.0, o mesmo do nosso elemento de origem). Ento o elemento ir enviar um pacote ARP pela rede para descobrir o endereo Ethernet da Ponte de Rede e enviar o pacote para ela. Ao receber o pacote, a Ponte de Rede ir verificar que o endereo IP de destino o IP de outro elemento, e no dele e ir verificar qual o endereo de rede do destino. Pode ser que o pacote esteja endereado para uma rede local na qual a Ponte de Rede tenha
uma conexo direta, ou pode ser que a Ponte de Rede tenha que direcionar o pacote para uma outra Ponte de Rede ou Roteador. De qualquer forma, a Ponte de Rede segue o mesmo processo de gerar o endereo de rede utilizando a mscara de rede e, em seguida, enviar um pacote ARP pedindo o endereo Ethernet do prximo elemento a receber o pacote. 4 TCP/IP Verso 6 O Protocolo Ipv6 um dos principais padres a ser implantado no mundo. Embora as atuais especificaes do IPv6 no se transformem oficialmente em um padro, importante ter-se uma viso geral do atual desenvolvimento deste protocolo. Algumas alteraes nas especificaes do protocolo so esperadas, na medida em que se aproxima do fechamento das caractersticas do Protocolo IPv6 como um padro, assim este resumo se apresenta como um guia ao IPv6, no sendo a informao definitiva. A verso 4 do Protocolo IP, IPv4, o mais popular em uso hoje, embora haja algumas questes abertas sobre sua capacidade para servir comunidade da Internet por muito mais tempo. IPv4 foi concludo na dcada de 1970 e atualmente comeou a mostrar sua idade. A questo principal que cerca IPv6 o endereamento, pois muitos peritos acreditam que atualmente estejam em uso cerca de quatro bilhes de endereos, um valor muito prximo do limite disponvel no IPv4. Embora isso parea um nmero muito grande de endereos, os grandes blocos mltiplos so dados s Agncias Governamentais e s Grandes Organizaes. IPv6 poderia ser a soluo de muitos problemas, mas ainda no foi plenamente desenvolvido e no um padro de fato! O Protocolo IPv6 est em desenvolvimento desde a dcada de 1990, tendo sido criado centenas de documentos com especificaes sobre o funcionamento especfico em determinados aspectos, incluindo: Endereamento Expandido, Formato Simplificado do Cabealho, Etiquetas de Transporte, Autenticao e Privacidade. 4.1 Endereamento Um exemplo de endereo IPv4 172.146.17.10. No Protocolo IPv4 os endereos IP so formados por 4 nmeros de 8 bits. Isso permite que existam no mximo 4 bilhes de endereos diferentes (nmero que est sendo alcanado atualmente). No Protocolo IPv6 utiliza-se 8 nmeros de 16 bits para formar um endereo, por exemplo, pode-se ter o seguinte nmero para um endereo A462:19C0:0102:3109:AC12:512D:0192:BC43. Os nmeros que formam um endereo so escritos em Hexadecimal e para cada parte do endereo existe um nmero hexadecimal de 4 dgitos, totalizando um endereo de 128 bits. Uma diferena no formato do endereo do IPv6 em relao ao IPv4 a possibilidade de se escrever o endereo 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 Cabealho do pacote IPv6 O formato do cabealho no IPv6 simplificado, sendo formado por 8 partes:
As partes do cabealho do IPv6 so descritas na tabela a seguir: Parte Verso Classe Descrio Nmero de verso IP, o valor 6. Valor de prioridade de cada pacote. Especifica a classe de trfego: - 0 a 7 so definidos para trfegos de dados; - 8 a 15 para trfegos de vdeo e udio. Etiqueta de Transporte Utilizado para aplicaes que necessitam de garantia de desempenho. Um fluxo definido como um seqncia de pacotes enviados de uma fonte particular at um destino particular. identificado pela combinao do endereo da fonte e um rtulo de fluxo de 24 bits. Desse modo, todos os pacotes que pertencem a um mesmo fluxo, possuem um nico rtulo. Especifica o tamanho dos dados transportados. Identifica o tipo de cabealho que se segue imediatamente aps o cabealho de base. Por exemplo, um cabealho TCP/UDP ou um cabealho opcional do IPv6. Nmero de saltos (hops) restante para um particular pacote. Esse nmero colocado pela fonte e decrementado por 1 em cada n. Se esse nmero chega a zero, o pacote em questo descartado. Endereo de quem est enviando o pacote.
Limite de Saltos
O formato do cabealho do IPv4 mais complexo, sendo formado por 14 partes, isso exige um maior tempo de processamento que o cabealho do IPv6. Um cabealho mais simplificado implica em menos processamento para cada pacote, sendo extremamente til para redes de alta velocidade.
UNIDADE 18
Configurao Da Rede Objetivo: Aprender sobre a cofigurao de um computador para estar presente em uma rede de computadores.
1 Introduo Para conectar vrios computadores, e faz-los trabalhar em conjunto, no basta apenas ligar cabos. Deve-se configurar os computadores, para que os mesmos possam enxergar uns aos outros. Estas configuraes formaro as caractersticas de um computador, e determinaro:
A qual rede ele pertence; Qual sua funo na rede; Como ele acessar os outros computadores; E como as outras mquinas o acessaro.
Nesta Unidade sero vistas as maneiras de se definir algumas destas caractersticas. E nas Unidades seguintes, outras caractersticas sero definidas.
2 Definio Da Presena Na Rede A configurao de um computador, para que ele pertena a uma rede, a definio bsica para a construo de uma rede de computadores. Nesta configurao sero definidos o tipo de rede e a maneira como este computador se identificar na rede. O tipo de rede mais utilizado o TCP/IPv4, Rede TCP/IP Verso 4. Neste tipo de rede existem 4 caractersticas bsicas para o computador:
A definio da Classe da Rede, do Nmero da Rede e do Numero de Identificao so simultneas, e acontecem no momento de definio do Nmero de Identificao. 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 nmero do conjunto dos nmeros definir a classe da rede. Uma das caractersticas do protocolo TCP/IP o fato de o mesmo ser controlado pelo governo dos Estados Unidos. Isto implica em uma srie de restries, dentre as quais a liberao de nmeros IP para serem utilizados. Inicialmente no havia uma regra especfica, mas atualmente existe um padro para o fornecimento de nmeros de identificao. A tabela 1 lista alguns nmeros em uso e reservados para uso:
Algumas empresas que tinham um IP na Classe A, como o caso da IBM, mantiveram este nmero. Outros casos, como acontece na maioria das empresas no Brasil, receberam um IP de acordo com sua regio. Como o Brasil pertence Regio LACNIC, a maioria dos IP's registrados inicia com o nmero 200. A definio da Mscara da Rede realizada logo aps a escolha do Nmero IP. Como visto na Unidade 17, a Mscara de Rede ser utilizada para identificar como a conectividade dos computadores na rede, identificando o nmero da rede do computador. Em um cenrio onde existam 5 computadores, identificados com os seguintes nmeros:
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;
Se a Mscara de Rede for: 255.255.0.0, ento teremos trs 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 Mscara de Rede for: 255.255.255.0, ento teremos 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; o 4) Computador E: 200.123.78.0;
Se a Mscara for 255.255.0.0, ento os computadores A e B podero se comunicar diretamente; Se a Mscara for 255.255.255.0, os computadores A e B precisaro 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 bsica dele a seguinte: $ ifconfig <placa> netmask <mscara> <endereo-IP> Existem outras opes para este programa. As mais importantes so as que definem qual placa ser configura, qual ser a mscara de rede, e qual o nmero utilizado no endereo IP:
Para configurar a placa com IP Dinmico, isto , DHCP, utiliza-se o seguinte comando: $ ifconfig <placa> dhcp start
Tambm possvel configurar a placa de rede utilizando o Centro de Controle do Mandriva, acessando o Centro de Rede:
Ser iniciado o programa para configurar as placas de rede. Deve-se escolher a placa corretamente, e clicar no boto Configurar:
Ento ser mostrada uma tela para realizar a configurao da placa selecionada:
UNIDADE 19
Ferramentas TCP-IP Objetivo: Aprender sobre a utilizao de algumas ferramentas para gerenciar e verificar o comportamento da rede.
1 Introduo Aps a configurao da rede a tarefa mais importante ser a verificao do funcionamento da mesma. Existem vrias ferramentas para realizar esse trabalho, e nesta unidade sero vistas as seguintes:
2 Arp A sigla ARP representa Address Resolution Protocol, que significa Protocolo de Resoluo de Endereos. Sua utilizao importante, pois atravs dele obtem-se os nmeros dos endereos MAC das placas de rede a partir do endereo IP de um computador, como mostra a figura 1:
3 Netstat O NetStat informa sobre algumas estatsticas relacionadas com a rede, dentre as quais: tabelas de roteamento, conexes de entrada e sada, processos com acesso rede, e vrias outras.
4 Traceroute O traceroute utilizado para verificar a rota existente at um determinado endereo. Exemplos de rastreamento de endereos com o comando Traceroute: Frana - 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 endereo localizado na Frana
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 endereo localizado nos Estados Unidos
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 endereo localizado na China
Alguns domnios podem ter a terminao de um pas, mas os arquivos podem estar armazenados em um servidor em outro pas, como acontece com o endereo 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 deendereo com terminao .br
5 Nslookup O programa NSLookup uma ferramenta muito til para o gerenciamento de Nomes de Mquinas e Servidores DNS. Com este programa, pode-se saber se o Servidor DNS est operando corretamente, passando-lhe alguns endereos como parmetros:
6 SSH A sigla SSH representa Secure Shell, que significa Comando Seguro. Este programa utilizado para se realizar uma conexo segura, com criptografia dos dados, entre dois computadores. Sua sintaxe muito simples, como mostra a figura 4, precisando informar apenas o nmero IP da mquina a qual se deseja conectar:
7 Ping O programa Ping o mais simples, e um dos mais teis. Com ele pode-se saber se uma mquina est corretamente conectada e configurada em uma rede. Sua tarefa muito simples: testar a conexo com a mquina informada.
UNIDADE 20
Proteo Do Servidor Objetivo: Aprender sobre a configurao de um Firewall, que ir proteger o servidor contra acessos indevidos. 1 Introduo A segurana em uma rede de computadores a caracterstica de maior prioridade. No seria bom ter uma rede invadida, e os arquivos roubados, ou corrompidos, por um usurio no autorizado. A definio de senhas de acesso, grupos de usurios, permisses para arquivos, e outras atitudes, no garantem por completo a segurana. Deve-se ter tambm um mtodo para garantir que as informaes que trafegam na rede so informaes confiveis. Para alcanar 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 imprprios sejam efetuados. O Firewall padro no Linux o IPTables. Este programa permite a definio de uma configurao que verificar constantemente as informaes na rede, analisando os pacotes que passam pelo servidor.
2 Pontos De Inspeo A verificao do IPTables ocorrer em determinados pontos. Estes pontos so mapeamentos do comportamento da rede, e so 3:
Filter: pacotes gerais que sero verificados; NAT: pacotes da rede interna, gerados na comunicao local entre os computadores da rede; Mangle: pacotes com caractersticas de QoS especiais. Geralmente so relacionadas a dados multimdia transmitidos em tempo real.
Para cada ponto de verificao existe um conjunto de regras especfico. As regras de funcionamento do IPTables so as seguintes: Ponto de Inspeo Momento da Verificao FORWARD Filter INPUT OUTPUT PREROUTING NAT POSTROUTING OUTPUT PREROUTING POSTROUTING Mangle INPUT OUTPUT FORWARD Tabela 1: Momentos de verificao dos pacotes no Firewall 3 Operao A Ser Realizada No momento em que um pacote for interceptado pelo IPTable, ele realizar uma operao, que definir a continuidade da comunicao do pacote. Estas operaes so apresentadas na tabela 2: Verifica os pacotes quando ocorrem mudanas nos bits de QoS. Descrio Verifica os pacotes que so direcionados outro Firewall. Verifica os pacotes que so destinados ao prprio Firewall. Verifica os pacotes que so originados no prprio Firewall. Verifica os pacotes quando a mudana do IP acontece antes do roteamento. Verifica os pacotes quando a mudana do IP acontece depois do roteamento. Verifica os pacotes quando a mudana do endereo do prprio Firewall muda no roteamento (raramente acontece)
Descrio O pacote ser aceito pelo Firewall O pacote bloqueado no Firewall, e no retorna aviso para quem originou o pacote. Utiliado em conjunto com o DROP, geralmente em dupla. Primeiro faz o LOG e depois o DROP O pacote rejeitado pelo Firewall, e um aviso enviado a quem originou o pacote. Utilizado para alterar o endereo de destino do pacote Utilizado para alterar o endereo de origem do pacote Similar ao SNAT Tabela 2: Operaes feitas pelo Firewall
4 Opes De Ativao As caractersticas apresentadas anteriormente so caractersticas bsicas do IPTables. Alm destas, existem outras, que tem como objetivo informar nmeros de IP, portas de dados, protocolos utilizados. Algumas opes so mostradas na tabela 3 a seguir: Opo -t <inspeo> -j <operao> -A <momento-verif.> -p <protocolo> -s <IP-origem> -d <IP-destino> -i <placa-entrada> -o <placa-sada> -F -P <verific.> <oper.> Descrio Verifica o pacote de acordo com o ponto de inspeo informado. Realiza a operao informada. Verifica no momento informado. Verifica o protocolo selecionado. Os principais so: TCP, UDP e ICMP. Verifica os pacotes originados neste IP. Verifica os pacotes destinados para este IP. Verifica a entrada de pacotes na placa. Verifica a sada de pacotes na placa. Apaga todas as regras. Define operao padro para o momento da verificao informados. Tabela 3: Opes de configurao
Existem outras opes que podem ser utilizadas tambm, a lista completa de opes permitem que se configure um Firewall com as caractersticas necessrias para a manuteno da segurana e acessibilidade da rede. 5 Exemplo De Arquivo Para O Firewall O mtodo mais aconselhado para se ativar o IPTables a criao 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
#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 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]"
UNIDADE 21
Conexo Remota Com Segurana Objetivo: Aprender sobre a utilizao do programa SSH para realizar conexes seguras entre computadores.
1 Introduo O programa SSH utilizado para efetuar conexes entre computadores que no estejam na mesma rede, fazendo acesso mquina conectada de modo transparente, ou seja, como se o usurio realmente estivesse operando um terminal de comandos diretamente. A principal diferena com relao ao servio telnet padro, rlogin e rsh que toda a comunicao entre cliente/servidor feita de forma encriptada usando chaves pblicas/privadas RSA para criptografia garantindo uma transferncia segura de dados. A velocidade na comunicao muito boa, principalmente pelo fato de que os dados so em modo texto. As principais caractersticas do programa SSH so:
Conexo de dados criptografada entre os computadores; Cpia de arquivos usando conexo criptografada (scp); Suporte a ftp criptografado (sftp); Suporte a compactao de dados entre os computadores; Autenticao usando um par de chaves pblica/privada RSA ou DSA; Algoritmo de criptografia livre de patentes.
A comunicao no SSH feita na porta 22, ento esta porta deve estar habilitada no firewall para permitir a troca de dados entre os computadores que utilizao o SSH para realizarem conexes entre si. 2 Conjunto De Programas A utilizao do SSH feita atravs da utilizao de vrios programas, cada um com um propsito especfico. Os principais so os seguintes:
SSHD: programa instalado em todos os computadores que recebero uma conexo SSH; SSH: programa utilizado nos computadores para solicitar uma conexo com outro computador; SCP: programa para realizar uma cpia de arquivos, com criptografia, entre dois computadores;
SFTP: programa para realizar uma conexo de FTP com criptografia entre dois computadores;
Para configurar o SSHD: o /etc/ssh/sshd_config Para configurar o SSH: o /etc/ssh/ssh_config: arquivo de configurao geral; o ~/.ssh/config: arquivo de configurao do usurio.
A configurao do SSHD deve ser feita com muito cuidado. Os campos que se deve ter maior cuidado so:
Port: especifica a porta de comunicao, a padro a 22; ListenAdress: identifica os computadores que sero atendidos. O padro 0.0.0.0, indicando que qualquer mquina ser atendida (depender apenas de usurio e senha); PermitRootLogin: especifica se permitir ou no o login do ROOT. Se permitir, ento o valor ser yes. Se no permitir, o valor ser no. LoginGraceTime: tempo em segundos de espera para informar a senha no momento da conexo; KeepAlive: Quando especificada com o valor yes verifica constantemente se o computador que solicitou a conexo continua ativo; PasswordAuthentication: Se possuir o valor yes, far autenticao das senhas; PermitEmptyPasswords: Se especificado com o valor no, s aceitar conexes que sejam feitas com envio de senha.
Deve-se tomar cuidado com estes parmetros, pois se forem informados de forma errada, permitiro um acesso de um usurio, no autenticado, que no tenha senha, que mesmo assim acessar um computador. 3 Inicializao Do SSHD A inicializao do SSHD feita como um servio do Linux, caso no esteja cadastrada como servio, pode-se inici-lo atravs do comando: $ /etc/init.d/sshd As principais opes de inicializao so as seguintes:
-f <arquivo>: indica arquivo de configurao de entrada; -g <segundos>: indica o tempo mximo de espera para digitao da senha no momento da conexo. O padro 600 segundos. Se indicar um tempo de 0 (zero) segundos, ento o tempo ser ilimitado; -p <porta>: indica a porta que ser utilizada para atender as conexes. A porta padro a 22; -4: fora a utilizao do TCP/IP verso 4; -6: fora a utilizao do TCP/IP verso 6.
Se nenhum parmetro for utilizado na inicializao do SSHD, ento o arquivo /etc/ssh/sshd_config ser utilizado. 4 Utilizao Do SSH, SCP E SFTP Para realizar as conexes, pode-se utilizar os programas SSH, SCP ou SFTP. O mais comum o SSH, este programa inicia uma conexo segura, e simula um terminal de comandos no computador, como mostra a figura 1:
A opo bsica de conexo com o SSH informar o IP da mquina que se deseja alcanar. Os programas SCP e SFTP so utilizados para cpias seguras, e com eles, alm de informar o IP da mquina que se quer fazer a conexo, deve-se informar o diretrio completo do arquivo que se deseja copiar. Uma alternativa de uso no MS-Windows o programa WinSCP, nele tem-se um ambiente grfico, onde visualizada a lista de arquivos e diretrios, tanto na mquina local, quanto na mquina conectada, como pode ser visto na figura 2:
Com o WinSCP pode-se fazer uma conexo segura entre dois computadores, atravs dos protocolos SCP ou SSH.
UNIDADE 22
Servidor De Rede DHCP Objetivo: Aprender sobre a configurao de um servidor de rede no Linux 1 Introduo O principal protocolo de rede utilizado atualmente o TCP/IP verso 4. Este protocolo encontrado em praticamente todas as organizaes no mundo. Alguns protocolos antigos ainda permanecem em uso, por questes de compatibilidade com sistemas legados. A principal caracterstica do protocolo TPC/IP o fato de que todas as mquinas pertencentes rede possuiro um nmero de identificao. Este nmero utilizado como controle bsico na comunicao realizada na rede. A verso 4, como visto na Unidade 17, utiliza um nmero de 32 bits para identificar cada mquina da rede. Para definir qual nmero ser aplicado a qual mquina existem duas estratgias: 1. Numerao Esttica: as mquinas so identificadas com nmeros fixos, que no so mais alterados durante a permanncia destas mquinas na rede, mesmo quando estas mquinas so desconectadas e reconectadas na rede;
2. Numerao Dinmica: as mquinas recebem um nmero de identificao quando so conectadas rede (geralmente quando so ligadas), e este nmero no obrigatoriamente fixo, podendo alterar aps um tempo em que houve uma desconexo e reconexo rede. A Numerao Dinmica realizada pelo protocolo DHCP (Dynamic Host Configuration Protocol, que significa Protocolo de Configurao Dinmica de Equipamento). Opcionalmente pode-se tambm realizar a Numerao Esttica. 2 Funcionamento Do DHCP O protocolo DHCP acionado atravs de 4 tarefas: 1. Descoberta: Quando uma mquina conectada a rede (ou ligada), ela enviar uma mensagem para o endereo 255.255.255.255 (realizando um broadcast), utilizando a porta 67. Apenas uma mquina entender a mensagem, esta mquina o Servidor DHCP. A mensagem da mquina cliente tem como objetivo avisar que ela no tem IP definido. 2. Oferta: O Servidor DHCP definir ento um nmero IP para a mquina cliente. Antes de enviar o nmero, o Servidor identificar o nmero 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, ento o mesmo nmero (se no estiver em uso) ser enviado para a mquina cliente, caso contrrio um novo nmero ser definido. Como a mquina cliente ainda no possui um nmero IP, o controle do envio da mensagem feito pelo nmero MAC da placa na mquina cliente. 3. Recebimento: Quando a mquina recebe sua configurao de rede designada pelo Servidor, incluindo: nmero IP, mscara de rede e outras caractersticas, a mquina cliente decidir se aceita ou no a configurao. Aceitando a configurao, ela enviar uma nova mensagem ao servidor informando que a configurao foi recebida. 4. Confirmao: Ao receber a mensagem do cliente, informando que a configurao foi aceita, o Servidor DHCP envia a ltima mensagem, confirmando a configurao da mquina cliente. 3 Configurao Do Servidor DHCP A configurao do Servidor DHCP feita a partir do arquivo /etc/dhcpd.conf. A configurao a ser feita nesta Unidade assumir as seguintes caractersticas:
Rede: 192.168.27.0 Mscara: 255.255.255.0; Gateway: 192.168.27.1; Servidor DNS: 192.168.27.1; Domnio: unidade22.com.br; Mquinas na rede tero IP entre: 192.168.27.100 192.168.27.180;
Para a configurao apresentada, deve-se escrever o arquivo como mostrado na figura 1: ddns-update-style none;
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 configurao /etc/dhcpd.conf O arquivo de configurao do Servidor DHCP dividido em duas rea: uma Global e outra Especfica. A rea Global apresentada na figura 1, as opes de configurao mais importantes so:
ddns-update-style: define o tipo de sincronizao com o servidor DNS. Esta opo obrigatria, e os valores possveis so: none, interim e ad-hoc. authoritative: define o servidor DHCP prioritrio. No h necessidade em ambientes com apenas 1 servidor DHCP, mas se houver mais de um, um dos servidores obrigatoriamente dever ter este parmetro. default-lease-time: define o tempo mnimo em segundos que um nmero IP ser associado a uma mquina da rede; max-lease-time: define o tempo mximo em segundos que um nmero IP ser associado a uma mquina da rede; option routers: define o endereo IP da mquina que servir como gateway (geralmente a mquina ou roteador que conecta Internet). option domain-name-servers: define os endereos dos servidores DNS para a rede. Os nmeros dos servidores DNS so separados por vrgulas; option domain-name: define o nome de domnio dos clientes; subnet <rede> netmask <mascara>: definem a rede e a mscara a ser utilizadas. Esta opo tambm obrigatria; range: define o intervalo de numerao que ser utilizado para identificar as mquinas 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 Especfica. Nesta rea so colocadas configuraes especficas para de determinadas mquinas, como por exemplo um nmero fixo de IP:
host: nome da mquina; use-host-decl-names: se o valor for true, ento o nome definido em host ser passado para a mquina cliente; hardware ethernet: nmero MAC da mquina clliente; fixed-adress: nmero de IP que ser fixo para a mquina cliente.
Quando houver algum conflito entre as reas Global e Especfica, prevalecer o que estiver definido na rea Especfica. Se uma mquina tiver seu IP definido na rea Especfica, e este IP estiver dentro da faixa definida na rea Global, o servidor DHCP no enviar este IP para uma segunda mquina, mesmo que a segunda mquina j tenha utilizado o IP anteriormente e for ligada primeiro. Na figura 2 apresentda uma outra opo de escrita do arquivo /etc/dhcpd.conf: ddns-update-style none;
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; }
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 configurao /etc/dhcpd.conf com restries especficas Tambm possvel configurar o Servidor DHCP pelo drakwizard, basta ir seguindo as opes que aparecem e preencher os campos de acordo com o necessrio. Mas, por ser um processo automtico e simplificado, opes especficas devero ser feitas manualmente, editando-se o arquivo /etc/dhcpd.conf.
UNIDADE 23
PHP Objetivo: Aprender sobre a importncia da Linguagem PHP 1 Introduo PHP inicialmente era chamado de PHPtools, que significava Personal Home Page tools. Atualmente a sigla representa PHP: Hypertext Preprocessor. Originalmente foi desenvolvido pelo programador dinamarqus Rasmus Lerdorf, responsvel pelas verses 1 em 1994 e verso 2 em 1995, sendo a verso 3 escrita por Ramus, Zeev Suraski e Andi Gutmans, sendo esta liberada em 1998. No ano 2000 surgiu a verso 4, e em 2004 foi lanada a verso 5. A verso 6 aguardada para lanamento em 2010. PHP uma linguagem de programao, desenvolvida para facilitar a construo de pginas para a Internet. Os programas escritos em PHP ficam armazenados no computador servidor, e o que as pessoas geralmente acessam so o resultado dos programas.
2 Utilizao A linguagem PHP uma linguagem de script de propsito geral, isto significa que ela pode ser utilizada para construir diversos scripts. Mas a principal utilizao do PHP, principalmente devido ao motivo de sua criao, na Internet, sendo o principal rival das linguagens ASP da Microsoft e JSP da Sun Microsystem (que atualmente pertence Oracle Corporation). Existem vrias ferramentas de programao para o PHP, as principais so:
Na internet, a principal funo dos scripts PHP a filtragem de formulrios, lendo os dados digitados, estando presente em mais de 20 milhes de pginas. As vantagens na utilizao do PHP em relao outras linguagens so as seguintes:
O programa gratuito, diferente do ASP que pago; O programa consome pouca memria e precisa de pouco processamento no servidor, diferente do JSP que consome muita memria e exige muito dos processadores; Tem acesso a banco de dados diversos; Possui capacidade em processar imagens, montando figuras para gerar grficos; Manipula arquivos PDF; Manipula informaes XML; Manipula arquivos texto; Suporte aos protocolos IMAP, POP3, FTP e outros; Utiliza funes e Orientao a Objetos.
3 Programao 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 variaes. Todo programa PHP inicia com o identificador <?php e termina com o identificador ?>. Os comandos if, else, while, for, do...while, switch...case, e vrios outros esto disponveis. Alm de uma grande variedade de funes que acessam arquivos: fopen, fclose, fgets, fputs, fwrite, fread, fscanf, dentre outras. A figura 2 mostra um outro exemplo de programa PHP que realiza a leitura do arquivo texto usuarios.txt:
Para executar programas PHP no terminal de comandos ser necessria a instalao do programa php-cgi. Para utilizar programas PHP em pginas da HTML, a soluo mais indicada instalar um mdulo adicional no servidor http utilizado. No caso do Apache, o mdulo chama-se apache-mod_php:
UNIDADE 24
Servidor De Banco De Dados Objetivo: Aprender sobre o servidor de banco de dados MySQL 1 Introduo Uma das grandes vantagens em ter um servidor em uma organizao utiliz-lo para centralizar as informaes importantes. E para gerenciar estas informaes a ferramenta bsica um Gerenciador de Dados. Um dos programas mais utilizados nos sistemas Linux para gerenciar dados o programa MySQL. Este programa um Gerenciador de Banco de Dados Relacional, e opera todas as suas funes com base na linguagem SQL. Permite a criao de ambientes multi-usurio e diversos bancos de dados. O MySQL um programa que possui licenas de distribuio gratuito e licenas pagas. As licenas pagas do direito a suporte tcnico e atualizaes automticas. As licenas gratuitas so atualizadas apenas quando a equipe de desenvolvimento liberar uma nova verso. 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. Estas empresas manipulam bases de dados gigantescas, e mantm uma vasta estrutura de servidores.
2 Utilizao A utilizao do MySQL pode ser feita tanto pelo terminal de comando do prprio MySQL quanto por uma ferramenta grfica, que pode ser o MySQL GUI Tool Kit, ou o Navicat (ou alguma 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 3: Navicat 3 Comandos Principais Como um Gerenciador SQL o MySQL aceita todos os comandos padronizados por esta linguagem. Assim sendo, os comandos CREATE, SELECT, UPDATE, DELETE e diversos outros da linguagem SQL so aceitos. 3.1 Criao 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: Criao de Banco de Dados Cada banco de dados criado deve possuir um nome nico. 3.2 Manipulao De Tabelas Aps criar um Banco de Dados, deve-se construir a estrutura do banco, definindo quais so as tabelas, e quais sero os campos de cada tabela. Para construir uma tabela utilizase 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: Criao de uma tabela de dados Se uma tabela no for mais til, pode-se apag-la com o comando drop table, ou alterar seus campos com o comando alter table 3.3 Manipulao Dos Dados A principal tarefa de um Gerenciador de Banco de Dados manipular dados. Para realizar esta tarefa existem os comandos select, update, delete e insert. A figura 6 demonstra a utilizao do comando select: SELECT Codigo, Descricao, Preco FROM Produtos; Figura 6: Criao de uma tabela de dados
UNIDADE 25
Servidor De Correio Eletrnico Objetivo: Aprender Sobre A Configurao De Um Servidor De Correio Eletrnico 1 Introduo Um Servidor de Correio Eletrnico um computador que envia, recebe e armazena mensagens eletrnicas. 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 so utilizados quando se precisa receber alguma mensagem. O protocolo IMAP possui vrias vantagens em relao ao POP3, sendo uma opo 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 disponveis ao usurio no servidor, e so gravadas na mquina local apenas quando o usurio desejar. O protocolo POP3 grava todas as novas mensagens no computador do usurio, assim que ele conecta-se no servidor, no permitindo que o usurio escolha quais so as mensagens que ficaro no servidor, e quais sero armazenadas localmente. Esta diferena permite que um usurio tenha sempre acesso s mensagens mais importantes, pois ele pode deixar estas mensagens armazenadas no servidor, e no importe onde o usurio esteja, e qual computador utilize, ele sempre ter acesso a essas mensagens. Para iniciar a configurao do Servidor de Correio Eletrnico deve-se ter instalado o programa Cyrus Mail no servidor. Aps a instalao, pode-se realizar as devidas configuraes. 2 Autenticao No Servidor De Correio Existem 2 principais mtodos de autenticao no Cyrus: 1. SASLDB: este o mtodo padro, os usurios e as senhas so armazenados no arquivo sasldb. 2. LDAP: os usurios e as senhas so armazenados em um diretrio LDAP. Tambm possvel configurar a autenticao para utilizar o Kerberos, PAM ou shadow.
3 Configurao Do Servidor De Correio Para utilizar o Cyrus Mail deve-se ter no servidor um grupo chamado mail e um usurio 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: Configurao do arquivo /etc/syslog.conf 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: Configurao do arquivo /etc/imapd.conf Para testar a conexo, pode-se utilizar a seguinte sequncia de comandos: $ su cyrus $ imtest -m login -p imap localhost O primeiro comando mudar o usurio de ROOT para CYRUS, e o segundo comando testar a conexo com o servio de correio disponvel no servidor localhost. Se o servidor tiver outro nome, ento esta ltima opo dever ser alterada: $ imtest -m login -p imap <nome-do-servidor>. Para funcionar corretamente, o servidor necessitar da existncia dos seguintes diretrios:
E dos seguintes arquivos, que podem ser criados com contedo vazio:
/var/adm/imapd.log /var/adm/auth.log
Se os diretrios no existiam anteriormente, e foram criados pelo ROOT, ento deve-se digitar a seguinte sequncia 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 ajustaro os diretrios para o usrio 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 contedo: 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 Aps editar o arquivo acima, digite o comando: $ m4 sendmail.mc > sendmail.cf O sendmail o programa que enviar as mensagens do servidor (SMTP). O cyrus receber e armazenar as mensagens no servidor (POP3 e IMAP) 4 Criao De Contas De Correio Para criar contas de correio para os usurios utiliza-se o programa CyrAdm. Para executar este programa, deve-se fazer o login com o usurio cyrus, e depois digitar o seguinte, no terminal de comandos: $ cyradm -u <usurio> <servidor> O campo <usurio> deve ser preenchido com o nome do usurio a ser criado, e o campo <servidor> com o nome do computador que ser o Servidor de Correio. Aps a criao dos usurios, deve-se criar as Caixas Postais. Para isso, com o usurio cyrus, utiliza-se o programa CM: $ cm user.<usuario> No lugar do campo <usuario>, o nome da conta do usurio dever ser informada. Por exemplo: $ cyradm -u ricardoms esab.com.br $ cm user.ricardoms
UNIDADE 26
Apache Servidor WWW Objetivo: Aprender sobre a utilizao de servidores web. 1 Introduo Atualmente muito importante para a maioria das mdias e grandes empresas disponibilizarem um espao em seus servidores para a criao de uma Intranet. Uma Intranet uma Internet particular, com contedo controlado e adequado por uma empresa, com acesso tambm gerenciado pela mesma. Para criar uma Intranet, vrias ferramentas so necessrias, a principal delas o Servidor Web. A Internet chamada de Teia Global, que em ingls escrito como World Web. Os servidores que fornecem o contedo disponvel na Internet foram denominados, em ingls, Web Servers, e em portugus so chamados de Servidores Web. Os Servidores Web mais famosos atualmente so:
O Servidor Web da Microsoft opera exclusivamente no sistema operacional Windows. J o Apache pode ser utilizado em vrios sistemas: Linux, Solaris, Netware, Windows, Mac OS X, dentre outros. Os Servidores Web so acessados pelos Clientes Web, geralmente os navegadores da internet: Microsoft Internet Explorer, Mozilla Firefox, Google Chrome, Opera Browser, Apple Safari, dentre outros.
Integrao com Linguagens de Programao: PHP, Perl, ASP, e outras; Mdulos DSO (Dynamic Shared Objects, que significa: Objetos Dinmicos Compartilhados): permite alterar as funcionalidades do servidor sem necessidade de recompilao do programa; Autenticao: Permite a especificao de restries especficas para arquivos ou diretrios acessados no servidor; Virtual Hosting: permite gerenciar vrios domnios simultaneamente pelo mesmo processo, ou ter mais de um processo gerenciando um domnio; Servidor Proxy: possibilita a configurao de limite de acesso, caching e redirecionamentos; Criptografia: suporte via SSL, permitindo a concesso de certificados digitais; Internacionalizao: possibilita a exibio do contedo da pgina no idioma do Navegador. Suporte a tipos MIME;
O Apache est includo na maioria das distribuies Linux, inclusive no Mandriva Linux 2009. Caso haja necessidade, pode-se acessar a pgina oficial do Apache para obter a verso mais recente: http://httpd.apache.org
httpd: programa principal que gerencia as pginas HTML; apachectl: utilitrio para controlar o apache; httpd.conf: principal arquivo para configurar o apache.
Estas 3 partes so utilizadas, cada uma a sua maneira, para fazer com que um servidor comum torne-se um Servidor Web. Os arquivos de configurao do Apache, por padro, encontram-se no diretrio: /etc/httpd/conf e /etc/sysconfig, sendo o principal:
/etc/httpd/conf/httpd.conf: este o pincipal arquivo de configurao do Apache, controlando a operao do daemon (servio);
A figura 3 mostra os principais parmetros de configurao pertencentes ao httpd.conf: ## httpd.conf -- Arquivo de configurao do servidor httpd Apache
# HostnameLookups: registra os nomes DNS dos clientes (ON) # ou apenas seus endereos IP's (OFF) HostnameLookups off
# User/Group: nome (ou #nmero) do usurio/grupo que executar # o servidor httpd. User apache Group apache
# ServerAdmin: endereo de e-mail, onde os problemas com # o servidor devem ser enviadas. ServerAdmin ricardoms@esab.edu.br
# ServerRoot: topo da rvore de diretrios onde os arquivos # de configurao do servidor, erros, e log so mantidos.
ServerRoot /etc/httpd
# Timeout: O nmero de segundos antes de receber # e enviar um time out Timeout 300
# MaxKeepAliveRequests: nmero mximo de requisies # que sero permitidas MaxKeepAliveRequests 100 Figura 3: Principais parmetros do httpd.conf
access_log: registra o acesso aos arquivos no servidor; error_log: registra os erros ocorridos, tanto de acesso, quanto internos;
4 Utilizao O Apache pode ser iniciado como Servidor Inetd ou Daemon. A inicializao de programas pelo Inetd foi demonstrada na Unidade 18. Para iniciar o Apache como servio utiliza-se um dos diretrios /etc/rc_.d, pois cada diretrio possui os programas que sero executados no respectivo Nvel de Execuo. O script de inicializao do Apache est em: /etc/init.d/apache. E este script aceita os seguintes parmetros:
start: inicia o Apache; stop: finaliza o Apache; restart: reinicia o Apache, com intervalo de 5 segundos entre a finalizao e o novo incio; graceful: reinicia o Apache sem finalizar as conexes existentes. gracefulstop: finaliza o Apache sem finalizar as conexes existentes. Os arquivos de Log no so fechados imediatamente.
$ ./etc/init.d/apache start
UNIDADE 27
Servidor De Arquivos E RAID Objetivo: Aprender sobre a criao de um servidor de arquivos e a utilizao da tecnologia RAID.
1 Introduo NFS um protocolo para o gerenciamento de arquivos em rede. Os arquivos ficam armazenados em vrios computadores na rede, e so acessados de maneira simplificada pelos usurios. Este protocolo foi escrito em 1984 pela SUN Microsystems para o Solaris, mas se tornou padro nos sistemas UNIX. RAID a sigla para Redundant Array of Independent Disks, que significa Arranjo Independente de Discos. Esta tecnologia utilizada para aumentar a segurana dos dados e velocidade de operao dos discos-rgidos no servidor. A utilizao do protocolo NFS em conjunto com a tecnologia RAID aumentar em muito a confiabilidade e segurana do servidor Linux. Pode-se definir vrios servidores
com diretrios compartilhados, ou apenas um Seervidor de Arquivos centralizado. O modelo de Servidor de Arquivos centralizado ser adotado nesta Unidade. 2 Configurao Do NFS Para configurar um servidor NFS deve-se: 1. Ter instalado o pacote NFS-Utils; 2. Criar um diretrio que ser compartilhado na rede; 3. Editar o arquivo /etc/exports. O diretrio citado no item 2 dever ser criado, pois ser este diretrio que ficar disponvel para outros uusurios. Se houver necessidade de mais diretrios compartilhados, ento eles devero ser criados. Por exemplo, assumindo que o Servidor de Arquivos possui a seguinte configurao:
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 contedo deste arquivo dividido em duas colunas:
A primeira coluna indica os diretrios que sero exportados pelo computador; A segunda coluna indica as mquinas que tero acesso ao diretrio, e o tipo de acesso: o 192.168.27.0/255.255.255.0: indica que todas as mquinas da rede 192.168.27.xxx tero acesso; o (ro) indica acesso apenas para leitura; o (rw) indica acesso para leitura e escrita. o (insecure) indica que a conexo no precisa ser autenticada, por exemplo, pode vir de FTP como convidado.
O acesso pode ser definido para uma rede, ou para mquinas especficas, onde deve-se informar apenas o IP da mquina. Mais de uma mquina poder ser definida, separandose com espaos 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 no so especificados os tipos de acesso, ento assumido o tipo padro, que acesso apenas para leitura com autenticao de senha (do Linux ou SSH). Existe vrias outras opes, que permitem configuraes diversas de acesso. A partir da configurao do Servidor de Arquivo, ou dos servidores, deve-se configurar os computadores da rede para acessarem os diretrios compartilhados. Pode-se fazer isso atravs 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 opes soft e bg significam o seguinte:
soft: No exibe uma mensagem de erro na tela se houver algum erro; bg: A montagem do diretrio feita em segundo plano. O sistema no paraliza durante a montagem do sistema de arquivos NFS; retry: tempo de espera em minutos at que consiga montar o diretrio efetivamente.
O resultado desta configurao ser a seguinte: todos os arquivos disponveis nas mquinas da rede, nos diretrios locais /arquivos, /programas, e /publico, na verdade esto armazenados no Servidor de Arquivos. Isso implica no seguinte: qualquer alterao feita no servidor 192.168.27.220 em um arquivo, refletir automaticamente na rede. Por outro lado, qualquer gravao feita por um cliente em seu diretrio /publico estar disponvel para todos (desde que as permisses de acesso do arquivo permitam). A configurao mais comum a seguinte:
Criar um Servidor de Arquivos e compartilhar o diretrio /home. Em cada mquina cliente, montar o diretrio /home local pelo servidor.
Nas mquinas clientes, incluir no arquivo /etc/fstab: 192.168.27.220:/home /home nfs soft,bg,retry=10 0 0 Figura 4: Alterao para tornar o diretrio /home compartilihado na rede Desta maneira, qualquer usurio que utilizar a rede e gravar seus arquivos em sua prpria conta, gravar os arquivos automaticamente no Servidor. E todas as cpias de segurana feitas no servidor, armazenaro os arquivos de todos os usurios. Um cuidado que deve-se tomar ao editar o arquivo /etc/fstab de se colocar sempre o tipo de sistema de arquivos como NFS.
UNIDADE 28
SAMBA Conexo Com Windows Objetivo: Aprender sobre o funcionamento do SAMBA, que permite a integrao entre Linux e MS-Windows.
1 Introduo SAMBA um programa para permitir o acesso a servidores Windows, pois estes utilizam um protocolo especfico, 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 lanamento do MS-Windows NT, o protocolo SMB utilizado nativamente em servidores Windows. Uma das caractersticas do Linux sua integrao com outros servidores, e atravs do SAMBA permite atualmente a incluso de um servidor Linux a um Domnio de um Servidor Windows, bem como a criao de um Servidor de Domnio Primrio no prprio Linux.
Compartilhamento de Arquivos: permite o compartilhamento de arquivos entre Windows e Linux de maneira transparente, atravs de protocolos, como NetBIOS e TCP/IP; Compartilhamento de Impressoras: o SAMBA permite que se utilize uma impressora na rede, estando ela em uma mquina Windows ou Linux;
Alm destas duas caractersticas, as verses mais recentes do SAMBA permitem a integrao com Domnios do Windows e com o Active Directory. Para utilizar o SAMBA no Linux, dois programas precisam estar ativos, geralmente como servios:
smbd: permite o compartilhamento de arquivos e impressoras; nmbd: prov o servio de resoluo de nomes na rede.
O primeiro permite o compartilhamento bsico, e o segundo o acesso aos servios de Domnio e Active Directory do Windows Server.
3 Configurao Para ser configurado, o SAMBA necessita da edio do arquivo /etc/samba/smb.conf. Este arquivo dividido em duas partes: Configurao Global e Compartilhamentos. A primeira parte, de configurao global, definida na seo [global], e ir caracterizar as configuraes globais do SAMBA, algumas delas so as seguintes:
Definies para Windows: o workgroup: Domnio do Windows; o netbios name: nome do servidor Linux/SAMBA; o server string: descrio do servidor Linux/SAMBA; Definies de Impresso: o printcap name: servidor de impresso; o load printers: indica se carregar ou no as impressoras; Arquivos de Log: o log file: define onde ser gravado o Log;
A segunda parte, configurao de compartilhamentos, definir como e quais sero os compartilhamentos disponibilizados na rede. Esta parte pode ser divivida em vrias sees: Diretrios compartilhados, Impressoras, Arquivos, e vrias outras. Para compartilhar um diretrio, deve-se configurar basicamente as seguintes opes:
path: informa o endereo completo do diretrio a ser comparttilhado no servidor Linux/SAMBA; writable: indica se os usurios podero gravar arquivos no diretrio; (existe uma opo chamada read only, que funciona de modo semelhante, mas inverso) valid users: usurios que podem acessar o compartilhamento. Se for prescedido pelo sinal + define um grupo de usurios.
A lista de opes do SAMBA muito extensa, e no h necessidade de incluir todas as opes nesta Unidade. A configurao final do SAMBA depender de uma srie de fatores:
Tipos de Compartilhamento; Caractersticas da Rede; Integrao ou no com Windows Server; dentre outras.
4 Exemplo De Configurao Neste captulo ser mostrado um arquivo de exemplo, com uma configurao bsica 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 configurao do SAMBA
No arquivo mostrado na figura 1 so definidas 4 sees: global, pasta_publica, pasta_admin e pasta_usuarios. Na seo global so definidos o Domnio Windows, esab.com, e principalmente o tratamento das senhas, que sero encriptadas (encrypt password) e sincronizadas com as senhas do Linux (unix passwords sync), alm do arquivo de Log. Na seo pasta_publica criada uma pasta, localizada em /esab/pub apenas para leitura dos arquivos que estiverem ali. Na seo pasta_admin criada uma rea exclusiva para os usurios pedro, tiago e joao. Apenas estes 3 usurios podero acessar o diretrio /esab/admins. E a ltima seo pasta_usuarios define que o diretrio /esab/usuarios ser acessado por todos os usurios do grupo funcionario. O campo valid users define os usurios,
mas como o nome funcionario est precedido do sinal + ento o nome indicado considerado como um nome de grupo de usurios.
UNIDADE 29
Monitoramento Do Servidor Objetivo: Aprender a monitorar o servidor para garantir o seu funcionamento. 1 Introduo Aps a instalao e configurao do servidor a principal tarefa a ser realizada ser o seu monitoramento. Este trabalho consiste em verificar continuamente a utilizao dos recursos do servidor:
Uma das vantagens da utilizao de uma ferramenta especfica de monitoramento a customizao permitida, e principalmente a visualizao em modo grfico oferecida por muitas dessas ferramentas, como pode ser visto na figura 1:
Existem vrias ferramentas que realizam esta tarefa, e nesta Unidade algumas dessas ferramentas sero analisadas:
2 Nagios O programa Nagios um dos mais populares programas de monitoramento de rede. Ele permite acompanhar computadores e servios, emitindo alertas quando necessrio. As principais caractersticas deste programa so:
Monitoramento de Servios da Rede: SMTP, POP3, HTTP, ICMP, FTP, SSH, dentre outros. Monitoramento do Computador: processador, discos-rgidos, memria. Monitoramento de Alarmes: se um equipamento estiver conectado a rede, como por exemplo um No-Break ou Detector de Movimento, ento este equipamento poder ser monitorado pelo Nagios. Adio de plug-ins especficos desenvolvidos por terceiros. Estes plug-ins podem ser escritos em C++, Perl, PHP, bsh, e vrias outras linguagens. Habilidade para criar uma hierarquia na rede, permitindo a deteco de computadores que estejam inalcanaveis na rede. Esta caracterstica til em ambientes que possuem vrias redes internas. Emisso de notificaes por correio eletrnico ou SMS (telefone celular); Habilidade para definio de scripts para soluo de problemas. Estes scripts podem ser ativados quando determinado problema acontecer na rede. Por exemplo, quando a memria do servidor ficar sobrecarregada, desliga-se alguns servios temporariamente, reiniciando-os quando for possvel.
Nagios Remote Executor: possibilita a execuo de scripts remotamente. Nagios Graph: permite a visualizao de grficos de acompanhamento; PNP4Nagios: tambm permite a visualizao de grficos.
A figura 2 mostra uma das telas que podem ser vistas utilizando-se o Nagios:
3 Cacti O Cacti um programa desenvolvido em PHP para realizar a monitorao da rede. O usurio pode cadastrar alguns servios da rede e acompanhar o seu comportamento em intervalos de tempo determinados. O Cacti bastante utilizado para o monitoramento do trfego de rede, atravs do acompanhamento de roteadores ou switchs, a partir do protocolo SNMP (Simple Network Management Protocol). O Cacti tambm permite a criao de ambientes separados para vrios usurios, permitindo que cada um faa o monitoramento que desejar (desde que os mesmos tenham permisso para faz-los). Os dados so armazenados em um banco de dados MySQL, a partir de scripts que so criados e cadastrados no Cacti. So estes scripts que fornecero as informaes que sero visualizadas. Uma das telas mostrada pelo Cacti pode ser vista na figura 3:
4 Opennms O programa OpenNMS foi desenvolvido em Java, e tem como principal caracterstica o foco em Distribuio e Escalabilidade. As principais caractersticas deste programa so:
Gerenciamento de Servios: monitora a disponibilidade e latncia (demora no atendimento), medindo e gravando as informaes sobre os servios; Coleta de Dados: coleta as informaes geradas pelos componentes (equipamentos/ns) da rede via SNMP, JMX, HTTP, WMI e NSClient. Com isso pode monitorar desde a impressora at o consumo de processador no servidor; Definio de Alarmes: a partir de determinados valores, eventos so acionados para indicar que uma situao de emergncia 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; Emisso de Notificao: mensagens de aviso podem ser enviadas por correio eletrnico ou XMPP (protocolo aceito por Trillian, GoogleTalk, Proteus, Kopete).
5 Pandora Fms O programa Pandora FMS um aplicativo que permite a visualizao da situao e utilizao de diversas recursos da rede: Firewall, Proxie, Banco de Dados, Servidor HTTP, Roteadores, dentre outros. O Pandora dividido em 6 mdulos:
Pandora Network Server; Pandora Database; Pandora SNMP Console; Pandora Web Management System (Pandora Web Console).
O principal mdulo o Pandora Agents. Este mdulo ser responsvel em realizar a monitorao de fato, checando constantemente os parametros configurados. Os agentes so pequenos scripts, que se comunicam via SSH, FTP, NFS ou outro modo, e em sua maioria so escritos em Perl. Os mdulos servidores: Pandora Data Server e Pandora Network Server, so responsveis pelo acompanhamento dos dados gerados pelo Pandora Agents. O mdulo Pandora Database armazenar todas as informaes gerenciadas pelo Pandora FMS. Estas informaes incluem: dados de conigurao, eventos, auditoria, dados coletados pelos agentes, dentre outras. Os mdulos utilizados para operar o Pandora FMS so: Pandora SNMP Console e Pandora Web Console. Eles permitem gerenciar as informaes e assim realizar o monitoramento do servidor. A figura 6 mostra uma das telas que podem ser vistas no Pandora FMS:
UNIDADE 30
Certificao Linux Objetivo: Aprender sobre a importncia da obteno de Certificado Linux.
1 Introduo Um Certificado um documento que apresenta uma garantia de que o seu dono possui um domnio. Na Informtica, os Certificados garantem que os seus donos possuem habilidades que os distinguem dos demais. Estas habilidades vo desde conhecimentos de Hardware Software. Existem vrios tipos de Certificados:
Certificado Microsoft: abrangem os programas desenvolvidos pela Microsoft, e certificam pessoas que possuem avanados conhecimentos de utilizao; Certificado IBM: este certificado fornecido pessoas com alto grau de conhecimento nas plataformas IBM; Certificado Borland: oferecido aos programadores que alcanaram grandes ndices de aproveitamento nas ferramentas desta empresa; Certificado Red Hat: fornecido pela empresa Red Hat aos usurios do sistema operacional Red Hat Linux, que possuem grandes habilidades na utilizao deste sistema; Certificado Mandriva: na poca da Conectiva Linux, esta oferecia uma certificao totalmente brasileira. Aps a compra pela Mandrake, e renomeao de ambas para Mandriva, a nova certificao passou-se a chamar Certificado Mandriva Conectiva. Esta certificao avalia 3 tipos de profissionais: Administradores de Sistema, Administradores de Rede e Instrutores. Certificado LPI: este certificado concedido pelo Instituto Profissional Linux (Linux Professional Institute, em ingls), como proposta de um modelo de certificao independente, pois no est relacionado a nenhuma empresa de informtica.
Nesta Unidade sero vistas algumas caractersticas da Certificao LPI, como obt-la e como se preparar para a mesma.
2 Certificao Lpi O Instituto Profissional Linux, com sede no Canad iniciou as avaliaes para certificao no Brasil em 2003. Este instituto atualmente um dos mais importantes do mundo, e sua certificao desejada pela maioria dos profissionais.
As provas no tem foco em uma determinada distribuio Linux, sendo suas questes elaboradas de maneira genrica, fazendo com que todos os usurio tenham as mesmas condies de avaliao. Vrias empresas tm apoiado essa iniciativa, uma das mais destacadas a Novell, que distribui o Novell Suse Linux. Os cursos da Novell no so para emisso de certificados prprios, mas so cursos preparatrios para obetno do Certificado LPI. A avaliao para receber o Certificado LPI constituda de trs nveis, e em cada nvel so realizadas duas provas. Os nveis so os seguintes:
Nvel 1: Administrador Linux Jnior; Nvel 2: Administrador Linux Pleno; Nvel 3: Administrador Linux Snior.
2.1 Administrador Linux Jnior As provas para o primeiro nvel cobrem assuntos simples:
Utilizao do Terminal de Comandos para a realizao de tarefas; Realizar tarefas de manuteno simples: o Auxlio usurios; o Administrar usurios em grandes sistemas; o Realizar cpias e restauraes de segurana; o Reiniciar o sistema de maneira segura. Instalar e Configurar uma estao de trabalho contendo: o Ambiente grfico; o Acesso rede; o Acesso internet.
A figura 1 mostra dois exemplos de perguntas feitas para este nvel: 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 questes para a prova de Nvel 1 do LPI
Administrao de um servidor de tamanho mdio ( at 250 usurios); Planejamento, implantao, manuteno e segurana de uma rede mista (MSWindows e Linux), incluindo: o SAMBA; o Gateway (firewall, proxy, correio, intranet); o Servidores (HTTP, FTP). Superviso de assistentes (tcnicos de informtica); Definies de ampliao 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 ? 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 ? A) NameVirtualHost B) VirtualHost C) ServerName D) UseCanonicalName
Answer
Answer
2.3 Administrador Linux Snior O ltimo nvel, Nvel 3, exigir conhecimentos profundos em sistemas Linux, e os tpicos abordados sero:
Administrao de um servidor de grande porte (milhares de usurios); Experincia com instalao e manuteno de sistemas Linux em computadores de diferentes propsitos (Servidor, Estao de Trabalho, Roteador, Multimdia); Experincia na integrao de diversas tecnologias e sistemas; Conhecimentos avanados na administrao de sistemas Linux corporativos (Grandes Empresas); Habilidade em utilizar programas para fazer o planejamento e gerenciamento da rede; Experincia avanada na integrao entre Linux e MS-Windows, utilizando: o LDAP, o SAMBA, o PAM, o Active Directory. Habilidade na criao de scripts bsh e perl e conhecimentos bsicos em Linguagem C. Habilidade no planejamento e implantao de sistemas complexos customizados para solues especficas (empresas com dezenas de servidores e ambientes diferenciados, com integrao de aplicaes administrativas e sistemas legados).
A figura 3 mostra dois exemplos de perguntas realizadas nas provas de nvel 3: Question Answer Question Answer vsftpd is reporting the error message: str_getpwnam. This is most likely because the _____ user account does not exist on the system. FITB What permissions on the ~/.gnupg directory will not cause warnings or errors when running gpg? A) r-x-----B) rwx-----C) rwxrwx--D) rwxrwxrwx Figura 3: Exemplos de questes para a prova de Nvel 3 do LPI