Guia Do Servidor Ubuntu

Embed Size (px)

Citation preview

  • Ubuntu Server Guide

    Ubuntu Documentation Project

  • Ubuntu Server Guidepor Ubuntu Documentation Project Copyright 2004, 2005, 2006 Canonical Ltd. and members of the Ubuntu Documentation Project

    Resumo

    Uma introduo instalao e configurao de aplicaes de servidor no Ubuntu.

    Crditos e licenaA Equipa de Documentao do Ubuntu encarregue de manter este documento :

    Bhuvaneswaran Arumugam

    The Ubuntu Server Guide is also based on the contributions of:

    Robert Stoffers

    Brian Shumate

    Rocco Stanzione

    Este documento disponibilizado sob uma estratgia de licena dupla que inclui a GNU Free Documentation License (GFDL) e a licenaCreative Commons ShareAlike 2.0 (CC-BY-SA).

    livre de modificar, extender e melhorar a fonte da documentao Ubuntu sobre os termos das seguintes licenas. Todo o trabalho quederive desta documentao ter de ser ser disponibilizado sobre os termos de uma destas licenas.

    Esta documentao distribuda com a esperana de que seja til, mas SEM NENHUMA GARANTIA; sem mesmo a garantia implcita deMERCANTIBILIDADE ou ADAPTAO A UM PREPSITO ESPECFICO COMO DESCRITO NAS DISPOSIES LEGAIS.

    Cpias destas licenas esto disponveis na seco de apndices deste livro. Verses online podem ser encontradas nos seguintes URLs:

    GNU Free Documentation License [http://www.gnu.org/copyleft/fdl.html] Attribution-ShareAlike 2.0 [http://creativecommons.org/licenses/by-sa/2.0/]

    DisclaimerEvery effort has been made to ensure that the information compiled in this publication is accurate and correct. However, this does notguarantee complete accuracy. Neither Canonical Ltd., the authors, nor translators shall be held liable for possible errors or the consequencesthereof.

    Some of the software and hardware descriptions cited in this publication may be registered trademarks and may thus fall under copyrightrestrictions and trade protection laws. In no way do the authors make claim to any such names.

    THIS DOCUMENTATION IS PROVIDED BY THE AUTHORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR APARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY DIRECT,INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IFADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

  • iii

    ndiceAbout This Guide .............................................................................................................. vi

    1. Conventions ........................................................................................................... vii2. Contributing and Feedback ..................................................................................... viii

    1. Introduo ...................................................................................................................... 92. Instalao ....................................................................................................................... 10

    1. Preparar a Instalao .............................................................................................. 112. Instalar a partir do CD ........................................................................................... 12

    3. Gesto de Pacotes .......................................................................................................... 131. Introduo .............................................................................................................. 142. Apt-Get ................................................................................................................. 153. Aptitude ................................................................................................................. 174. Configurao .......................................................................................................... 195. Repositrios Extra .................................................................................................. 20

    4. Rede .............................................................................................................................. 211. Configurao de Rede ............................................................................................ 222. TCP/IP .................................................................................................................. 253. Configurao da Firewall ....................................................................................... 294. Servidor OpenSSH ................................................................................................. 325. Servidor FTP ......................................................................................................... 356. Sistema de Ficheiros de Rede - Network File System (NFS) ...................................... 377. Protocolo de Configurao Dinmica da Mquina Dynamic Host Configuration Protocol(DHCP) ..................................................................................................................... 398. Servio de Nomes de Domnios Domain Name Service DNS ..................................... 429. Servidor de Impresso - CUPS ................................................................................ 4410. HTTPD - Servidor Web Apache2 .......................................................................... 4711. PHP5 - Scripting Language ................................................................................... 5712. Squid - Servidor Proxy ......................................................................................... 5913. Sistema de Controlo de Verses ............................................................................ 6114. Bases de Dados .................................................................................................... 6815. Servios de Correio Electrnico ............................................................................ 7116. Time Synchronisation with NTP ............................................................................ 83

    5. Redes Windows ............................................................................................................. 851. Introduo .............................................................................................................. 862. Instalar o SAMBA ................................................................................................. 873. Configurar o SAMBA ............................................................................................ 88

    A. Creative Commons by Attribution-ShareAlike 2.0 ........................................................... 94B. GNU Free Documentation License ................................................................................. 99

    1. PREAMBLE .......................................................................................................... 1002. APPLICABILITY AND DEFINITIONS .................................................................. 1013. VERBATIM COPYING ......................................................................................... 103

  • Ubuntu Server Guide

    iv

    4. COPYING IN QUANTITY .................................................................................... 1045. MODIFICATIONS ................................................................................................. 1056. COMBINING DOCUMENTS ................................................................................. 1077. COLLECTIONS OF DOCUMENTS ....................................................................... 1088. AGGREGATION WITH INDEPENDENT WORKS ................................................ 1099. TRANSLATION .................................................................................................... 11010. TERMINATION .................................................................................................. 11111. FUTURE REVISIONS OF THIS LICENSE .......................................................... 11212. ADDENDUM: How to use this License for your documents ................................... 113

  • vLista de Tabelas2.1. Requisitos Mnimos Recomendados .............................................................................. 114.1. Mtodos de Acesso ...................................................................................................... 62

  • vi

    About This Guide

  • About This Guide

    vii

    1. Conventions

    The following notes will be used throughout the book:

    A note presents interesting, sometimes technical, pieces of information related to thesurrounding discussion.

    A tip offers advice or an easier way of doing something.

    A caution alerts the reader to potential problems and helps avoid them.

    A warning advises the reader of a hazard that may arise in a given scenario.

    Cross-reference conventions for print will be displayed as follows:

    Links to other documents or websites will look like this [http://www.ubuntu.com].

    PDF, HTML, and XHTML versions of this document will use hyperlinks to handlecross-referencing.

    Type conventions will be displayed as follows:

    File names or paths to directories will be shown in monospace.

    Commands that you type at a Terminal command prompt will be shown as:

    command to type

    Options that you click, select, or choose in a user interface will look like this.

    Menu selections, mouse actions, and keyboard short-cuts:

    A sequence of menu selections will be displayed as follows: File Open

    Mouse actions shall assume a right-handed mouse configuration. The terms click anddouble-click refer to using the left mouse button. The term right-click refers to using the rightmouse button. The term middle-click refers to using the middle mouse button, pressing down onthe scroll wheel, or pressing both the left and right buttons simultaneously, based on the design ofyour mouse.

    Keyboard shortcut combinations will be displayed as follows: Ctrl-N .Where the conventions forControl, Shift, and Alternate keys will be Ctrl, Shift, and Alt, respectively, and shall meanthe first key is to be held down while pressing the second key.

  • About This Guide

    viii

    2. Contributing and Feedback

    This book is developed by the Ubuntu Documentation Team[https://wiki.ubuntu.com/DocumentationTeam]. You can contribute to this document by sendingideas or comments to the Ubuntu Documentation Team mailing list. Information about theteam, its mailing lists, projects, etc. can be found on the Ubuntu Documentation Team Website[https://wiki.ubuntu.com/DocumentationTeam].

    If you see a problem with this document, or would like to make a suggestion, you can simply file abug report at the Ubuntu Bugtracker [https://launchpad.net/products/ubuntu-doc/+bugs]. Your help isvital to the success of our documentation!

    Many thanks,

    -Your Ubuntu Documentation Team

  • 9Captulo 1. IntroduoWelcome to the Ubuntu Server Guide!

    The Ubuntu Server Guide contains information on how to install and configure various serverapplications on your Ubuntu system to fit your needs. It is a step-by-step, task-oriented guide forconfiguring and customizing your system. This manual discusses many intermediate topics such asthe following:

    Configurao de Rede

    Configurao do Apache2

    Bases de Dados

    Redes Windows

    Este manual est dividido nas seguinte categorias principais:

    Instalao

    Gesto de Pacotes

    Rede

    Redes Windows

    Este guia assume que tem conhecimentos bsicos do seu sistema Ubuntu. Se precisa de ajudadetalhada a instalar o Ubuntu, recorra ao Guia de Instalao do Ubuntu.

    HTML and PDF versions of the manual are available online at the Ubuntu Documentation website[http://help.ubuntu.com].

    You can buy this guide in book form from our Lulu store [http://www.lulu.com/ubuntu-doc]. Youwill only pay for the price of printing and postage.

  • 10

    Captulo 2. InstalaoThis chapter provides a quick overview of installing Ubuntu 6.10 Server Edition. For more detailedinstructions, please refer to the Ubuntu Installation Guide.

  • Instalao

    11

    1. Preparar a Instalao

    Esta seco explica vrios aspectos a considerar antes de comear a instalao.

    1.1. Requisitos de Sistema

    Ubuntu 6.10 Server Edition supports three (3) major architectures: Intel x86, AMD64, and PowerPC.The table below lists recommended hardware specifications. Depending on your needs, you mightmanage with less than this. However, most users risk being frustrated if they ignore these suggestions.

    Tabela 2.1. Requisitos Mnimos Recomendados

    Tipo de Instalao RAM Espao em Disco

    Servidor 64 megabytes 500 megabytes

    The default profile for the Ubuntu 6.10 Server Edition is shown below. Once again, the size of theinstallation will greatly depend on the services you install during setup. For most administrators, thedefault services are suitable for general server use.Servidor

    Correspondem ao perfil de um pequeno servidor, que fornece uma base comum para todos ostipos de aplicaes servidoras. uma instalao mnima desenhada para ter de incio todos osservios desejados, tais como servidor de ficheiros / impressora, alojamento de pginas web,alojamento de correio electrnico, etc.. Para estes servios pelo menos 500MB de espao emdisco sero suficientes, mas considere a possibilidade de adicionar mais espao, dependendo dosservios que quiser alojar no seu servidor.

    Lembre-se que estes tamanhos no incluem todos os outros materiais que normalmente soencontrados no servidor, tais como: ficheiros dos utilizadores, mensagens de correio electrnico,registos e dados. sempre bom ser generoso ao considerar o espao para os seus ficheiros e dados.

    1.2. Efectuando a Segurana Antes de comear, assegure-se de copiar todos os ficheiros actualmente no seu sistema. Se esta a

    primeira vez que um sistema operativo no nativo instalado no seu computador, muito provvelque necessite reparticionar o seu disco para criar espao para o Ubuntu. Sempre que particiona umdisco, deve estar preparado para a eventualidade de perder tudo o que tem nesse disco, devido aum engano, ou porque alguma coisa corre mal, por exemplo uma falha de energia. Os programasutilizados na instalao so fiveis, e muitos deles tm anos de utilizao, mas tembm realizamaces destrutivas, e um engano pode resultar na perda de dados valiosos.

    Se voc est a criar um sistema com vrias opes de arranque, certifique-se que tem mo osmeios de instalao dos outros sistemas operativos instalados. Especialmente se reparticionar asua unidade de arranque, voc pode descobrir que tem de reinstalar o gestor de arranque do seusistema operativo, ou em muitos casos o sistema operativo em si e todos os ficheiros nas partiesafectadas.

  • Instalao

    12

    2. Instalar a partir do CD

    Insira o CD de instalao na sua unidade de CD-ROM e reinicie o computador. O sistema deinstalao comea imediatamente aps o processo de arranque a partir do CD-ROM. Uma veziniciado aparece um primeiro ecr.

    Neste ponto leia o texto que tem no ecr. Se quiser ler a ajuda fornecida pelo sistema de instalaopressione a tecla F1.

    Para efectuar uma instalao do servidor com os valorespr-definidos, seleccione Instalar para odisco rgido e prima Enter. O processo de instalao iniciar-se-. Siga simplesmente as instrues noecr, e o seu sistema Ubuntu ser instalado.

    Em alternativa, para instalar um servidor LAMP (Linux, Apache, MySQL, PHP/Perl/Python),seleccione Instalar um servidor LAMP , e siga as instrues

  • 13

    Captulo 3. Gesto de PacotesO Ubuntu apresenta um sistema acessvel de gesto de pacotes para instalao, actualizao,configurao e remoo de software. Para alm de disponibilizar o acesso a uma base organizadade mais de 17000 pacotes de software para o seu computador Ubuntu, a gesto de pacotes tambmfacilita a resoluo de dependncias e a verificao de existncia de actualizaes.

    Vrias ferramentas esto disponveis para interagir com o sistema de gesto de pacotes do Ubuntu,desde simples utilitrios de linhas de comandos que podem ser facilmente automatizados poradministradores de sistemas, at um sistema com interface grfico que pode ser facilmente utilizadopor utilizadores novatos no Ubuntu.

  • Gesto de Pacotes

    14

    1. Introduo

    O sistema de gesto de pacotes do Ubuntu derivado do mesmo sistema utilizado pelo DebianGNU/Linux. Os ficheiros dos pacotes contm todos os ficheiros necessrios, meta-dados, e instruespara implementar uma funcionalidade ou aplicao de software em particular no seu computadorUbuntu.

    Os ficheiros de pacotes do Debian tm habitualmente a extenso '.deb', e tipicamente existem emrepositrios que so coleces de pacotes disponveis em vrios suportes, tais como CD-ROM ouonline. Os pacotes esto normalmente num formato binrio pr-compilado, pelo que a instalao rpida e no necessita de software de compilao.

    Muitos pacotes complexos utilizam o conceito de dependncias. Dependncias so pacotes adicionaisnecessrios ao pacote principal para que este possa funcionar correctamente. Por exemplo, o pacote desintetizao de voz Festival depende do pacote festvox-kalpc16k, que o pacote que fornece uma dasvozes utilizada pela aplicao. Para que a aplicao Festival funcione todas as dependncias tm queser instaladas em conjunto com o pacote principal. As ferramentas de gesto de software no Ubuntufazem isto automaticamente.

  • Gesto de Pacotes

    15

    2. Apt-GetO comando apt-get uma ferramenta poderosa em linha de comandos utilizada para trabalhar como APT Advanced Packaging Tool do Ubuntu efectuando funes tais como a instalao de novospacotes de software, actualizao dos pacotes instalados, actualizao da lista de pacotes, e at aactualizao completa do sistema Ubuntu.

    Sendo uma simples ferramenta de linha de comandos, o apt-get tem inmeras vantagens sobreoutras ferramentas de gesto de pacotes disponveis para os administradores de sistemas. Algumasdessa vantagens incluem uma fcil utilizao atravs de simples ligaes via terminal (SSH) e apossibilidade de ser utilizado em programas scripts de administrao, que podem podem ser activadospelo utilitrio de agendamento de tarefas cron.

    Alguns exemplos de utilizaes populares para o utilitrio apt-get: Instalar um Pacote: A instalao de pacotes utilizando a ferramenta apt-get muito simples. Por

    exemplo, para instalar a aplicao de anlise de redes nmap, digite o seguinte seguinte comando:

    sudo apt-get install nmap

    Remover um Pacote: A remoo de um ou mais pacotes tambm um processo simples. Pararemover o pacote nmap instalado no exemplo anterior, digite o seguinte comando:

    sudo apt-get remove nmap

    Mltiplos Pacotes: Pode indicar vrios pacotes para serem instalados ou removidossimultaneamente separando os nomes por espaos.

    Actualizao da Lista de Pacotes: O ndice de pacotes do APT essencialmente uma base dedados dos pacotes diponveis nos repositrios definidos no ficheiro /etc/apt/sources.list. Paraactualizar a lista local de pacotes com as ltimas alteraes efectuadas nos repositrios, escreva oseguinte comando:

    sudo apt-get update

    Upgrade de Pacotes: Upgrade das verses dos pacotes instalados no seu sistema podem estardisponveis nos repositrios (por exemplo actualizaes de segurana). Para efectuar o upgrade doseu sistema actualize em primeiro lugar a lista de pacotes como indicado acima, depois escreva:

    sudo apt-get upgrade

    Se um pacote necessita instalar ou remover novos pacotes dos quais depende quando pretendemosfazer o upgrade, o comando upgrade no o far. Para esta actualizao necessrio utilizar ocomando dist-upgrade.

    Also, you may upgrade your entire Ubuntu system from one revision to another with dist-upgrade.For example, to upgrade from Ubuntu version 5.10 to version 6.10, you would first ensure

  • Gesto de Pacotes

    16

    the version 6.10 repositories replace the existing 5.10 repositories in your computer's/etc/apt/sources.list, then simply issue the apt-get update command as detailed above, andfinally, perform the actual upgrade by typing:

    sudo apt-get dist-upgrade

    Aps um tempo relativamente grande o seu computador estar actualizado para a nova reviso.Tipicamente, alguns passos ps actualizao sero requeridos tal como indicado nas notas deactualizao da reviso para a qual est a efectuar a actualizao.

    As aces do comando apt-get, tais como instalao e remoo de pacotes, esto registadas numficheiro /var/log/dpkg.log .

    Para mais informaes sobre o uso do APT leia o extensivo Manual de utlizador Debian APT[http://www.debian.org/doc/user-manuals#apt-howto] ou escreva:

    apt-get help

  • Gesto de Pacotes

    17

    3. Aptitude

    Aptitude uma interface em modo de texto baseada em menus, para o sistema APT AdvancedPackaging Tool. Muitas das funes comuns de gesto de pacotes, tais como a instalao, remooe actualizao, so efectuadas no Aptitude com comandos de uma nica tecla, habitualmente letrasminsculas.

    Aptitude indicada para um ambiente no grfico de terminal para assegurar um melhorfuncionamento do teclado. Pode iniciar a aplicao Aptitude como um utilizador normal, escrevendona linha de comandos o seguinte comando:

    sudo aptitude

    Quando o Aptitude inicia, ir ver uma barra de menu no topo do ecr e duas seces abaixo da barrade menu. A seco de cima contm as categorias de pacotes, tal como Novos Pacotes e Pacotes NoInstalados. A seco de baixo contm informao relativa aos pacotes e suas categorias.

    Usar o Aptitude para gesto de pacotes relativamente simples, e a interface do utilizador tornasimples tarefas comuns. Seguem-se exemplos de funes populares de gesto de pacotes atravs doAptitude:

    Instalar Pacotes: Para instalar um pacote, localize-o via a categoria Pacotes No Instalados, porexemplo, usando as setas do teclado e a tecla ENTER, e escolha o pacote que deseja instalar. Apsescolher o pacote a instalar, pressione a tecla +, e a entrada do pacote ir tornar-se verde, indicandoque foi marcado para instalao. De seguide pressione g para lhe ser apresentado o sumrio dasaces do pacote. Pressione g novamente, e ser-lhe- pedido que se torne superutilizador paracompletar a instalao. Pressione ENTER o que ir resultar num pedido de palavra-chave. Insiraa palavra-chave do utilizador para se tornar superutilizador. Finalmente, pressione g mais uma veze ser-lhe- dito para fazer o download do pacote. Pressione ENTER na prompt Continuar, e ircomear o download e instalao do pacote.

    Remover Pacotes: Para remover um pacote, localize o mesmo via a categoria Pacotes Instalados,por exemplo usando as setas de direco no teclado e o ENTER, at o pacote desejado estarevidenciado. Depois deste passo, prima a tecla - e a entrada referente a este pacote assumir umacor rosa, indicando que foi marcada para remoo. De seguida prima a tecla g para que lhe sejaapresentado um sumrio das opes disponveis para o pacote. Volte a premir a tecla g e ser-lhe-solicitado que se assuma como o utilizador root para completar a tarefa. Prima ENTER mais umavez obtendo assim uma caixa de dilogo solicitando a insero da password. Insira a passworddo administrador/root. Finalmente prima g mais uma vez e ser-lhe- indicada a aco a decorrer.Pressione ENTER na prompt Continuar e a remoo do pacote ter incio.

    Actualizar o ndice de pacotes: para actualizar o ndice dos pacotes, simplesmente prima a teclau e ser-lhe- solicitado que assuma o papel de root para concluir a tarefa. Prima ENTER e insira apassword do utilizador root. A actualizao ter incio aps carregar uma vez mais em ENTER nacaixa de dilogo seguinte.

  • Gesto de Pacotes

    18

    Actualizar Pacotes: Para actualizar pacotes, proceda actualizao do ndice de pacotes comoexplicado acima, e depois pressione a tecla U para marcar todos os pacotes actualizaveis. Agorapressione g aps o que lhe ser mostrado um sumrio de aces ds pacotes. Pressione g novamente,e ser-lhe- pedido que se torne administrador (root) para completar a instalao. PressioneENTER o que resultar num pedido de palavra passe (Password:). Digite a sua palavra passede administrador. Finalmente, pressione g mais uma vez, e ser-lhe- perguntado se quer fazerdownload do pacote. Pressione ENTER em Continue, e a actualizao de pacotes comear.

    A primeira coluna de informao apresentada na lista de pacotes no painel superior, quando sevisualiza efectivamente a listagem do estado actual dos pacotes, e utiliza a seguinte chave paradescrever o estado do pacote:

    i: Pacote instalado.

    c: Pacote no instalado, mas a respectiva configurao mantm-se no sistema.

    p: Eliminado do sistema

    v: Pacote virtual

    B: Pacote danificado (broken) u: Ficheiros descomprimidos (unpacked), mas o pacote no est ainda configurado C: Parcialmente configurado - Configurao falhada e requer reparao

    H: Parcialmente instalado - Remoo falhada e requer reparao

    Para sair do Aptitude, pressione simplesmente a tecla q e confirme que pretende sair. Muitas outrasfunes esto disponveis no menu do Aptitude pressionando a tecla F10.

  • Gesto de Pacotes

    19

    4. Configurao

    A configurao dos repositrios do Utilitrio Avanado de Pacotes (APT) est armazenada noficheiro de configurao /etc/apt/sources.list. Um exemplo deste ficheiro est referenciado aqui, emconjunto com informao para adicionar ou remover repositrios do ficheiro.

    Aqui [../sample/sources.list] um exemplo simples do contedo tpico do ficheiro/etc/apt/sources.list.

    Pode editar o ficheiro para activar ou desactivar repositrios. Por exemplo, para desactivar o pedidode insero do CD-ROM do Ubuntu sempre que ocorrem operaes referentes a pacotes, coloque umcomentrio na linha apropriada que aparece no incio do ficheiro:

    # No voltar a pedir o CD# deb cdrom:[Ubuntu 6.06 _Dapper Drake_ - Release i386 (20060329.1)]/ dapper main restricted

  • Gesto de Pacotes

    20

    5. Repositrios Extra

    Em adio aos repositrios dos pacotes oficialmente suportados e disponveis para o Ubuntu, existemrepositrios adicionais mantidos pela comunidade que acrescentam milhares de pacotes potenciaispara instalao. Destes, dois so muito populares, os repositrios Universe e Multiverse. Estesrepositrios no so oficialmente suportados pelo Ubuntu, razo pela qual no esto activadospor omisso, mas geralmente fornecem pacotes que podem ser utilizados de forma segura no seucomputador Ubuntu.

    Os pacotes do repositrio Multiverse tm frequentemente licenas que impedem a suadistribuio com um sistema operativo gratuito, e podem ser ilegais no seu pas ou regio.

    Tenha em ateno que os repositrios Universe ou Multiverse no contm pacotessuportados oficialmente. Em particular, podem no existir actualizaes de segurana paraesses pacotes.

    Muitas outras fontes de pacotes esto disponveis, por vezes contendo apenas um pacote, como nocaso de uma fonte fornecida pelo programador de apenas uma aplicao. No entanto deve ter sempreum extremo cuidado e precauo quando utiliza pacotes no padro. Pesquise a origem e os pacotesantes de os instalar, dado que algumas fontes e os respectivos pacotes podem tornar o seu sistemainstvel ou impedi-lo de funcionar.

    Para activar os repositrios Universe e Multiverse, edite o ficheiro /etc/apt/sources.list e retire ocarcter de comentrio "#" das linhas apropriadas.

    # Queremos os repositrios Universe e Multiverse, por favor

    deb http://archive.ubuntu.com/ubuntu dapper universe multiversedeb-src http://archive.ubuntu.com/ubuntu dapper universe multiverse

    5.1. Referncias

    Como Adicionar Repositrios (Ubuntu Wiki) [https://wiki.ubuntu.com/AddingRepositoriesHowto]

  • 21

    Captulo 4. RedeUma rede consiste em dois ou mais dispositivos, tais como computadores, impressoras e equipamentorelacionado ligados por cablagem ou sem fios com a finalidade de partilhar e distribuir informaoentre os dispositivos ligados.

    Esta seco do Guia do Servidor Ubuntu fornece informao geral e especfica sobre redes, incluindouma apresentao de conceitos de redes e uma discusso detalhada dos protocolos de rede eaplicaes de servidor mais populares.

  • Rede

    22

    1. Configurao de Rede

    O Ubuntu vem com alguns utilitrios em ambiente grfico para configurao de dispositivos de rede.Este documento est orientado para administradores de servidores, e focar-se- na gesto da rede apartir da linha de comandos.

    1.1. Ethernet

    A maioria da configurao dos dispositivos ethernet est centralizada num nico ficheiro,/etc/network/interfaces. Se no tiver dispositivos ethernet, apenas a interface loopback aparecerneste ficheiro, de forma semelhante a esta:

    # Este ficheiro descreve os interfaces de rede disponveis no seu sistema# e como os activar. Para mais informao veja o manual de interfaces(5).

    # A interface de rede loopbackauto loiface lo inet loopbackaddress 127.0.0.1netmask 255.0.0.0

    Se tiver apenas um dispositivo ethernet, eth0, que obtm a sua configurao de um servidor DHCP,e que deva ser activado automaticamente no arranque do sistema, so necessrias apenas duas linhasadicionais:

    auto eth0iface eth0 inet dhcp

    A primeira linha especifica que que o dispositivo eth0 deve ser automaticamente activado noarranque. A segunda linha significa que a interface (iface) eth0 deve ter um endereo IPv4(substitua inet por inet6 para um dispositivo IPv6) e que deve obter a sua configuraoautomaticamente a partir de DHCP. Assumindo que a sua rede e o servidor DHCP estocorrectamente configurados, esta mquina no deve necessitar de configurao adicional parafuncionar. O servidor DHCP fornecer a porta de ligao (gateway) por omisso (implementadoatravs do comando route), o endereo IP do dispositivo (implementado atravs do comando ifconfig,e os servidores de DNS utilizados na rede (implementado no ficheiro /etc/resolv.conf).

    Para configurar o seu dispositivo ethernet com um endereo IP fixo e uma configuraopersonalizada, algumas informaes sero necessrias. Suponha que pretende atribuir oendereo IP 192.168.0.2 ao dispositivo eth1, com a mscara de rede habitual 255.255.255.0.A sua porta de ligao por omisso 192.168.0.1 . Dever introduzir o seguinte no ficheiro/etc/network/interfaces:

    iface eth1 inet static address 192.168.0.2 netmask 255.255.255.0 gateway 192.168.0.1

  • Rede

    23

    Neste caso necessita especificar os servidores de DNS manualmente em /etc/resolv.conf, quedever ficar semelhante a isto:

    search mydomain.comnameserver 192.168.0.1nameserver 4.2.2.2

    A directiva search acrescenta mydomain.com s pesquisas de nomes de computadores ao tentarresolver nomes na sua rede. Por exemplo, se o domnio da sua rede for mydomain.com e voctentar efectuar um ping para o computador mybox, a pesquisa de DNS ser modificada paramybox.mydomain.com para resoluo de nomes. As directivas nameserver especificam osservidores de DNS a utilizar para converter os nomes dos computadores para endereos IP. Se vocutilizar os seus prprios servidores de nomes, coloque-os aqui. Caso contrrio, pergunte ao seuFornecedor de Servios de Internet quais os servidores de DNS primrio e secundrio a utilizar, ecoloque-os no /etc/resolv.conf como indicado acima.

    Muitas mais configuraes so possveis, incluindo interfaces de marcao telefnica PPP, redesIPv6, dispositivos VPN, etc.. Consulte man 5 interfaces para saber mais informaes e opessuportadas. Lembre-se que o ficheiro /etc/network/interfaces utilizado pelos scripts ifup/ifdowncomo a configurao de mais alto nvel que pode ser utilizada noutras distribuies de Linux, e que ostradicionais utilitrios de baixo nvel, tais como ifconfig, route, e dhclient ainda esto disponveis paraconfiguraes ad hoc.

    1.2. Gerindo Entradas de DNS

    Esta seco explica como configurar o servidor de nomes a utilizar aquando da converso deendereos IP para nomes de mquinas e vice versa. No explica como configurar um sistema comoservidor de nomes.

    Para gerir entradas de DNS, pode adicionar, editar ou remover nomes de DNS do ficheiro/etc/resolv.conf. Um ficheiro de exemplo sample file [../sample/resolv.conf] dado abaixo:

    search comnameserver 204.11.126.131nameserver 64.125.134.133nameserver 64.125.134.132nameserver 208.185.179.218

    A palavra search indica a cadeia de carcteres a juntar no final de um nome de computadorincompleto. Aqui, mencion-mo-lo como com. Assim, quando executamos o comando: ping ubuntu,ele ser interpretado como ping ubuntu.com.

    A palavra nameserver indica o endereo IP do servidor de nomes. Este ser utilizado para determinarum endereo IP ou um nome de computador. Este ficheiro pode ter entradas para vrios servidores denomes. Os servidores de nomes sero utilizadores pela pesquisa de rede pela mesma ordem.

  • Rede

    24

    Se os nomes dos servidores DNS so obtidos dinamicamente a partir de DHCP ou PPPOE(obtidos a partir do seu ISP), no adicione entradas de "nameserver" neste ficheiro. Elessero actualizados automaticamente.

    As alteraes que fizer no /etc/resolv.conf sero apagadas quando reiniciar o sistema. Sedeseja tornar estas alteraes permanentes deve instalar o pacote resolvconf e actualizar ainformaao de DNS no ficheiro /etc/resolvconf/resolv.conf.d/base fornecido por estepacote.

    1.3. Gerindo Computadores

    Para gerir servidores, pode adicionar, editar, ou remover servidores do ficheiro /etc/hosts. Esteficheiro contm endereos IP e os correspondentes nomes associados. Quando o seu sistema tentatraduzir o nome de uma mquina para um endereo IP ou determinar o nome de uma mquina paraum endereo IP, vai verificar o ficheiro /etc/hosts antes de recorrer aos servidores de nomes. Seo endereo IP est listado no ficheiro /etc/hosts, os servidores de nomes no so utilizados. Estecomportamento pode ser alterado por edio do ficheiro /etc/nsswitch.conf.

    Se a sua rede contm computadores cujos endereos IP no esto listados em DNS, recomendadoque os adicione ao ficheiro /etc/hosts.

  • Rede

    25

    2. TCP/IP

    O Transmission Control Protocol e o Internet Protocol (TCP/IP) um conjunto padro de protocolosdesenvolvido nos finais dos anos 70 pelo Defense Advanced Research Projects Agency (DARPA)como forma de comunicao entre diferentes tipos de computadores e redes de computadores.O TCP/IP a fora impulsionadora da Internet, e como tal este o conjunto de protocolos maispopulares da Terra.

    2.1. Introduo ao TCP/IP

    Os dois componentes do protocolo TCP/IP lidam com diferentes aspectos das redes de computadores.O Internet Protocol, o "IP" do TCP/IP um protocolo independente da conexo que lida apenas como encaminhamento de pacotes na rede utilizando o IP datagram como a unidade bsica de informaona rede. O datagrama IP consiste num cabealho seguido de uma mensagem. O Transmission ControlProtocol o "TCP" do TCP/IP e permite aos computadores da rede estabelecer ligaes que podemser utilizadas para intercmbio de sries de dados. O TCP tambm garante que os dados entre ligaesso entregues e chegam a um computador da rede pela mesma ordem em que foram enviados de outrocomputador da rede.

    2.2. Configurao de TCP/IP

    A configurao do protocolo TCP/IP consiste em vrios elementos que devem ser ajustadoseditando os ficheiros apropriados, ou aplicando solues tais como o servidor Dynamic HostConfiguration Protocol (DHCP) que por sua vez pode ser configurado para fornecer as configuraesde TCP/IP correctas ao cliente, automaticamente. Os dados desta configurao devem ser ajustadoscorrectamente por forma a facilitar o correcto funcionamento na rede do seu sistema Ubuntu.

    Os elementos da configurao comum do TCP/IP e as suas finalidades so as seguintes

    Endereo IP O endereo IP um identificador nico apresentado como quatro nmeros decimaislimitados entre zero (0) e duzentos e cinquenta e cinco (255), separados por pontos (.), cada um dosquatro nmeros reprensenta oito (8) bits do endereo, para um comprimento total do endereo detrinta e dois (32) bits. Este formato chamado dotted quad notation.

    Netmask A Mscara de Sub-rede, (ou simplesmente netmask uma mscara de bits, ou umconjuntos de marcas que separam as partes do endereo IP significativas para a rede, dassignificativas para a sub-rede. Por exemplo, numa rede classe C, a mscara de rede padro 255.255.255.0 o que mascra os trs primeiros bytes do endereo IP e permite que o ltimo byte semantenha disponvel para indicar os computadores na sub-rede.

    Endereo de Rede O Endereo de Rede representa os bytes correspondentes a poro relativa rede de um endereo IP. Por exemplo, a mquina 12.128.1.2 numa rede da Classe A queutilize o 12.0.0.0 como endereo de rede, utiliza o doze (12) para representar o primeiro byte doendereo IP, (parte relativa rede) e zeros (0) em todos os trs bytes restantes para representarpotenciais endereos de mquinas. Mquinas numa rede utilizando os endereos IP privados como

  • Rede

    26

    o 192.168.1.100, muito comuns, utilizariam por sua vez um Endereo de Rede 192.168.1.0, queespecifica os primeiros trs bytes de uma rede da Classe C 192.168.1 e zero (0) para todos ospossveis endereos de mquinas na rede.

    Endereo de Difuso O Endereo de difuso Broadcast Address um endereo que permiteo envio de dados da rede para todos os computadores de uma sub-rede simultaneamente, emvez de especificar um computador em particular. O endereo de difuso padro para redes IP 255.255.255.255, mas este endereo de difuso no pode ser utilizado para enviar uma mensagempara todos os computadores na Internet porque os routers o bloqueiam. Por exemplo, para opopular IP de redes privadas Classe C 192.168.1.0, o endereo de difuso deve ser configuradocomo 192.168.1.255. Mensagens de Difuso Broadcast Messages so habitualmente produzidaspor protocolos de rede tais como o Address Resolution Protocol (ARP) e o Routing InformationProtocol (RIP).

    Porta de Ligao A Porta de Ligao Gateway, o endereo IP pelo qual uma rede em particularou um computador na rede pode ser alcanado. Se um computador da rede deseja comunicarcom outro, e esse outro no est localizado na mesma rede, ento uma porta de ligao tem queser utilizada. Em muitos casos, o Endereo da Porta de Ligao ser o de um router da mesmarede, que por sua vez far a passagem do trfego para outras redes ou computadores, tais comoServidores de Internet. O valor do endereo da Porta de Ligao tem que ser correcto, casocontrrio o seu sistema no poder comunicar com outros computadores fora da mesma rede.

    Endereo dos Servidores de Nomes Os Endereos de Servidores de Nomes NameserverAddresses representam os endereos IP dos sistemas dos Servios de Nomes de Domnios DomainName Service (DNS) que convertem (resolvem) o nome dos computadores em endereos IP.Existem trs nveis de Endereos de Servidores de Nomes que podem ser especificados porordem de precedncia: O Servidor de Nomes Primrio, o Servidor de Nomes Secundrio e oServidor de Nomes Tercirio. Para que o seu sistema tenha capacidade de converter os nomesdos computadores nos respectivos endereos IP, tem que especificar Endereos de Servidoresde Nomes vlidos, para os quais tenha permisses para utilizar na configurao TCP/IP do seusistema. Em muitos casos estes endereos podem ser, e so, fornecidos pelo seu fornecedor deservios de rede, mas existem muitos servidores de nomes de acesso pblico e gratuito, tais comoos servidores de nvel 3 (Verizon) com endereos IP desde 4.2.2.1 at 4.2.2.6 .

    O endereo IP, mscara de rede Netmask, endereo da rede Network Address,endereo de difuso Broadcast Addresse o endereo da porta de ligao GatewayAddress so geralmente especificados atravs de directivas apropriadas no ficheiro/etc/network/interfaces . Os Endereos dos Servidores de Nomes NameserverAddresses so geralmente especificados atravs das directivas nameserver no ficheiro/etc/resolv.conf . Para mais informao, consulte a pgina do manual do sistema parainterfaces ou resolv.conf respectivamente, introduzindo os seguintes comandos nalinha de comandos:

    Aceda pgina do manual de sistema para interfaces com o seguinte comando:

  • Rede

    27

    man interfaces

    Aceda pgina do manual de sistema para resolv.conf com o seguinte comando:

    man resolv.conf

    2.3. Encaminhamento IP

    O encaminhamento de IP IP Routing a forma de especificar e descobrir caminhos numa rede TPC/IPpelos quais os dados da rede podem ser enviados. O encaminhamento utiliza um conjunto de tabelasde encaminhamento routing tables para dirigir o envio de pacotes de dados da rede desde a suaorigem at ao seu destino, frequentemente atravs de muitos ns de rede intermedirios conhecidoscomo routers. O Encaminhamento de IP a principal forma de descobrir caminhos na Internet.Existem duas formas principais de Encaminhamento de IP: Encaminhamento Esttico Static Routinge Encaminhamento Dinmico Dynamic Routing.

    Static routing involves manually adding IP routes to the system's routing table, and this is usuallydone by manipulating the routing table with the route command. Static routing enjoys manyadvantages over dynamic routing, such as simplicity of implementation on smaller networks,predictability (the routing table is always computed in advance, and thus the route is precisely thesame each time it is used), and low overhead on other routers and network links due to the lack ofa dynamic routing protocol. However, static routing does present some disadvantages as well. Forexample, static routing is limited to small networks and does not scale well. Static routing also failscompletely to adapt to network outages and failures along the route due to the fixed nature of theroute.

    O Encaminhamento Dinmico depende de redes grandes, com mltiplas rotas IP possveis desdea origem at ao destino, e utiliza protocolos de encaminhamento especiais, tais como o Protocolode Informao de Rotas Router Information Protocol (RIP), que maneja os ajustes automticos dastabelas de encaminhamento que tornam o encaminhamento dinmico possvel. O encaminhamentodinmico tem vrias vantajens sobre o encaminhamento esttico, tais como uma maior escalabilidadee a capacidade para se adaptar a falhas e quebras ao longo dos caminhos da rede. Adicionalmente,so necessrias menos configuraes manuais das tabelas de encaminhamento, dado que os routersaprendem uns com os outros acerca da sua existncia e dos caminhos (rotas) possveis. Isto tambmelimina a possibilidade de introduzir erros nas tabelas de encaminhamento por erro humano.No entanto o encaminhamento dinmico no perfeito, e apresenta desvantagens como sejam,maior complexidade e sobrecarga adicional nas comunicaes dos routers, o que no beneficia osutilizadores finais, e ainda consome largura de banda.

    2.4. TCP e UDP

    O TCP um protocolo baseado na ligao, e oferece correco de erros e a garantia de entregade dados atravs daquilo que conhecido como controlo de fluxo flow control. O controlo defluxo determina quando necessrio parar o envio de dados, e reenviar dados j enviados devido aproblemas, como por exemplo colises, isto assegura a completa e correcta entrega dos dados. O TCP

  • Rede

    28

    tipicamente utilizado para troca de informaes importantes como sejam as transaces de bases dedados.

    O Protocolo de Datagrama do Utilizador User Datagram Protocol (UDP), por outro lado, umprotocolo independente da ligao connectionless que raramente lida com a transmisso de dadosimportantes, dado que no possui controlo de fluxo ou qualquer outro mtodo que assegure umaentrega fivel dos dados. O UDP habitualmente utilizado em aplicaes como a transmissode udio e vdeo, visto ser consideravelmente mais rpido que o TCP, exactamente por no ter acorreco de erros e o controlo de fluxo, e em que a perda de alguns pacotes no catrastfica.

    2.5. ICMP

    O Protocolo de Controlo de Mensagens da Internet Internet Control Messaging Protocol (ICMP) uma extenso do Internet Protocol (IP) tal como definido no Request For Comments (RFC) #792 esuporta pacotes de rede que contenham informao de controlo, de erros e de mensagens. O ICMP utilizado por aplicaes de rede como o utilitrio ping, que pode determinar a disponibilidade deum computador ou dispositivo de rede. Exemplos de algumas mensagens de erro devolvidas peloICMP que so teis para computadores da rede ou dispositivos como os routers, incluem DestinationUnreachable and Time Exceeded.

    2.6. Servios

    Servios Daemons so aplicaes especiais do sistema que funcionam de forma contnua narectaguarda e que aguardam pedidos para as funes que fornecem vindos das outras aplicaes.Muitos servios so centrados na rede; isto , um grande nmero de servios executados narectaguarda de um sistema Ubuntu pode fornecer funcionalidades relacionadas com a rede. Algunsexemplos desses servios de rede incluem o Hyper Text Transport Protocol Daemon (httpd), quefornece a funcionalidade de um servidor web; o Secure SHell Daemon (sshd), que fornece acessoremoto seguro e a capacidade de transferncia de ficheiros; e o Internet Message Access ProtocolDaemon (imapd), que fornece servios de correio electrnico.

  • Rede

    29

    3. Configurao da Firewall

    O kernel (ncleo) do Linux inclui o sub-sistema Netfilter que utilizado para manipular ou decidir odestino do trfego de encaminhado para ou de passagem pelo servidor. Todas as modernas soluesde firewall utilizam este sistema para filtragem de pacotes.

    3.1. Introduo Firewall

    O sistema de filtragem de pacotes do kernel seria de pouca utilidade sem um interface de utilizadorpara o gerir. Esta a finalidade das tabelas de ip iptables. Quando um pacote chega ao servidor, serencaminhado para o sub-sistema Netfilter, para aceitao, manipulao ou rejeio baseado nas regrasque lhe so fornecidas rea do utilizador atravs das iptables. Assim, as iptables so tudo o que necessrio para gerir a sua firewall se estiver familiarizado com elas, mas existem muitos interfacesdisponveis para simplificar a tarefa.

    3.2. Mascaramento de IP

    A finalidade do Mascaramento de IP IP Masquerading permitir que mquinas com um endereoIP privado e no encaminhvel na sua rede, acedam Internet atravs da mquina que est a fazer omascaramento. O trfego da sua rede privada destinado Internet tem que ser manipulado para queas respostas possam ser encaminhadas de volta mquina que efectuou o pedido. Para fazer isto okernel deve alterar o endereo IP de origem de cada pacote para que a resposta possa ser encaminhadade volta a si, em vez de ser encaminhada para o endereo IP privado que originou o pedido, o que impossvel atravs da Internet. O Linux utiliza o Registo do Caminho de Ligao ConnectionTracking (conntrack) para manter o registo das ligaes e a que mquinas pertencem e reencaminhaos pacotes de acordo com essa informao. O trfego que sai da sua rede privada assim "mascarado"como tendo sido originado na mquina Ubuntu que funcione como porta de ligao. Este processo referido na documentao da Microsoft como Partilha de Ligao Internet.

    Isso pode ser conseguido com uma nica regra de iptables, que pode diferir ligeiramente na suaconfigurao de rede:

    sudo iptables -t nat -A POSTROUTING -s 192.168.0.0/16 -o ppp0 -j MASQUERADE

    O comando anterior assume que o espao do seu endereo privado 192.168.0.0/16 e que o seuinterface com a internet o ppp0. A sintaxe explica-se da seguinte forma:

    -t nat -- a regra deve ser adicionada na tabela de nat

    -A POSTROUTING -- a regra deve ser adicionada (-A) cadeia de POSTROUTING -s 192.168.0.0/16 -- a regra aplica-se a trfego originrio do grupo de endereos indicado

    -o ppp0 -- a regra aplica-se a trfego definido para ser encaminhado atravs do dispositivo de redeespecificado

    -j MASQUERADE -- O trfego coberto por esta regra ser "encaminhado - jump" (-j) para o alvoMASCARADO para ser manipulado conforme acima descrito

  • Rede

    30

    Cada entrada da tabela de filtragem (a tabela por omisso, e onde a maioria ou mesmo toda afiltragem de pacotes ocorre) tem uma poltica de ACCEPT por defeito, mas se est a criar umafirewall em adio a um equipamento de gateway, poder ter alterado esta poltica para DROP ouREJECT, o que em qualquer dos casos exigir que o seu trfego mascarado seja autorizado atravs docomando FORWARD para que a regra funcione:

    sudo iptables -A FORWARD -s 192.168.0.0/16 -o ppp0 -j ACCEPTsudo iptables -A FORWARD -d 192.168.0.0/16 -m state --state ESTABLISHED,RELATED -i ppp0 -j ACCEPT

    Este comando permitir o estabelecimento das ligaes a partir da sua rede local para a internet e quetodo o trfego relacionado regresse mquina que o iniciou.

    3.3. Ferramentas

    Existem muitas ferramentas disponveis que o ajudam a construir uma firewall completa sem terum conhecimento aprofundado do iptables. Para quem prefere uma interface grfica, a aplicaoFirestarter bastante popular e fcil de usar, e a fwbuilder muito poderosa e possui um aspectobastante semelhante a aplicaes comerciais como por exemplo a Checkpoint Firewall-1. Seprefere uma ferramenta de linha de comandos assente em ficheiros de configurao de texto puro, aShorewall uma soluo muito poderosa que o vai ajudar a configurar uma firewall avanada paraqualquer rede. Se a sua rede relativamente simples, ou se no possui uma rede, a ipkungfu deveroferecer-lhe uma firewall pronta a funcionar "out-of-the-box" sem necessidade de configurao, epermitir a criao de uma firewall mais avanada atravs da edio de ficheiros de configuraosimples mas bem documentados. Outra aplicao interessante a fireflier, desenhada para ser umaaplicao de firewall para o desktop. constituda por um servidor (fireflier-server) e uma escolha declientes de interface grfico (GTK ou QT), comportando-se como as populares aplicaes de firewallinteractivas para windows.

    3.4. Registos

    Os registos da Firewall so essenciais para o reconhecimento de ataques, compreender os problemasde funcionamento das regras criadas, ou mesmo detectar actividade no habitual na sua rede. Deverincluir regras de registo na sua firewall para que estes sejam criados, e estas devero ser colocadasantes de qualquer regra de terminao (uma regra com um alvo que decide o destino do pacote comopor exemplo ACCEPT, DROP ou REJECT). Por exemplo:

    sudo iptables -A INPUT -m state --state NEW -p tcp --dport 80 -j LOG --log-prefix "NEW_HTTP_CONN: "

    Um pedido na porta 80 solicitado a partir da mquina local, gerar um registo no dmesg com esteaspecto:

    [4304885.870000] NEW_HTTP_CONN: IN=lo OUT= MAC=00:00:00:00:00:00:00:00:00:00:00:00:08:00 SRC=127.0.0.1 DST=127.0.0.1 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=58288 DF PROTO=TCP SPT=53981 DPT=80 WINDOW=32767 RES=0x00 SYN URGP=0

    Este registo aparecer tambm no /var/log/messages, /var/log/syslog, e /var/log/kern.log.Este comportamento pode ser modificado editando o /etc/syslog.conf apropriadamente ouinstalando e configurando o ulogd e usando-o em vez do LOG. O servio ulogd um servidor que

  • Rede

    31

    escuta ordens de criao de registo originadas no kernel, especificamente de firewalls, e pode criar oregisto em qualquer ficheiro, ou mesmo numa base de dados application>PostgreSQL

  • Rede

    32

    4. Servidor OpenSSH

    4.1. Introduo

    This section of the Ubuntu Server Guide introduces a powerful collection of tools for the remotecontrol of networked computers and transfer of data between networked computers, called OpenSSH.You will also learn about some of the configuration settings possible with the OpenSSH serverapplication and how to change them on your Ubuntu system.

    OpenSSH uma verso livre do protocolo Secure Shell (SSH) e da famlia de ferramentas paracontrolar remotamente um computador ou transferir ficheiros entre computadores. Ferramentastradicionais para executar essas funes, tais como telnet ou rcp, so inseguras e transmitem aspalavras passe dos utilizadores em texto simples quando utilizadas. O OpenSSH fornece um serviopara o servidor e ferramentas cliente para facilitar um controlo remoto seguro, codificado e operaesde transferncia de ficheiros, substituindo efectivamente as ferramentas padro.

    O componente sshd do servidor OpenSSH, aguarda continuamente ligaes de qualquer dasferramentas dos clientes. Quando um pedido de ligao ocorre, o sshd configura a ligao correctadependendo do tipo de ferramenta do cliente que se est a ligar. Por exemplo, se o computadorremoto se est a ligar com a aplicao cliente ssh, o processo do servidor OpenSSH inicia umaligao de controlo remoto aps a autenticao. Se o utilizador remoto usa uma aplicao scp oprocesso do servidor OpenSSH inicia uma cpia segura dos ficheiros entre o servidor e o cliente apsa autenticao. O OpenSSH pode utilizar vrios mtodos de autenticao, incluindo palavras passesimples, chaves pblicas e senhas Kerberos.

    4.2. Instalao

    A instalao das aplicaes cliente e servidor do OpenSSH simples. Para instalar a aplicao clienteOpenSSH no seu sistema Ubuntu, utilize este comando num terminal:

    sudo apt-get install openssh-client

    Para instalar a aplicao servidor OpenSSH, e ficheiros de suporte associados, utilize este comandonum terminal:

    sudo apt-get install openssh-server

    4.3. Configurao

    Pode alterar o comportamento predefinido da aplicao servidor OpenSSH, sshd, editando o ficheiro/etc/ssh/sshd_config. Para informaes sobre as directivas de configurao usadas neste ficheiro,pode consultar a pgina de manual apropriada com o seguinte comando, executado num terminal:

  • Rede

    33

    man sshd_config

    Existem muitas directivas no ficheiro de configurao do sshd controlando coisas como asconfiguraes das comunicaes e os modos de autenticao. De seguida apresentam-se exemplos dedirectivas de configurao que podem ser alteradas ao editar o ficheiro /etc/ssh/ssh_config.

    Antes de editar o ficheiro de configurao, dever fazer uma cpia do original e proteg-locontra escrita por forma a ter sempre as configuraes originais como referncia ou para oreutilizar se necessrio.

    Copie o ficheiro /etc/ssh/sshd_config e proteja-o contra escrita com os seguintescomandos, executados num terminal:

    sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.originalsudo chmod a-w /etc/ssh/sshd_config.original

    A seguir apresentam-se exemplos de directivas que pode alterar:

    Para ajustar o OpenSSH para aceitar pedidos (escutar) o protocolo TCP na porta 2222, em vez daporta por omisso TPC porta 22, altere a directiva Port como se segue:

    Port 2222

    Para fazer com que o sshd permita credenciais de login baseadas em chaves pblicas, adicionesimplesmente a linha seguinte:

    PubkeyAuthentication yes

    no ficheiro /etc/ssh/sshd_config, ou se a linha j estiver presente assegure-se de que no estcomentada.

    Para fazer com que o seu servidor OpenSSH mostre o contedo do ficheiro /etc/issue.net comouma mensagem de pr-login, adicione simplesmente ou modifique a seguinte linha:

    Banner /etc/issue.net

    no ficheiro /etc/ssh/sshd_config.

    Aps a marcao de alteraes no ficheiro /etc/ssh/sshd_config, grave o ficheiro e reinicie aaplicao servidor sshd para tornar efectivas as alteraes utilizando o comando seguinte numterminal:

    sudo /etc/init.d/ssh restart

    Muitas outras directivas de configurao para o sshd esto disponveis para alterar ocomportamento do servidor de forma a satisfazer as suas necessidades pessoais. Tenha emateno que, se o seu nico mtodo de acesso ao servidor for via ssh, e se ocorrer um erro naconfigurao do sshd ao alterar o ficheiro /etc/ssh/sshd_config, poder ficar bloqueado

  • Rede

    34

    do lado de fora aps reiniciar o servidor, ou que a aplicao de servidor sshd se recusea iniciar em virtude de uma directiva de configurao incorrecta. Assim, tenha especialateno quando edita este ficheiro remotamente.

    4.4. Referncias

    Stio web do OpenSSH [http://www.openssh.org/]

    Pgina wiki do OpenSSH avanado [https://wiki.ubuntu.com/AdvancedOpenSSH]

  • Rede

    35

    5. Servidor FTP

    File Transfer Protocol (FTP) is a TCP protocol for uploading and downloading files betweencomputers. FTP works on a client/server model. The server component is called an FTP daemon. Itcontinuously listens for FTP requests from remote clients. When a request is received, it manages thelogin and sets up the connection. For the duration of the session it executes any of commands sent bythe FTP client.

    O acesso a um servidor FTP pode ser conseguido de duas formas:

    Annimo Autenticado

    Em modo annimo, clientes remotos podem aceder ao servidor FTP utilizando a conta de utilizadorpor omisso chamada "anonymous" ou "ftp" e enviando um endereo de correio electrnico comopalavra passe. Em modo autenticado o utilizador necessita de uma conta de utilizador e uma palavrapasse. O acesso do utilizador aos directrios e ficheiros de um servidor FTP depende das permissesdefinidas para a conta de utilizador utilizada para aceder ao servidor. Como regra geral, o gestor FTPesconde o directrio raiz do servidor FTP e muda-o para o directrio "Home". Isto esconde de sessesremotas o resto do sistema de ficheiros.

    5.1. vstpd - Instalao do Servidor FTP

    vsftpd um servio disponvel no Ubuntu. fcil de instalar, configurar e manter. Para instalar ovsftpd pode executar o seguinte comando:

    sudo apt-get install vsftpd

    5.2. vsftpd - Configurao do Servidor FTP

    Pode editar o ficheiro de configurao do vsftpd /etc/vsftpd.conf para alterar os valores padro.Por omisso apenas o acesso FTP annimo permitido. Se pretender desactivar esta opo, devealterar a linha:

    anonymous_enable=YES

    para

    anonymous_enable=NO

    . Por omisso, os utilizadores locais do sistema no podem iniciar sesso no servidor FTP. Para alteraresta configurao deve retirar o comentrio linha:

    #local_enable=YES

  • Rede

    36

    . Por omisso, os utilizadores locais tm permisso para transferir ficheiros do servidor FTP(download). No tm permisso para transferir ficheiros para o servidor FTP (upload). Para alteraresta configurao, deve retirar o comentrio da linha:

    #write_enable=YES

    . Similarmente, por omisso, os utilizadores annimos no tm permisso para transferir ficheirospara o servidor FTP. Para alterar esta configurao, deve retirar o comentrio da linha:

    #anon_upload_enable=YES

    . O ficheiro de configurao consttuido por muitos parmetros. A informao acerca de cadaparmetro est disponvel no prprio ficheiro de configurao. Em alternativa, pode consultar apgina do manual, man 5 vsftpd.conf para detalhes de cada parmetro.

    Uma vez configurado o vsftpd pode-se dar incio ao servidor. O seguinte comando pode ser utilizadopara correr o servidor vsftpd:

    sudo /etc/init.d/vsftpd start

    Note-se que os valores por omisso no ficheiro de configurao so definidos como estopor razes de segurana. Cada uma das alteraes anteriores torna o sistema um poucomenos seguro, pelo que s devem ser feitas se necessrio.

  • Rede

    37

    6. Sistema de Ficheiros de Rede - Network File System (NFS)O NFS permite a um sistema partilhar directrios e ficheiros com outras pessoas atravs de uma rede.Utilizando o NFS, utilizadores e programas podem aceder a ficheiros num sistema remoto quase comose fossem ficheiros locais.

    Alguns dos benefcios mais notveis que o NFS providencia so:

    Estaes de trabalho locais utilizam menos espao em disco porque os dados frequentementeutilizados podem ser guardados num mquina nica e permanecer, mesmo assim, acessveis aoutros atravs da rede.

    No existe necessidade de os utilizadores terem directrios pessoais em cada mquina da rede. Osdirectrios pessoais podem ser configurados no servidor NFS e disponibilizados atravs da rede.

    Dispositivos de armazenamento como as disquetes, unidades de CDROM e unidades de memriaUSB podem ser utilizados por outras mquinas na rede. Isto pode reduzir o nmero de dispositivosdeste tipo dentro da rede.

    6.1. Instalao

    Num terminal insira o seguinte comando para instalar o servidor NFS:

    sudo apt-get install nfs-kernel-server

    6.2. Configurao

    Pode configurar os directrios a ser exportados adicionando-os ao ficheiro /etc/exports. Porexemplo:

    /ubuntu *(ro,sync,no_root_squash)/home *(rw,sync,no_root_squash)

    Pode substituir * com um dos formatos de nome de mquina. Faa a declarao do nome de mquinato especifica quanto possvel para que sistemas no desejados no possam aceder montagem NFS.

    Para iniciar o servidor NFS, pode correr o seguinte comando num terminal:

    sudo /etc/init.d/nfs-kernel-server start

    6.3. Configurao do Cliente NFS

    Utilize o comando mount para montar um directrio NFS partilhado por outra mquina, digitandouma linha de comando similar seguinte num terminal:

    sudo mount example.hostname.com:/ubuntu /local/ubuntu

  • Rede

    38

    O directrio a utilizar como ponto de montagem /local/ubuntu tem que existir. No devemexistir ficheiros ou sub-directrios no directrio /local/ubuntu .

    Uma forma alternativa de montar uma partilha NFS de outra mquina adicionar uma linha aoficheiro /etc/fstab. A linha deve declarar o nome do servidor NFS, o directrio exportado por esseservidor, e o directrio da mquina local onde essa partilha deve ser montada.

    A sintaxe geral da linha no ficheiro /etc/fstab a que se segue:

    nome_de_maquina.exemplo.com:/ubuntu /local/ubuntu nfs rsize=8192,wsize=8192,timeo=14,intr

    6.4. Referncias

    Perguntas frequentes sobre NFS em Linux [http://nfs.sourceforge.net/]

  • Rede

    39

    7. Protocolo de Configurao Dinmica da Mquina DynamicHost Configuration Protocol (DHCP)O Protocolo de Configurao Dinmica da Mquina Dynamic Host Configuration Protocol (DHCP) um servio de rede que permite que as mquinas recebam as configuraes de rede a partir deum servidor, em vez de ser necessrio configurar cada uma individualmente. Os computadoresconfigurados como clientes do DHCP no tm controlo sobre as configuraes que recebem desseservidor, e a configurao transparente para o utilizador do computador.

    As configuraes mais comuns fornecidas por um servidor DHCP a clientes DHCP incluem:

    Endereo-IP e Mscara de Rede DNS WINS

    Contudo, um servidor DHCP pode tambm disponibilizar propriedades como:

    Nome do Anfitrio Nome de Domnio Porta de Ligao por Omisso Default Gateway Servidor horrio Servidor de Impresso

    A vantagem de usar o DHCP a de automatizar alteraes na rede, por exemplo a alterao donome do servidor de domnios (DNS), s necessita de ser realizada no servidor de DHCP, e todas asmquinas da rede sero reconfiguradas automaticamente da prxima vez que os seus clientes DHCPsondarem por informaes. Adicionalmente mais fcil adicionar computadores rede, j que no necessrio verificar a disponibilidade de um endereo IP. Da mesma forma conflitos na atribuio deendereos IP so tambm reduzidos.

    Um servidor de DHCP pode fornecer configuraes usando dois mtodos:

    Endereo MACEste mtodo implica usar o DHCP para identificar endereos nicos de hardware de cadadispositivo de rede ligado na rede, e indicar continuamente uma configurao nica e constantecada vez que um cliente DHCP realiza uma solicitao ao servidor DHCP usando esse dispositivode rede.

    Gama de endereos Address PoolEste mtodo implica definir uma gama (pool) de endereos IP a partir da qual os clientes DHCPso fornecidos, com propriedades e configuraes dinmicas, e numa lgica de servir primeiroo primeiro a chegar (first come first serve). Quando um cliente DHCP abandona a rede por umdeterminado perodo de tempo, a configurao expira, e o endereo devolvido gama dosdisponveis para ser utilizado por outro cliente DHCP.

    O Ubuntu fornecido com o servidor e o cliente DHCP. O servidor o dhcpd (dynamic hostconfiguration protocol daemon). O cliente fornecido com o Ubuntu o dhclient e deve ser instalado

  • Rede

    40

    em todas as mquinas que requeiram uma configurao automtica. Ambos os programas so fceisde instalar e configurar, e so iniciados automticamente no arranque do sistema.

    7.1. Instalao

    Num terminal, digite o seguinte comando para instalar o dhcpd:

    sudo apt-get install dhcpd

    Vai obter a resposta seguinte, que explica o que fazer de seguida:

    Por favor note que se est a instalar o servidor DHCP pela primeiravez necessita configur-lo. Por favor pare (/etc/init.d/dhcp stop)o servio de DHCP, edite o /etc/dhcpd.conf para corresponder ssuas configuraes e necessidades, e reinicie o servio DHCP(/etc/init.d/dhcp start).

    Tambm necessita editar o /etc/default/dhcp para especificar osinterfaces de rede que o dhcpd deve escutar. Por omisso escuta o eth0.

    NOTA: As mensagens do dhcpd so enviadas para o syslog.Procure a por mensagens de disgnstico.

    A iniciar o servidor DHCP: dhcpd falhou ao iniciar - verifique o syslog para diagnsticos.

    7.2. Configurao

    A mensagem de erro com que a instalao termina pode ser um pouco confusa, mas os passosseguintes vo ajud-lo a configurar o servio:

    De forma mais comum, o que pretende fazer designar um endereo IP aleatrio. Isto pode ser feitocom configuraes como as seguintes:

    # Exemplo de /etc/dhcpd.conf# (adicione comentrios aqui) default-lease-time 600;max-lease-time 7200;option subnet-mask 255.255.255.0;option broadcast-address 192.168.1.255;option routers 192.168.1.254;option domain-name-servers 192.168.1.1, 192.168.1.2;option domain-name "mydomain.org";

    subnet 192.168.1.0 netmask 255.255.255.0 {range 192.168.1.10 192.168.1.100;range 192.168.1.150 192.168.1.200;}

  • Rede

    41

    Isto resulta num servidor DHCP atribuindo um endereo IP da gama 192.168.1.10-192.168.1.100ou 192.168.1.150-192.168.1.200 . Esse endereo ser atribudo por um perodo de 600 segundos, seo cliente no especificar outro intervalo de tempo. Caso contrrio, o tempo mximo (permitido) deatribuio ser de 7200 segundos. O servidor tambm "aconselhar" o cliente a utilizar a mscara derede 255.255.255.0 , 192.168.1.255 como endereo de difuso, 192.168.1.254 como router/gateway e192.168.1.1 e 192.168.1.2 clomo os seus servidores de DNS.

    Se necessitar de especificar um servidor WINS para os seus clientes Windows, vai ter de incluir aopo netbios-name-servers, por exemplo:

    option netbios-name-servers 192.168.1.1;

    As configuraes dhcpd foram retiradas do DHCP mini-HOWTO, que pode ser encontrado em here[http://www.tldp.org/HOWTO/DHCP/index.html].

    7.3. Referncias

    Perguntas frequentes sobre o DHCP [http://www.dhcp-handbook.com/dhcp_faq.html]

  • Rede

    42

    8. Servio de Nomes de Domnios Domain Name Service DNS

    Domain Name Service (DNS) is an Internet service that maps IP addresses and fully qualified domainnames (FQDN) to one another. In this way, DNS alleviates the need to remember IP addresses.Computers that run DNS are called name servers. Ubuntu ships with BIND (Berkley Internet NamingDaemon), the most common program used for maintaining a name server on Linux.

    8.1. Instalao

    Na linha de comandos, digite o comando seguinte para instalar o dns:

    sudo apt-get install bind

    8.2. Configurao

    Os ficheiros de configurao DNS so guardados no directrio /etc/bind. O ficheiro de configuraoprincipal o /etc/bind/named.conf. O contedo do ficheiro de configurao por omisso mostrado de seguida:

    // Este o ficheiro principal de configurao do servidor BIND DNS.//// Por favor leia /usr/share/doc/bind/README.Debian para informaes sobre // a estrutura dos ficheiros de configurao do BIND na Debian para o BIND 8.2.1 // e posteriores, *ANTES* de alterar este ficheiro de configurao//

    include "/etc/bind/named.conf.options";

    // reduzir pormenor do registo em assuntos fora do nosso controlologging { category lame-servers { null; }; category cname { null; };};

    // inicializar o servidor com conhecimento dos servidores de raizzone "." { type hint; file "/etc/bind/db.root";};

    // Ser autoritrio para as zonas de encaminhamento e retorno do localhost, e para// zonas de broadcast seguindo a RFC 1912

    zone "localhost" { type master;

    file "/etc/bind/db.local";};

  • Rede

    43

    zone "127.in-addr.arpa" { type master;

    file "/etc/bind/db.127";};

    zone "0.in-addr.arpa" { type master;

    file "/etc/bind/db.0";};

    zone "255.in-addr.arpa" { type master;

    file "/etc/bind/db.255";};

    // Adicionar aqui definies de local include "/etc/bind/named.conf.local";

    A linha include especifica o ficheiro que contm as opes de DNS. A linha directory no ficheiro deopes indica ao DNS onde procurar os ficheiros. Todos os ficheiros que o BIND usa sero relativos aeste directrio.

    The file named /etc/bind/db.root describes the root name servers in the world. The servers changeover time, so the /etc/bind/db.root file must be maintained now and then.

    A seco zone define um servidor mestre, e est colocada num ficheiro mencionado com a etiquetafile. Cada ficheiro de zona contm trs registos de recurso (RRs): um SOA RR, um NS RR e umPTR RR. O SOA o diminutivo de Start of Authority - Incio de Autoridade. O "@" uma anotaoespecial indicando a origem. NS o RR de Servidor de Nome. O PTR o apontador do nome dedomnio. Para iniciar o servidor DNS, digite o seguinte comando num terminal ou linha de comandos:

    sudo /etc/init.d/bind start

    Pode recorrer documentao mencionada na seco de referncias para detalhes.

    8.3. Referncias

    DNS Como Fazer (HOWTO) [http://www.tldp.org/HOWTO/DNS-HOWTO.html]

  • Rede

    44

    9. Servidor de Impresso - CUPSThe primary mechanism for Ubuntu printing and print services is the Common UNIX PrintingSystem (CUPS). This printing system is a freely available, portable printing layer which has becomethe new standard for printing in most Linux distributions.

    O CUPS gere os trabalhos de impresso e filas de espera e oferece capacidade de impresso em redeusando o standard Internet Printing Protocol (IPP), oferecendo simultaneamente suporte para umaenorme diversidade de impressoras, desde agulhas a laser, e muitas outras. O CUPS suporta ainda oPostScript Printer Description (PPD) e a auto deteco de impressoras de rede, e possui um ambientede configurao e administrao muito simples e assente em tecnologia web.

    9.1. Instalao

    To install CUPS on your Ubuntu computer, simply use sudo with the apt-get command and give thepackages to install as the first parameter. A complete CUPS install has many package dependencies,but they may all be specified on the same command line. Enter the following at a terminal prompt toinstall CUPS:

    sudo apt-get install cupsys cupsys-client

    Aps autenticao com a sua palavra passe (com privilgios de administrador), os pacotes devemser descarregados e instalados sem erros. Ao concluir a instalao, o servidor CUPS ser iniciadoautomaticamente. Para resoluo de problemas pode aceder aos erros do servidor CUPS atravsdo ficheiro de registo de eventos /var/log/cups/error_log. Se o registo de erros no apresentarinformao suficiente para ajudar a resolver os problemas que encontrou, o detalhe dos registos doCUPS pode ser aumentado alterando a directiva LogLevel no ficheiro de configurao, mencionadoacima, de "info" para "debug" ou at "debug2" que registar todos os eventos. Se efectuar estaalterao, lembre-se de repor a directiva original ap+os resolver o problema, para impedir que oficheiro de registo atinga um tamanho excessivo.

    9.2. Configurao

    O comportamento do Common UNIX Printing System configurado atravs de directivas includasno ficheiro /etc/cups/cupsd.conf. O ficheiro de configurao do CUPS utiliza a mesma sintaxe queo ficheiro de configurao primrio do servidor HTTP Apache, por isso, os utilizadores familiarizadoscom a edio desse ficheiro devem sentir-se vontade ao editar o ficheiro de configurao do CUPS.Alguns exemplos de configuraes que pode pretender alterar inicialmente so mostrados aqui.

    Antes de editar o ficheiro de configurao, deve fazer uma cpia do ficheiro original eproteg-la contra a escrita, desta forma vai ter as configuraes originais como referncia, epara reutilizar se necessrio.

    Copie o ficheiro /etc/cups/cupsd.conf e proteja-o contra a escrita introduzindo osseguintes comandos num terminal:

  • Rede

    45

    sudo cp /etc/cups/cupsd.conf /etc/cups/cupsd.conf.originalsudo chmod a-w /etc/cups/cupsd.conf.original

    ServerAdmin: Para configurar o endereo de correio electrnico do administrador do servidorCUPS, edite simplesmente o ficheiro /etc/cups/cupsd.conf com o seu editor de textofavorito, e modifique a linha ServerAdmin colocando a o respectivo endereo. Por exemplo,se voc for o administrador do servidor CUPS e o seu endereo de correio electrnico for'[email protected]', deve alterar a linha ServerAdmin para o seguinte:

    ServerAdmin [email protected]

    Para mais exemplos de directivas de configurao do ficheiro de configurao do servidor CUPS,consulte a pgina de manual de sistema associada digitando o seguinte comando num terminal:

    man cupsd.conf

    Sempre que faa alteraes ao ficheiro de configurao /etc/cups/cupsd.conf, precisa dereiniciar o servidor CUPS executando o comando seguinte num terminal:

    sudo /etc/init.d/cupsys restart

    Algumas configuraes extra do servidor CUPS so feitas no ficheiro/etc/cups/cups.d/ports.conf:

    Listen: Por omisso no Ubuntu, o servidor CUPS apenas escuta o interface loopback no endereoIP 127.0.0.1. Para instruir o servidor CUPS para escutar o endereo do endereo IP do interfacede rede real, deve especificar o nome do computador ou o endereo IP, ou ainda opcionalmente,um par Endereo IP/Porta atravs da directiva Listen. Por exemplo, se o seu servidor CUPSestiver instalado numa rede local no endereo IP 192.168.10.250 e quer torn-lo acessvel a outrossistemas nesta sub-rede, deve editar o ficheiro /etc/cups/cups.d/ports.conf e adicionar umadirectiva Listen da seguinte forma:

    Listen 127.0.0.1:631 # escuta no interface loopbackListen /var/run/cups/cups.sock # socket Listen actualListen 192.168.10.250:631 # Escutar o interface de rede local, na Porta, 631 (IPP)

    No exemplo acima, pode comentar ou remover a referncia ao endereo de Loopback (127.0.0.1)se no pretender que o cupsd espere ligaes nessa interface, mas espere ligaes somente nasinterfaces Ethernet da Rede de rea Local (LAN). Para activar a recepo de ligaes em todasas interfaces de rede s quais um determinado nome de mquina est associado, incluindo oLoopback, pode criar uma entrada Listen para o nome de mquina socrates como a seguinte:

    Listen socrates:631 # Vigiar em todas as interfaces para o nome de mquina 'socrates'

  • Rede

    46

    ou omitindo a directiva Listen e usando Port em seu lugar, como em:

    Port 631 # Vigiar a porta 631 em todas as interfaces

    9.3. Referncias

    Pgina Web do CUPS [http://www.cups.org/]

  • Rede

    47

    10. HTTPD - Servidor Web Apache2

    Apache is the most commonly used Web Server on Linux systems. Web Servers are used to serveWeb Pages requested by client computers. Clients typically request and view Web Pages using WebBrowser applications such as Firefox, Opera, or Mozilla.

    Users enter a Uniform Resource Locator (URL) to point to a Web server by means of its FullyQualified Domain Name (FQDN) and a path to the required resource. For example, to view the homepage of the Ubuntu Web site [http://www.ubuntu.com] a user will enter only the FQDN. To requestspecific information about paid support [http://www.ubuntu.com/support/paid], a user will enter theFQDN followed by a path.

    O protocolo mais utilizado para transferir pginas Web o Protocolo de Transferncia de HiperTexto Hyper Text Transfer Protocol (HTTP). Protocolos tais como o Protocolo de Transferncia deHiper Texto sobre Camadas de Ligao Segura Hyper Text Transfer Protocol over Secure SocketsLayer (HTTPS), ou o Protocolo de transferncia de Ficheiros File Transfer Protocol (FTP), que umprotocolo utilizado para enviar e receber ficheiros entre computadores, so tambm suportados.

    Os servidores de Web Apache so frequentemente utilizados conjuntamente com o motor de basede dados MySQL, a linguagem HyperText Preprocessor (PHP), e outras linguagens popularescomo Python e Perl. Esta configurao designada por LAMP (Linux, Apache, MySQL andPerl/Python/PHP) e constitui uma plataforma poderosa e robusta para o desenvolvimento edistribuio de aplicaes baseadas na Web.

    10.1. Instalao

    O servidor web Apache2 est disponvel no Ubuntu Linux. Para instalar o Apache2:

    Num terminal escreva o seguinte comando:

    sudo apt-get install apache2

    10.2. Configurao

    O Apache configurado adicionando directivas em ficheiros de configurao de texto simples.O ficheiro de configurao principal o apache2.conf. Adicionalmente, outros ficheiros deconfigurao podem ser adicionados utilizando a directiva Include, podendo ser utilizados carcteresde escape para adicionar muitos ficheiros de configurao. Qualquer directiva pode ser colocada emqualquer destes ficheiros de configurao. Alteraes nos ficheiros de configurao principais s soreconhecidas pelo Apache2 quando ele for iniciado ou reiniciado.

    O servidor l tambm um ficheiro contendo tipos de documentos mime; este ficheiro definido peladirectiva TypesConfig, e tem o nome mime.types por omisso.

  • Rede

    48

    O ficheiro de configurao do Apache2, por omisso, o /etc/apache2/apache2.conf . Este ficheiropode ser editado para configurar o servidor Apache2. Podem ser configurados o nmero da porta, apasta de documentos de raiz, mdulos, ficheiros de registo, mquinas virtuais, etc..

    10.2.1. Configuraes Bsicas

    Esta seco explica os parmetros de configurao essenciais do servidor Apache2. UtilizeDocumentao Apache2 [http://httpd.apache.org/docs/2.0/] para mais detalhes. O Apache2 acompanhado de uma configurao padro de um servidor virtual, (utilizando a

    directiva VirtualHost), que pode ser modificada, ou utilizada tal como est se tiver apenas umsite, ou ainda utilizada como modelo para criar servidores adicionais se tiver vrios sites. Se for onico, o servidor pr-configurado ser o seu stio padro, ou seja o stio web que os utilizadoresvero se o URL que escreverem no corresponder a nenuma das directivas ServerName. Paraalterar a o servidor virtual padro edite o ficheiro /etc/apache2/sites-available/default. Sepretender configurar um novo servidor virtual ou um novo site copie este ficheiro para o directriocom um nome igual ao que escolher. Por exemplo, sudo cp /etc/apache2/sites-available/default/etc/apache2/sites-available/mynewsite Edite o novo ficheiro para configurar o novo stioutilizando algumas das directivas referidas abaixo.

    A directiva ServerAdmin especifica o endereo de correio electrnico a ser apresentado como sendoo do administrador do servidor. O valor por omisso webmaster@localhost. Este deve ser alteradopara um endereo de correio electrnico voc receba (se voc for o administrador do servidor). Seo seu site web tiver um problema, o Apache2 apresentar uma mensagem de erro contendo esteendereo de correio electrnico para que o erro possa ser reportado. Encontra esta directiva noficheiro de configurao dos seus sites /etc/apache2/sites-available.

    A directiva Listen especifica a porta, e opcionalmente o endereo IP que o Apache2 escutar e ondereceber os pedidos. Se o IP no for especificado, o Apache2 escutar todos os endereos atribudos mquina onde estiver a correr. O valor por omisso para a directiva Listen 80. Alter-la para127.0.0.1:80 provocar que o Apache2 escutar apenas o interface 'loopback' portanto no seracessvel a partir da Internet, para (por exemplo) 81 para alterar a porta que ser escutada, ou deixea ditectiva tal como est para um funcionamento normal. Esta directiva pode ser encontrada ealterada no ficheiro /etc/apache2/ports.conf.

    A directiva ServerName opcional e especifca o FQDN o seu stio deve responder. O servidorvirtual por omisso no tem definida a directiva ServerName, por isso responder a todos ospedidos que no correspondam directiva ServerName de outro servidor virtual. Se apenasadquiriu o nome de domnio ubunturocks.com e pretende aloj-lo no seu servidor Ubuntu,o valor da directiva ServerName no ficheiro de configurao do seu servidor virtual deverser ubunturocks.com . Adicione esta directiva ao ficheiro de servidores virtuais criado antes(/etc/apache2/sites-available/mynewsite).

    Tambm pode alterar o seu site para responder como www.ubunturocks.com, dado quemuitos utilizadores assumem a utilizao do prefixo www. Utilize para isto a directivaServerAlias. Tambm pode utilizar carcteres de substituio na directiva ServerAlias.

  • Rede

    49

    Por exemplo, ServerAlias *.ubunturocks.com far com que o seu stio responda aqualquer pedido de um domnio terminado em .ubunturocks.com .

    A directiva DocumentRoot especifca onde que o Apache deve procurar os ficheirosque constituem o seu stio web. O valor por omisso /var/www . No existe nenhumstio configurado nesta pasta, mas se descomentar a directiva RedirectMatch do ficheiro/etc/apache2/apache2.conf os pedidos sero redireccionados para /var/www/apache2-defaultonde existe um stio pr-definido pelo Apache2. Altere este valor no seu ficheiro de servidoresvirtuais, e lembre-se de criar o directrio se necessrio!

    O directrio /etc/apache2/sites-available not processado pelo Apache2. A ligaosimblica symbolic link /etc/apache2/sites-enabled aponta para stios "disponveis".Utilize o utilitrio a2ensite (Apache2 Enable Site) para criar estas ligaes simblicas,desta forma: sudo a2ensite omeunovositio em que o ficheiro de configurao do seu stio /etc/apache2/sites-available/omeunovositio. De forma semelhante o utilitrioa2dissite deve ser utilizado para desabilitar estes stios.

    10.2.2. Configuraes Pr-definidas

    Esta seco explica as configuraes pr-definidas do servidor Apache2. Por exemplo, se adicionarum servidor virtual, os parmetros que configurar sero utilizados por esse servidor virtual. Caso umadeterminada directiva no esteja configurada para o servidor virtual, sero utilizados os parmetrospr-definidos do Apache2.

    A directiva DirectoryIndex a pgina por omisso apresentada pelo servidor quando um utilizadorsolicitar o contedo de um directrio, colocando uma barra (/) aps o nome do directrio.

    Por exemplo, quando um utilizador solicita a pgina http://www.exemplo.pt/este_directorio/,ele/a obter a pgina DirectoryIndex se esta existir, a listagem dos ficheiros do directrio, geradapelo servidor, se a pgina no existir, ou a pgina Permisso Negada Permission Denied caso asanteriores hipteses no sejam verdadeiras. O servidor tentar encontrar um dos ficheiros existentesna directiva DirectoryIndex e devolver o primeiro que encontrar. Se no encontrar nenhum dessesficheiros e se a directiva Options Indexes apontar para esse directrio, o servidor gerar e devolveruma lista, em formato HTML, das sub-directrios e ficheiros existentes no directrio. O valor poromisso, existente no ficheiro /etc/apache2/apache2.conf " index.html index.cgi index.plindex.php index.xhtml". Assim, se o Apache2 encontrar um ficheiro no directrio pedido quecorresponda a um destes nomes, o primeiro deles ser apresentado.

    A directiva ErrorDocument permite-lhe especificar um ficheiro que o Apache utilizarpara erros especficos. Por exemplo, se um utilizador solicitar um recurso que noexista ocorrer um erro 404, e na configurao pr-definida do Apache2, o ficheiro/usr/share/apache2/error/HTTP_NOT_FOUND.html.var ser apresentado. Este ficheirono est no servidor em DocumentRoot, mas existe uma directiva Alias no ficheiro/etc/apache2/apache2.conf que redirecciona os pedidos para o directrio de erros/usr/share/apache2/error/ . Para ver a lista das directivas de erro ErrorDocument pr-definidas,utilize o comando: grep ErrorDocument /etc/apache2/apache2.conf .

  • Rede

    50

    Por omisso, o servidor escreve as transferncias executadas para o ficheiro de registos/var/log/apache2/access.log . Pode alterar isto para uma configurao baseada stio a stio naficheiro de configurao dos seus stios virtuais com a directiva CustomLog, ou omiti-la paraaceitar o valor pr-definido, indicado no ficheiro /etc/apache2/apache2.conf. Tambm podeindicar o ficheiro no qual sero feitos os registos de erros, atravs da directiva ErrorLog, quepor omisso /var/log/apache2/error.log. Estes registos so mantidos separados dos dastransferncias para ajudar na resoluo de problemas com o seu servidor Apache2. Tambm podeespecificar o nvel de registo LogLevel (o valor pr-definido aviso "warn") e o Formato deRegisto LogFormat (veja o ficheiro /etc/apache2/apache2.conf para o valor pr-definido).

    Algumas opes so indicadas directrio a directrio em vez de serem para o servidor. Option uma destas directivas. Um declarao Directory includa entre etiquetas de formato semelhante aoXML, desta forma:

    ...

    A directiva Options dentro da declarao Directory aceita um ou mais dos seguintes valores (entreoutros), separados por espaos: ExecCGI - Permitir execuo de scripts CGI. Os scripts CGI no so executados se esta opo

    no for escolhida.

    Grande parte dos ficheiros no devem ser executados como scripts CGI. Isso seriamuito perigoso. Scripts CGI devem ser mantidos num directrio separado e forado directrio de raiz DocumentRoot, e apenas esse directrio deve ter a opoExecCGI definida. Isto o predefinido, e a localizao por omisso dos scripts CGI /usr/lib/cgi-bin.

    Includes - Permite incluses no servidor, isto , permite que um ficheiro HTML incluirinclude outros ficheiros. Esta opo no frequente. Consulte Apache2 SSI - Como fazer[http://httpd.apache.org/docs/2.0/howto/ssi.html] para obter mais informao.

    IncludesNOEXEC - Permite a incluso de ficheiros do servidor, mas desabilita os comandos#exec e #include nos programas GCI.

    Indexes - Apresenta uma lista formatada do contedo do directrio, se um dos ficheirosindicados na directiva DirectoryIndex (como por exemplo o index.html) no existir no directriopedido.

    Por razes de segurana, esta opo no deve ser utilizada, e no deve ser certamenteutilizada no Directrio de Raiz. Habilite esta opo cuidadosamente, directrio adirectrio e apenas se tiver a certeza que os utilizadores vejam o contedo completo dodirectrio.

    Multiview - Suporta a apresentao mltipla de contedos "negociados"; estaopo est desabilitada por omisso por motivos de segurana. Consulte ulinkurl="http://httpd.apache.org/docs/2.0/mod/mod_negotiation.html#multiviews">A documentaodo Apache2 sobre esta opo

  • Rede

    51

    SymLinksIfOwnerMatch - Apenas segue as ligaes sinmblicas se o ficheiro ou directrioindicado pela ligao pertencer ao proprietrio da ligao.

    10.2.3. Configurao de Stios Virtuais Virtual Hosts

    A opco Servidores Virtuais permite correr vrios servidores em diferentes endereos IP, diferentesnomes de Stios Web, ou diferentes portas na mesma mquina. Por exemplo, pode ter os stio webhttp://www.exemplo.pt e http://www.outroexemplo.pt no mesmo servidor web utilizando servidoresvirtuais. Esta opo corresponde directiva para o servidor virtual por omisso e paraos servidores virtuais baseados em endereos IP. Corresponde directiva paraservidores virtuais baseados no nome.

    As directivas configuradas para um determina servidor virtual, aplicam-se apenas a ele. Se umadeterminada directiva for configurada para o servidor global, e no for definida para o servidorvirtual, utilizada a configurao pr-definida para essa directiva. Por exemplo, pode definir umendereo de correio electrnico para o servidor principal, e no definir um endereo especfico paracada servidor virtual.

    Ajuste a directiva DocumentRoot para o directrio que contm o documento de raiz do stio web (porexemplo index.html). O valor por omisso de DocumentRoot /var/www.

    The ServerAdmin directive within the VirtualHost stanza is the email address used in the footer oferror pages if you choose to show a footer with an email address on the error pages.

    10.2.4. Configuraes do Servidor

    Esta seco explica como efectuar as configuraes bsicas do servidor.

    LockFile - A directiva LockFile indica qual o caminho para o ficheiro de bloqueios queo servidor utiliza quando compilado seja com USE_FCNTL_SERIALIZED_ACCEPT ouUSE_FLOCK_SERIALIZED_ACCEPT. Deve ser guardado num disco local. Deve ser deixado novalor por omisso a no ser que o dire