Escolar Documentos
Profissional Documentos
Cultura Documentos
ndice
1. Objetivos da Soluo............................................................................................................................................................ 5 2. Caractersticas Tcnicas...................................................................................................................................................... 5 3. Clientes Potenciais ............................................................................................................................................................... 5 4. Cases e Cenrios Tpicos ..................................................................................................................................................... 6 5. Vantagens para o Cliente..................................................................................................................................................... 6 6. Operao e Administrao da Soluo .............................................................................................................................. 6 7. Atualizaes dos Sistemas ................................................................................................................................................... 6 8. Gerenciamento da Soluo.................................................................................................................................................. 7 9. Treinamento.......................................................................................................................................................................... 7 10. Solues Relacionadas ....................................................................................................................................................... 7 11. Metodologia de Implantao............................................................................................................................................. 8 12. Requisitos de Tempo e Recursos Humanos ..................................................................................................................... 8 13. Anlise Tcnica................................................................................................................................................................... 8 14. Implantao ........................................................................................................................................................................ 9 15. Documentao .................................................................................................................................................................. 15 16. Referncias........................................................................................................................................................................ 15
Informaes Gerais
Este documento descreve a soluo Servidor Web Apache, apresentando seus conceitos bsicos, objetivos, clientes potenciais, aspectos comerciais, e aspectos tcnicos de planejamento e/ou implantao. Criado por Marcelo Subtil Maral e Roger Freitas Lovato, e revisado por Andr Ruiz, com base na documentao do Apache (software usado nesta soluo). Este documento pode ser encontrado online no site da Diretoria de Servios (http://dir-serv.conectiva) Comentrios sobre este documento devem ser enviados para a equipe de Suporte RCS (mailto:sup-rcs@conectiva.com.br). Este documento de uso interno da Conectiva S.A. (http://www.conectiva.com.br) e da Rede Conectiva de Servios (RCS). A equipe de Suporte RCS responsvel pelas atualizaes deste documento. As sugestes e crticas devem ser enviadas diretamente para a equipe de Suporte RCS (mailto:sup-rcs@conectiva.com.br). Agradecimentos a todos do suporte corporativo da Conectiva Linux por ter ajudado em testes e revisado este documento.
1. Objetivos da Soluo
Esta soluo trata da congurao e implantao de um servidor web fazendo uso do software Apache, que segundo a empresa inglesa de consultoria Internet Netcraft (http://www.netcraft.com), em dezembro de 2000, 59,69% dos sites na Internet utilizam esse servidor.
2. Caractersticas Tcnicas
O pacote do Apache distribuido pela Conectiva Linux j vem congurado para funcionar da forma mais padro possvel. Para funes mais avanadas o administrador dever alterar os arquivos de conguraes manualmente. Dentre as vrias caractersticas do servidor Web Apache, pode-se destacar:
Fcil implantao e administrao; Permite criar sites usando domnios virtuais; Permite criar de sites dinmicos usando CGIs ou linguagens como PHP; Permite criar sites protegidos por senhas; Alto nvel de customizao e conabilidade; Implementao para pginas wap;
3. Clientes Potenciais
Clientes potenciais para essa soluo so os provedores de acesso e servios Internet, pois para essas empresas uma homepage fundamental, onde tambm poder ser possvel comercializar hospedagem de homepage para seus clientes. Essa soluo tambm pode ser aplicada em empresas onde a comunicao interna de informaes e imagens necessria. A empresa poder adotar essa soluo elaborando uma homepage para sua intranet com quadro de avisos, informaes teis, listas de remais, funcionrios, enm, informaes importantes e de interesse de todos da empresa, e muito mais, cando apenas a cargo da imaginao do cliente.
8. Gerenciamento da Soluo
O Apache gerenciado atravs dos logs de acessos e erros localizados no diretrio /var/log/httpd. Existem diversas ferramentas para analisarem esses logs, e dentre elas, pode-se destacar o webalizer, que uma ferramenta acessada via web e presente no Conectiva Linux, que exibe informaes sobre acessos, relatrios e estatsticas com grcos de todos os acessos ao servidor web Apache. A inteno a de que esta ferramenta faa parte desta soluo, como um mdulo adicional de gerenciamento, que o cliente poder fazer opo. Este mdulo ainda no est documentado.
9. Treinamento
O treinamento ideal para quem for lidar com esta soluo denominado "Treinamento Prossional - Servios de rede e segurana", e est disponvel nos treinamentos padres fornecidos pelos Centros de Treinamento credenciados.
RCS-SOL-1.1. Instalao do Servidor Conectiva Linux Base do sistema operacional. A soluo de WebServer contempla apenas as modicaes no sistema para se adequar a esta terefa. necessrio que o sistema j esteja instalado, e esta soluo cuida disso.
RCS-SOL-1.4. Implantao do Servio de Resoluo de Nomes DNS Esta soluo bsica em quase todos os projetos e clientes. Ela no necessria diretamente pelo WebServer, mas a rede de computadores onde o WebServer estar. Ele relevante aqui, porque nele que sero cadastrados os nomes de hosts virtuais.
RCS-SOL-4.2. Planejamento e Implantao de Servios com Alta Disponibilidade A soluo de WebServer pode ter sua disponibilidade padro melhorada com o auxlio da soluo de Alta Disponibilidade 7
da Conectiva. Veja no captulo especco as particularidades desta soluo em relao alta disponibilidade.
RCS-SOL-2.2. Planejamento e Implantao de Firewall Pode ser utilizada em conjunto para se ter controle dos acessos ao WebServer, assim como prevenir acessos no autorizados a hosts virtuais que estejam rodando em reas protegidas.
ter o Conectiva Linux instalado, congurado e funcionando corretamente; um tcnico junior (do cliente) para administrar a soluo, que acompanhe a instalao para se familiarizar com o ambiente;
Alocar um ou mais endereos de IP para o computador usado para servidor web; Preparar o DNS para responder por www.dominio ou outro nome que se queira dar ao servidor publicamente;
14. Implantao
A implantao da soluo descrita nesse documento requer a ltima verso do Apache distribuida com o Conectiva Linux 6.0, localizado no CD 1, podendo tambm servir de base para verses anteriores. Quando esse documento foi escrito, a verso distribuda pela Conectiva, era a verso 1.3.14-6cl. Para saber se existe alguma verso mais nova, visite a pgina de atualizaes (atualizacoes.conectiva.com.br) da Conectiva.
apache-doc-1.3.14-6cl.i386.rpm
Levando em conta que o CD 1 do Conectiva Linux 6.0 esteja montado no diretrio /mnt/cdrom, acesse o diretrio dos arquivos RPMs da distribuio e execute o comando RPM para instalar os pacotes necessrios. # cd /mnt/cdrom/conectiva/RPMS # rpm -Uvh apache-*.rpm Preparing... ########################################### 1:apache ########################################### 2:apache-devel ########################################### 3:apache-doc ###########################################
Os pacotes apache-devel e apache-doc so opcionais para esta soluo, mas se for necessrio a instalao de novos mdulos recomendvel que o pacote apache-devel seja instalado. Congurao do servidor Web Apache. Aps a instalao do Apache, criado o diretrio /etc/httpd que contm um subdiretrio conf e dois links simblicos logs e modules. O link simblico log aponta para o diretrio /var/log/httpd, que o diretrio padro onde so gravados os logs do Apache. O link simblico modules aponta para o diretrio /usr/lib/apache, onde esto localizados todos os mdulos padro do Apache. No diretrio conf cam os arquivos de congurao do Apache, so eles: access.conf , srm.conf e httpd.conf . Por motivos de organizao o contedo dos arquivos access.conf e srm.conf foi colocado no arquivo httpd.conf, pois dessa forma, toda a congurao do Apache ca em apenas um lugar. Essa diviso de arquivos de congurao uma herana do NCSA httpd, no qual o Apache foi baseado. Em todas alteraes no arquivo de congurao do Apache, ser necessrio reiniciar o servio. service httpd restart Dentre vrias conguraes diponveis no arquivo /etc/httpd/conf/httpd.conf , iremos destacar apenas as principais: ServerAdmin. Email do administrador ServerAdmin webmaster@dominio.com.br ServerName. Nome do servidor web. Esse nome deve estar contindo no DNS. ServerName www.dominio.com.br DocumentRoot. Diretrio onde os arquivos HTML estaro localizados.
10
DocumentRoot "/home/httpd/html" DirectoryIndex. Especica o nome principal do arquivo do diretrio e que ser aberto automaticamente quando algum acessar a pgina. DirectoryIndex index.html index.htm index.cgi index.shtml index.php index.php3 index.wml default.html default.htm StartServers. Quantidade inicial de servidores que ser aberto ao iniciar o Apache. StartServers 10 MaxClients. Quantidade mxima de servidores que pode ser aberto, ou seja, limita o nmero de clientes conectados simultaneamente. MaxClients 150 Port. Dene a porta em que o servidor apache estar ouvindo. Port 80 UserDir. Subdiretrio no home do usurio que ser usado para hospedar pginas. O acesso a esse diretrio ser http://www.domininio.com.br/~user. UserDir public_html <Directory /*/public_html> AllowOverride FileInfo AuthConfig Limit Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec <Limit GET POST OPTIONS PROPFIND> Order allow,deny Allow from all </Limit> <Limit PUT DELETE PATCH PROPPATCH MKCOL COPY MOVE LOCK UNLOCK> Order deny,allow Deny from all </Limit> </Directory>
11
HostnameLookups. Loga os acessos como nomes dos hosts (mais lento) ou como endereos IPs. HostnameLookups Off Domnios virtuais. Hospedagem de pginas em Domnios Virtuais um recurso muito til disponvel no Apache, atravs dele, pode-se usar vrios domnios com homepages em apenas um servidor web. A congurao de domnios virtuais esto delimitadas nos tags de congurao <VirtualHost> ... </VirtualHost>, mas primeiramente, ser necessrio adicionar um IP atribudo para os domnios virtuais atravs do parmetro NameVirtualHost. NameVirtualHost 192.168.0.100 <VirtualHost 192.168.0.100> ServerName www.dominio1.com.br ServerAdmin fulano@dominio1.com.br DocumentRoot /vhost/dominio1.com.br/html ScriptAlias /cgi-bin/ /vhost/dominio1.com.br/cgi-bin/ CustomLog /vhost/dominio1.com.br/logs/access_log common ErrorLog /vhost/dominio1.com.br/logs/error_log </VirtualHost> <VirtualHost 192.168.0.100> ServerName www.dominio2.com.br ServerAdmin fulano@dominio2.com.br DocumentRoot /vhost/dominio2.com.br/html ScriptAlias /cgi-bin/ /vhost/dominio2.com.br/cgi-bin/ CustomLog /vhost/dominio2.com.br/logs/access_log common ErrorLog /vhost/dominio2.com.br/logs/error_log </VirtualHost>
No exemplo acima, ser usado apenas um IP para todos os domnios virtuais. Caso queira utilizar um IP para cada domnio (no muito usado), deve-se comentar a entrada NameVirtualHost e colocar o IP desejado para cada VirtualHost congurado.
Ser necessrio criar os seguintes diretrios: /vhost/<nome_do_dominio>/html /vhost/<nome_do_dominio>/cgi-bin /vhost/<nome_do_dominio>/logs Onde <nome_do_dominio> corresponde aos domnios virtuais congurados. 12
Quando o IP denido em NameVirtualHost for o mesmo do domnio principal, o mesmo tambm dever ser denido como VirtualHost.
Domnios Virtuais em Massa. Caso o objetivo do servidor Web seja lidar com uma grande quantidade de domnios virtuais, o exemplo acima alm de ser muito trabalhoso, o arquivo de congurao car muito grande acarretando na perda de velocidade no carregamento do servidor. Para que isso no acontea, pode-se utilizar o recurso de Domnios Virtuais em Massa, porm esse recurso no permite que cada domnio tenha seu log separado no permitindo que analizadores de estatsticas, como por exemplo o webalizer, faa estatsticas de cada domnio. Por outro lado, a facilidade da administrao resume apenas na congurao do DNS. Inicialmente necessrio carregar e habilitar o mdulo mod_vhost_alias editando o arquivo de congurao do Apache (/etc/httpd/conf/httpd.conf ) adicionando respectivamente aps o ltimo parmetro LoadModule e AddModule: LoadModule vhost_alias_module modules/mod_vhost_alias.so AddModule mod_vhost_alias.c Modique o parmetro UseCanonicalName para Off . UseCanonicalName Off Para uma melhor organizao, ser necessrio criar um log comum para os domnios virtuais, adicionando a linha abaixo: LogFormat "%V %h %l %u %t \"%r\" %s %b" vcommon Dena um IP para ser usado pelos domnios virtuais: NameVirtualHost 192.168.0.100 Adcione a congurao para domnios virtuais em massa: <VirtualHost 192.168.0.100> VirtualDocumentRoot /vdomains/%0/html VirtualScriptAlias /vdomains/%0/cgi-bin CustomLog logs/access_log.vhost vcommon </VirtualHost> Reinicie o Apache: service httpd restart Para cada novo domnio virtual, ser necessrio criar entradas no DNS, bem como suas conguraes particulares (consulte o documento 1.4. Implantao do Servio de Resoluo de Nomes DNS) e criar os seguintes diretrios para cada domnio: /vdomains
13
/vdomains/www.dominio.com.br /vdomains/www.dominio.com.br/html /vdomains/www.dominio.com.br/cgi-bin No h necessidade de reiniciar o Apache para cada domnio virtual criado. Congurao do servidor Web Apache atravs do Linuxconf. Para congurar o Apache atravs do linuxconf, primeiramente ser necessrio vericar se o mdulo de congurao est ativado. Para isso, acesse a opo: Arquivos de controle e sistemas > Congurar mdulos do Linuxconf Selecione a opo "Congurao do servidor HTTP apache" Volte para o menu principal e acesse a opo: Ambiente de rede > Apache - servidor www Neste momento, ser apresentado o seguinte menu:
Onde:
Padres: permite alterar conguraes bsicas, como por exemplo o email do administrador, o endereo IP do domnio, etc; Domnios Virtuais: permite cadastrar, alterar e excluir domnios virtuais; Especicao de subdiretrios: permite acrescentar, atualizar e modicar vrias regras de diretrio individualmente, como por exemplo controlar acessos; Especicaes dos arquivos: permite acrescentar, atualizar e modicar vrias regras de arquivos individualmente, como por exemplo controlar acessos; Arqvs. coincidem com especicaes: parecido com a opo Especicaes dos arquivos, porm permite expresses regulares; Mdulos: permite acrescentar ou retirar mdulos que sero carregados pelo Apache; Performance: permite congurar quantos servidores sero inciados, quantos clientes podem conectar ao servidor Web e outros; Congurao do mod_ssl: permite fazer congurao do mdulo SSL (pginas seguras);
Todas as opes da congurao do servidor Web Apache no Linuxconf esto claras e fcil de entender. Em caso de dvidas, basta consultar o help disponvel.
14
15. Documentao
Para documentao, necessrio apenas recolher os seguintes dados:
IP alocado para o servidor Web; nome do dominio principal; nome de todos os domnios virtuais cadastrados; anotar quais usurios possuem homepage em seu home. Isso pode ser til para controlar espao em disco;
16. Referncias
Este texto foi baseado na documentao e howto do Apache disponveis nos seguintes endereos: http://www.apache.org/docs-1.2/index.html http://www.apache.org/docs/misc/howto.html
15
16