SlideShare uma empresa Scribd logo
1 de 2
Baixar para ler offline
http://olinux.uol.com.br/artigos/250/print_preview.html




         Segurança básica do Apache
         Por: Elias Barenboim ( 23/12/2000 )




            Instalação

         Quebraremos um pouco a sequência para amenizarmos o clima e pegar algo um pouco mais específico:
         segurança básica do Apache.

         Primeiramente, vamos instalar o apache. Todas distribuições vem com ele, só que vale a pena baixar a última
         versão, por questões de segurança e performace. Na Debian:

         apt-get update; apt-get install apache

         Redhat, vá na página da Redhat, procure pelo último rpm, baixe e:

         rpm -i apache_versao. 1 .rpm

         Para maior entendimento sobre o assunto, como outras opções de instalação ou dúvidas relacionadas a tais,
         leia nosso artigo de introdução sobre isso. Também uma referência interessante, como não podia deixar de
         ser, é o próprio site do Apache .


            Arrumando os detalhes

         Os arquivos básicos de configuração são, access.conf, httpd.conf, srm.conf e encontram-se em /etc/apache/,
         isso na Debian.

         Uma das mais importantes configurações é o usuário/grupo que rodará o servidor. É escolhido em geral o
         usuário chamado www-data, e restringe-se bastante o acesso a este. Ou seja, só quem realmente necessita
         ter acesso a ele o utiliza, além dele só ter acesso as áreas estritamente relacionadas as suas tarefas web.
         Deve-se dar uma checada em User/Group no httpd.conf. Lá deve ser indicado corretamente o usuário/grupo
         (isso vem por padrão). Todos arquivos de configurações são comentados, ou seja, vale a pena você dar uma
         lida.

         Um pouco antes disso, só que importante por questões tanto de velocidade quanto segurança, tem-se
         HostnameLookups. É recomendável que se deixe isto desligado, com a opção off . Ele não tentará resolver
         todos os nomes que requisitam uma página no site, evitando possíveis ataques massivos relativos a esses
         recursos.

         Deve-se preencher corretamente o campo ServerAdmin, em geral com o responsável pela manunteção do
         site/equipe de suporte. Isso deve ser feito pois quando houver algum problema no site, será reportado para
         tal. Ou seja, crie uma alias com essas características ou use um pronto (já falamos sobre a responsabilidade
         em cima de uma só pessoa que deve ser evitado, em artigos passados ).

         A opção ServerRoot indica qual diretório deve-se conter os arquivos de configurações do servidor. Em geral,
         na debian vem como /etc/apache. Detalhe, se estiver usando NFS (ou algum outro tipo de compartilhamento
         de arquivos), dê uma olhada na documentação relativa ao assunto, podem acontecer problemas futuros.

         Agora no srm.conf, temos DocumentRoot, que diz qual a "raiz" de seu servidor. Todas as requisições
         começarão por ele. Links são permitidos, só que deve-se tomar cuidado com eles. Veja as diretivas UserDir,
         DirectoryIndex também, para ir se familiarizando com o servidor.


            Entedendo um pouco mais os diretórios

         Por padrão, o apache vem com indexação automática de diretórios (opção IndexOptions). Isso significa que
         se não houver um arquivo de index, como o index.html por padrão, ele listará o conteúdo do diretório.
         Tirando algumas excessões específicas, isso é uma falha de segurança (não tem utilidade você deixar alguém
         ver conteúdo de um diretório, eu disse com excessões). Tire a permissão de leitura de tal (do diretório): use
         o comando chmod 411. Quando uma tentativa for efetivada, quem tentar acessar receberá a mensagem de




1 de 2                                                                                                          06-12-2009 12:40
http://olinux.uol.com.br/artigos/250/print_preview.html


         "Forbidden".

         Uma diretiva para ocultar arquivos, chama-se IndexIgnore (no src.conf). Você pode utilizar coringas a
         vontade, por exemplo, poderiamos ter: IndexIgnore *jpg *htaccess*, por exemplo.

         A diretiva Alias (access.conf) , permite que se "mapeie" outros diretórios, por exemplo, eu boto Alias /scripts
         /var/scripts/sitex2/, quando eu tentar acessar o /scripts, ele cairá diretamente no diretório que eu determinei.
         Às vezes, servidores grandes, tende-se a espalhar aliases para todos os lados, o que não é bom, pois
         descentraliza-se o local de administração e torna-se cada vez mais inviável o controle de acesso e
         funcionalidades de cada localização.


            Áreas Reservadas

         Uma opção muito utilizada nos servidores são áreas reservadas de usuários. Isso é feito através dos arquivos
         .htaccess (você determina o nome dele, caso queira mudar, em AccessFileName no srm.conf).
         Exemplificando:

         <<html>Directory /var/www/area_administrativa>
         require user zeca
         AuthType Basic
         AuthName "Acesso administrativo"
         AuthUserFile /var/www/senhas
         <<html>/Directory>


         Troque pelos nomes que forem convenientes, zeca é um nome genérico (para por vários nomes separe por
         espaço). Depois vem tipo de autenticação básica, aí AuthName é um label qualquer que aparecerá no box
         quando você tentar acessar tal área, e AuthUserFile é o arquivo de senhas, onde ele irá procurar por ela na
         hora de checar.

         Vale ressaltar que você pode omitir as diretivas "Directory" e botar somente o conteúdo no diretório desejado
         (arquivo .htaccess). Isso existe para que cada usuário possa controlar acesso ao seu home (lembre-se, os
         arquivos de configuração do servidor só o administrador, você, deve ter acesso).

         Para criar senhas, você deve utilizar o programa htpasswd (vem com apache), por exemplo, htpasswd -c
         /var/www/senhas zeca, e digitar a senha do zeca. A opção -c só é usada a primeira vez que for utilizado
         (para criar o arquivo), posteriormente deve ser omitida. Pode-se autenticar via banco de dados, senhas reais
         do sistema, pam (foge ao tema explicar como isso funciona agora, mas procure a documentação).

         Deve-se setar diretórios específicos para execução de scripts, por exemplo, ScriptAlias /cgi-bin/ /usr/lib
         /cgi-bin/, o que já vem por padrão na maioria dos lugares. Vale ressaltar que as permissões dos diretórios de
         scripts devem ser bem testadas, e os próprios scripts também, pois são as maiores fontes de problemas de
         um servidor bem configurado (cuidado também com scripts de terceiros, pior ainda).

         Uma opção que tem se tornado bem popular nos servidores de hoje em dia, com conteúdo dinâmico, é o
         chamado Server Side Include (SSI). Você deve associar sua extensão e dizer o que ela é, por exemplo:

         AddType text/html .shtml AddHandler server-parsed .shtml

         (server-parsed é que o servidor faz o parser). Para limitar essa opção genérica para o servidor, deve-se usar
         as diretivas

         <<html>Location> e <<html>Directory>.


         Bem, é isso, falamos um pouco de configuração do apache e segurança básica, espero que tenham gostado.


                                               Copyright (C) 1999-2000 Linux Solutions




2 de 2                                                                                                             06-12-2009 12:40

Mais conteúdo relacionado

Mais procurados

YUM, APT-GET, DPKG, RPM
YUM, APT-GET, DPKG, RPMYUM, APT-GET, DPKG, RPM
YUM, APT-GET, DPKG, RPMSoftD Abreu
 
Trabalhando na Linha de comando
Trabalhando na  Linha de comandoTrabalhando na  Linha de comando
Trabalhando na Linha de comandoSoftD Abreu
 
Sor filesystem-particionamento
Sor filesystem-particionamentoSor filesystem-particionamento
Sor filesystem-particionamentoCarlos Melo
 
Comandos Básicos Linux
Comandos Básicos LinuxComandos Básicos Linux
Comandos Básicos LinuxSoftD Abreu
 
SENAI - Segurança firewall
SENAI - Segurança   firewall SENAI - Segurança   firewall
SENAI - Segurança firewall Carlos Melo
 
Linux comandos gerais e servidores de rede
Linux   comandos gerais e servidores de redeLinux   comandos gerais e servidores de rede
Linux comandos gerais e servidores de redefernandao777
 
Configurando o ftp - ubuntu server
Configurando o ftp - ubuntu serverConfigurando o ftp - ubuntu server
Configurando o ftp - ubuntu serverAparicio Junior
 
Tutorial servidor debian linux ocs invetory
Tutorial servidor debian linux ocs invetory Tutorial servidor debian linux ocs invetory
Tutorial servidor debian linux ocs invetory gigadrop
 
Linux - Shell e Comandos Básicos
Linux - Shell e Comandos BásicosLinux - Shell e Comandos Básicos
Linux - Shell e Comandos BásicosFrederico Madeira
 
Linux - Permissões, Usuários, Grupos e Quotas
Linux - Permissões, Usuários, Grupos e QuotasLinux - Permissões, Usuários, Grupos e Quotas
Linux - Permissões, Usuários, Grupos e QuotasFrederico Madeira
 

Mais procurados (20)

05 servidor dhcp
05   servidor dhcp05   servidor dhcp
05 servidor dhcp
 
06 - Servidor Apache
06 - Servidor Apache06 - Servidor Apache
06 - Servidor Apache
 
07 - Atividade III
07 - Atividade III07 - Atividade III
07 - Atividade III
 
YUM, APT-GET, DPKG, RPM
YUM, APT-GET, DPKG, RPMYUM, APT-GET, DPKG, RPM
YUM, APT-GET, DPKG, RPM
 
Trabalhando na Linha de comando
Trabalhando na  Linha de comandoTrabalhando na  Linha de comando
Trabalhando na Linha de comando
 
Sor filesystem-particionamento
Sor filesystem-particionamentoSor filesystem-particionamento
Sor filesystem-particionamento
 
Aula 2
Aula 2Aula 2
Aula 2
 
Administração de Redes Linux - II
Administração de Redes Linux - IIAdministração de Redes Linux - II
Administração de Redes Linux - II
 
Comandos Básicos Linux
Comandos Básicos LinuxComandos Básicos Linux
Comandos Básicos Linux
 
Aula 06 comandos linux
Aula 06   comandos linuxAula 06   comandos linux
Aula 06 comandos linux
 
01 notações iniciais
01   notações iniciais01   notações iniciais
01 notações iniciais
 
SENAI - Segurança firewall
SENAI - Segurança   firewall SENAI - Segurança   firewall
SENAI - Segurança firewall
 
Trab linux+sarg
Trab linux+sargTrab linux+sarg
Trab linux+sarg
 
Linux comandos gerais e servidores de rede
Linux   comandos gerais e servidores de redeLinux   comandos gerais e servidores de rede
Linux comandos gerais e servidores de rede
 
Configurando o ftp - ubuntu server
Configurando o ftp - ubuntu serverConfigurando o ftp - ubuntu server
Configurando o ftp - ubuntu server
 
Tutorial servidor debian linux ocs invetory
Tutorial servidor debian linux ocs invetory Tutorial servidor debian linux ocs invetory
Tutorial servidor debian linux ocs invetory
 
4 instalação no Ubuntu
4 instalação no Ubuntu4 instalação no Ubuntu
4 instalação no Ubuntu
 
Linux - Shell e Comandos Básicos
Linux - Shell e Comandos BásicosLinux - Shell e Comandos Básicos
Linux - Shell e Comandos Básicos
 
Zabbix livro para ubuntu
Zabbix livro para ubuntuZabbix livro para ubuntu
Zabbix livro para ubuntu
 
Linux - Permissões, Usuários, Grupos e Quotas
Linux - Permissões, Usuários, Grupos e QuotasLinux - Permissões, Usuários, Grupos e Quotas
Linux - Permissões, Usuários, Grupos e Quotas
 

Semelhante a Segurança básica do Apache

Comandos Linux
Comandos LinuxComandos Linux
Comandos Linuxlol
 
Apresentação zend framework 2 parte 1
Apresentação zend framework 2   parte 1 Apresentação zend framework 2   parte 1
Apresentação zend framework 2 parte 1 Edgar Dantas
 
Unidade 3.3 Estrutura de Diretórios Linux
Unidade 3.3 Estrutura de Diretórios LinuxUnidade 3.3 Estrutura de Diretórios Linux
Unidade 3.3 Estrutura de Diretórios LinuxJuan Carlos Lamarão
 
Projeto jorge,jefff, matheus
Projeto   jorge,jefff, matheusProjeto   jorge,jefff, matheus
Projeto jorge,jefff, matheusEadanalise
 
Block Hosts: Bloqueando Ataques De ForçA Bruta (Brute Force) Em Ftp, Ssh E Ou...
Block Hosts: Bloqueando Ataques De ForçA Bruta (Brute Force) Em Ftp, Ssh E Ou...Block Hosts: Bloqueando Ataques De ForçA Bruta (Brute Force) Em Ftp, Ssh E Ou...
Block Hosts: Bloqueando Ataques De ForçA Bruta (Brute Force) Em Ftp, Ssh E Ou...Felipe Santos
 
Desenvolvendo aplicações Web escaláveis
Desenvolvendo aplicações Web escaláveisDesenvolvendo aplicações Web escaláveis
Desenvolvendo aplicações Web escaláveiselliando dias
 
JBUG Brasil - Desvendando as features do WildFly.
JBUG Brasil - Desvendando as features do WildFly.JBUG Brasil - Desvendando as features do WildFly.
JBUG Brasil - Desvendando as features do WildFly.Eduardo Medeiros
 
Tutorial do ris serviços de instalação remota
Tutorial do ris   serviços de instalação remotaTutorial do ris   serviços de instalação remota
Tutorial do ris serviços de instalação remotafernandao777
 

Semelhante a Segurança básica do Apache (20)

Apache htaccess
Apache htaccessApache htaccess
Apache htaccess
 
Procergs php-seguro
Procergs php-seguroProcergs php-seguro
Procergs php-seguro
 
Comandos Linux
Comandos LinuxComandos Linux
Comandos Linux
 
MigraçãO
MigraçãOMigraçãO
MigraçãO
 
Aula 10 semana
Aula 10 semanaAula 10 semana
Aula 10 semana
 
Comandos do linux
Comandos do linuxComandos do linux
Comandos do linux
 
Introdução ao Ssh
Introdução ao SshIntrodução ao Ssh
Introdução ao Ssh
 
Aula 10 semana
Aula 10 semanaAula 10 semana
Aula 10 semana
 
Apresentação zend framework 2 parte 1
Apresentação zend framework 2   parte 1 Apresentação zend framework 2   parte 1
Apresentação zend framework 2 parte 1
 
Unidade 3.3 Estrutura de Diretórios Linux
Unidade 3.3 Estrutura de Diretórios LinuxUnidade 3.3 Estrutura de Diretórios Linux
Unidade 3.3 Estrutura de Diretórios Linux
 
Diretórios linux
Diretórios linuxDiretórios linux
Diretórios linux
 
Unidade O5
Unidade O5Unidade O5
Unidade O5
 
Projeto jorge,jefff, matheus
Projeto   jorge,jefff, matheusProjeto   jorge,jefff, matheus
Projeto jorge,jefff, matheus
 
Red hat enterprise
Red hat enterpriseRed hat enterprise
Red hat enterprise
 
Samba4+freebsd
Samba4+freebsdSamba4+freebsd
Samba4+freebsd
 
Block Hosts: Bloqueando Ataques De ForçA Bruta (Brute Force) Em Ftp, Ssh E Ou...
Block Hosts: Bloqueando Ataques De ForçA Bruta (Brute Force) Em Ftp, Ssh E Ou...Block Hosts: Bloqueando Ataques De ForçA Bruta (Brute Force) Em Ftp, Ssh E Ou...
Block Hosts: Bloqueando Ataques De ForçA Bruta (Brute Force) Em Ftp, Ssh E Ou...
 
Servidor Proxy Squid
Servidor Proxy SquidServidor Proxy Squid
Servidor Proxy Squid
 
Desenvolvendo aplicações Web escaláveis
Desenvolvendo aplicações Web escaláveisDesenvolvendo aplicações Web escaláveis
Desenvolvendo aplicações Web escaláveis
 
JBUG Brasil - Desvendando as features do WildFly.
JBUG Brasil - Desvendando as features do WildFly.JBUG Brasil - Desvendando as features do WildFly.
JBUG Brasil - Desvendando as features do WildFly.
 
Tutorial do ris serviços de instalação remota
Tutorial do ris   serviços de instalação remotaTutorial do ris   serviços de instalação remota
Tutorial do ris serviços de instalação remota
 

Mais de Felipe Santos

ConheçA O Apache 2.0 Parte 2
ConheçA O Apache 2.0   Parte 2ConheçA O Apache 2.0   Parte 2
ConheçA O Apache 2.0 Parte 2Felipe Santos
 
Quero Slack! (Parte 3)
Quero Slack! (Parte 3)Quero Slack! (Parte 3)
Quero Slack! (Parte 3)Felipe Santos
 
Quero Slack! (Parte 1)
Quero Slack! (Parte 1)Quero Slack! (Parte 1)
Quero Slack! (Parte 1)Felipe Santos
 
Quero Arch! (Parte 2)
Quero Arch! (Parte 2)Quero Arch! (Parte 2)
Quero Arch! (Parte 2)Felipe Santos
 
Quero Arch! (Parte 1)
Quero Arch! (Parte 1)Quero Arch! (Parte 1)
Quero Arch! (Parte 1)Felipe Santos
 
Conceitos BáSicos Sobre SegurançA Parte 6
Conceitos BáSicos Sobre SegurançA   Parte 6Conceitos BáSicos Sobre SegurançA   Parte 6
Conceitos BáSicos Sobre SegurançA Parte 6Felipe Santos
 
Conceitos BáSicos Sobre SegurançA Parte 4
Conceitos BáSicos Sobre SegurançA   Parte 4Conceitos BáSicos Sobre SegurançA   Parte 4
Conceitos BáSicos Sobre SegurançA Parte 4Felipe Santos
 
Conceitos BáSicos Sobre SegurançA Parte 3
Conceitos BáSicos Sobre SegurançA   Parte 3Conceitos BáSicos Sobre SegurançA   Parte 3
Conceitos BáSicos Sobre SegurançA Parte 3Felipe Santos
 
Conceitos BáSicos Sobre SegurançA Parte 2
Conceitos BáSicos Sobre SegurançA   Parte 2Conceitos BáSicos Sobre SegurançA   Parte 2
Conceitos BáSicos Sobre SegurançA Parte 2Felipe Santos
 
Curso De Shell Aula 6
Curso De Shell   Aula 6Curso De Shell   Aula 6
Curso De Shell Aula 6Felipe Santos
 
Curso De Shell Aula 5
Curso De Shell   Aula 5Curso De Shell   Aula 5
Curso De Shell Aula 5Felipe Santos
 
Curso De Shell Aula 3
Curso De Shell   Aula 3Curso De Shell   Aula 3
Curso De Shell Aula 3Felipe Santos
 
Curso De Shell Aula 1
Curso De Shell   Aula 1Curso De Shell   Aula 1
Curso De Shell Aula 1Felipe Santos
 
Compartilhando Internet Via Rádio entre m servidor linux e clientes windows
Compartilhando Internet Via Rádio entre m servidor linux e clientes windowsCompartilhando Internet Via Rádio entre m servidor linux e clientes windows
Compartilhando Internet Via Rádio entre m servidor linux e clientes windowsFelipe Santos
 
Acesso Remoto Para Principiantes
Acesso Remoto Para PrincipiantesAcesso Remoto Para Principiantes
Acesso Remoto Para PrincipiantesFelipe Santos
 
Curso De Algoritmo Aula 10
Curso De Algoritmo   Aula 10Curso De Algoritmo   Aula 10
Curso De Algoritmo Aula 10Felipe Santos
 
Curso De Algoritmo Aula 9
Curso De Algoritmo   Aula 9Curso De Algoritmo   Aula 9
Curso De Algoritmo Aula 9Felipe Santos
 

Mais de Felipe Santos (20)

ConheçA O Apache 2.0 Parte 2
ConheçA O Apache 2.0   Parte 2ConheçA O Apache 2.0   Parte 2
ConheçA O Apache 2.0 Parte 2
 
Quero Slack! (Parte 3)
Quero Slack! (Parte 3)Quero Slack! (Parte 3)
Quero Slack! (Parte 3)
 
Quero Slack! (Parte 1)
Quero Slack! (Parte 1)Quero Slack! (Parte 1)
Quero Slack! (Parte 1)
 
Quero Arch! (Parte 2)
Quero Arch! (Parte 2)Quero Arch! (Parte 2)
Quero Arch! (Parte 2)
 
Quero Arch! (Parte 1)
Quero Arch! (Parte 1)Quero Arch! (Parte 1)
Quero Arch! (Parte 1)
 
Conceitos BáSicos Sobre SegurançA Parte 6
Conceitos BáSicos Sobre SegurançA   Parte 6Conceitos BáSicos Sobre SegurançA   Parte 6
Conceitos BáSicos Sobre SegurançA Parte 6
 
Conceitos BáSicos Sobre SegurançA Parte 4
Conceitos BáSicos Sobre SegurançA   Parte 4Conceitos BáSicos Sobre SegurançA   Parte 4
Conceitos BáSicos Sobre SegurançA Parte 4
 
Conceitos BáSicos Sobre SegurançA Parte 3
Conceitos BáSicos Sobre SegurançA   Parte 3Conceitos BáSicos Sobre SegurançA   Parte 3
Conceitos BáSicos Sobre SegurançA Parte 3
 
Conceitos BáSicos Sobre SegurançA Parte 2
Conceitos BáSicos Sobre SegurançA   Parte 2Conceitos BáSicos Sobre SegurançA   Parte 2
Conceitos BáSicos Sobre SegurançA Parte 2
 
Curso De Shell Aula 6
Curso De Shell   Aula 6Curso De Shell   Aula 6
Curso De Shell Aula 6
 
Curso De Shell Aula 5
Curso De Shell   Aula 5Curso De Shell   Aula 5
Curso De Shell Aula 5
 
Curso De Shell Aula 3
Curso De Shell   Aula 3Curso De Shell   Aula 3
Curso De Shell Aula 3
 
Curso De Shell Aula 1
Curso De Shell   Aula 1Curso De Shell   Aula 1
Curso De Shell Aula 1
 
Sniffers Parte 3
Sniffers   Parte 3Sniffers   Parte 3
Sniffers Parte 3
 
Sniffers Parte 1
Sniffers   Parte 1Sniffers   Parte 1
Sniffers Parte 1
 
Sniffers Parte 2
Sniffers   Parte 2Sniffers   Parte 2
Sniffers Parte 2
 
Compartilhando Internet Via Rádio entre m servidor linux e clientes windows
Compartilhando Internet Via Rádio entre m servidor linux e clientes windowsCompartilhando Internet Via Rádio entre m servidor linux e clientes windows
Compartilhando Internet Via Rádio entre m servidor linux e clientes windows
 
Acesso Remoto Para Principiantes
Acesso Remoto Para PrincipiantesAcesso Remoto Para Principiantes
Acesso Remoto Para Principiantes
 
Curso De Algoritmo Aula 10
Curso De Algoritmo   Aula 10Curso De Algoritmo   Aula 10
Curso De Algoritmo Aula 10
 
Curso De Algoritmo Aula 9
Curso De Algoritmo   Aula 9Curso De Algoritmo   Aula 9
Curso De Algoritmo Aula 9
 

Segurança básica do Apache

  • 1. http://olinux.uol.com.br/artigos/250/print_preview.html Segurança básica do Apache Por: Elias Barenboim ( 23/12/2000 ) Instalação Quebraremos um pouco a sequência para amenizarmos o clima e pegar algo um pouco mais específico: segurança básica do Apache. Primeiramente, vamos instalar o apache. Todas distribuições vem com ele, só que vale a pena baixar a última versão, por questões de segurança e performace. Na Debian: apt-get update; apt-get install apache Redhat, vá na página da Redhat, procure pelo último rpm, baixe e: rpm -i apache_versao. 1 .rpm Para maior entendimento sobre o assunto, como outras opções de instalação ou dúvidas relacionadas a tais, leia nosso artigo de introdução sobre isso. Também uma referência interessante, como não podia deixar de ser, é o próprio site do Apache . Arrumando os detalhes Os arquivos básicos de configuração são, access.conf, httpd.conf, srm.conf e encontram-se em /etc/apache/, isso na Debian. Uma das mais importantes configurações é o usuário/grupo que rodará o servidor. É escolhido em geral o usuário chamado www-data, e restringe-se bastante o acesso a este. Ou seja, só quem realmente necessita ter acesso a ele o utiliza, além dele só ter acesso as áreas estritamente relacionadas as suas tarefas web. Deve-se dar uma checada em User/Group no httpd.conf. Lá deve ser indicado corretamente o usuário/grupo (isso vem por padrão). Todos arquivos de configurações são comentados, ou seja, vale a pena você dar uma lida. Um pouco antes disso, só que importante por questões tanto de velocidade quanto segurança, tem-se HostnameLookups. É recomendável que se deixe isto desligado, com a opção off . Ele não tentará resolver todos os nomes que requisitam uma página no site, evitando possíveis ataques massivos relativos a esses recursos. Deve-se preencher corretamente o campo ServerAdmin, em geral com o responsável pela manunteção do site/equipe de suporte. Isso deve ser feito pois quando houver algum problema no site, será reportado para tal. Ou seja, crie uma alias com essas características ou use um pronto (já falamos sobre a responsabilidade em cima de uma só pessoa que deve ser evitado, em artigos passados ). A opção ServerRoot indica qual diretório deve-se conter os arquivos de configurações do servidor. Em geral, na debian vem como /etc/apache. Detalhe, se estiver usando NFS (ou algum outro tipo de compartilhamento de arquivos), dê uma olhada na documentação relativa ao assunto, podem acontecer problemas futuros. Agora no srm.conf, temos DocumentRoot, que diz qual a "raiz" de seu servidor. Todas as requisições começarão por ele. Links são permitidos, só que deve-se tomar cuidado com eles. Veja as diretivas UserDir, DirectoryIndex também, para ir se familiarizando com o servidor. Entedendo um pouco mais os diretórios Por padrão, o apache vem com indexação automática de diretórios (opção IndexOptions). Isso significa que se não houver um arquivo de index, como o index.html por padrão, ele listará o conteúdo do diretório. Tirando algumas excessões específicas, isso é uma falha de segurança (não tem utilidade você deixar alguém ver conteúdo de um diretório, eu disse com excessões). Tire a permissão de leitura de tal (do diretório): use o comando chmod 411. Quando uma tentativa for efetivada, quem tentar acessar receberá a mensagem de 1 de 2 06-12-2009 12:40
  • 2. http://olinux.uol.com.br/artigos/250/print_preview.html "Forbidden". Uma diretiva para ocultar arquivos, chama-se IndexIgnore (no src.conf). Você pode utilizar coringas a vontade, por exemplo, poderiamos ter: IndexIgnore *jpg *htaccess*, por exemplo. A diretiva Alias (access.conf) , permite que se "mapeie" outros diretórios, por exemplo, eu boto Alias /scripts /var/scripts/sitex2/, quando eu tentar acessar o /scripts, ele cairá diretamente no diretório que eu determinei. Às vezes, servidores grandes, tende-se a espalhar aliases para todos os lados, o que não é bom, pois descentraliza-se o local de administração e torna-se cada vez mais inviável o controle de acesso e funcionalidades de cada localização. Áreas Reservadas Uma opção muito utilizada nos servidores são áreas reservadas de usuários. Isso é feito através dos arquivos .htaccess (você determina o nome dele, caso queira mudar, em AccessFileName no srm.conf). Exemplificando: <<html>Directory /var/www/area_administrativa> require user zeca AuthType Basic AuthName "Acesso administrativo" AuthUserFile /var/www/senhas <<html>/Directory> Troque pelos nomes que forem convenientes, zeca é um nome genérico (para por vários nomes separe por espaço). Depois vem tipo de autenticação básica, aí AuthName é um label qualquer que aparecerá no box quando você tentar acessar tal área, e AuthUserFile é o arquivo de senhas, onde ele irá procurar por ela na hora de checar. Vale ressaltar que você pode omitir as diretivas "Directory" e botar somente o conteúdo no diretório desejado (arquivo .htaccess). Isso existe para que cada usuário possa controlar acesso ao seu home (lembre-se, os arquivos de configuração do servidor só o administrador, você, deve ter acesso). Para criar senhas, você deve utilizar o programa htpasswd (vem com apache), por exemplo, htpasswd -c /var/www/senhas zeca, e digitar a senha do zeca. A opção -c só é usada a primeira vez que for utilizado (para criar o arquivo), posteriormente deve ser omitida. Pode-se autenticar via banco de dados, senhas reais do sistema, pam (foge ao tema explicar como isso funciona agora, mas procure a documentação). Deve-se setar diretórios específicos para execução de scripts, por exemplo, ScriptAlias /cgi-bin/ /usr/lib /cgi-bin/, o que já vem por padrão na maioria dos lugares. Vale ressaltar que as permissões dos diretórios de scripts devem ser bem testadas, e os próprios scripts também, pois são as maiores fontes de problemas de um servidor bem configurado (cuidado também com scripts de terceiros, pior ainda). Uma opção que tem se tornado bem popular nos servidores de hoje em dia, com conteúdo dinâmico, é o chamado Server Side Include (SSI). Você deve associar sua extensão e dizer o que ela é, por exemplo: AddType text/html .shtml AddHandler server-parsed .shtml (server-parsed é que o servidor faz o parser). Para limitar essa opção genérica para o servidor, deve-se usar as diretivas <<html>Location> e <<html>Directory>. Bem, é isso, falamos um pouco de configuração do apache e segurança básica, espero que tenham gostado. Copyright (C) 1999-2000 Linux Solutions 2 de 2 06-12-2009 12:40