Usando HTTP autenticado no Apache

Este tutorial requer que já se tenha em mãos um webserver Apache configurado e funcionando. Você já teve momentos em que desejou que algum usuário não autorizado deixasse de fuçar determinada pasta em seu servidor web? Eis aqui a solução para seus problemas!

[ Hits: 39.335 ]

Por: Rafael Henrique da Silva Correia em 30/06/2009 | Blog: http://abraseucodigo.com.br


Mão na massa com arquivo de configuração do Apache



1. Abra o arquivo (em um editor de texto) de configuração do SITE que você usará, no meu caso seria:

# vim /etc/apache2/sites-enabled/000-default

2. Agora adicione um contêiner com uma diretiva Directory desta forma (sem adicionar os números das linhas):

1 <Directory /var/www/admin>
2    Deny from all
3    AuthType Basic
4    AuthName "Digite usuário e senha"
5    AuthUserFile /etc/apache2/.htpasswd
6    Require valid-user
7    Satisfy Any
8 </Directory>

Explicando:

Linha 1: Nesta linha abro o contêiner da diretiva Directory e aponto o diretório /var/www/admin (o qual quero modificar permissões de acesso).

Linha 2: Nesta linha nego privilégio a todo mundo para liberar nas linhas debaixo, porém nas linhas debaixo libero com as restrições de acesso igualmente as restrições que usei quando utilizei o arquivo .htaccess (lembrando que se eu adicionar as restrições no arquivo de configuração do site não preciso criar o arquivo .htaccess no diretório, por favor não confunda :D).

Linhas 3, 4, 5, 6, 7: Já explicadas quando falei sobre o arquivo .htaccess.

Linha 8: Fecho o contêiner da diretiva Directory.

3. Agora salvo e saio do arquivo, daí o Apache tem um comando bem interessante que faz carregar o arquivo do site, que é a2ensite (Apache 2 enable site), use-o desta forma:

# a2ensite

Daí aparecerão os arquivos de site disponíveis a ser(em) carregado(s), você digita um dos nomes que aparece e tecla enter, ele carregará o arquivo.

4. Aí para terminar digite:

# /etc/init.d/apache2 reload

Com isso você fará com que o daemon do Apache releia as configurações do arquivo de configuração do site que você acaba de modificar ou se quiser ter mais certeza reinicie o daemon usando:

# /etc/init.d/apache2 stop
# /etc/init.d/apache2 start


ou:

# /etc/init.d/apache2 restart

5. Agora a autenticação já deve estar funcionando corretamente, mas agora baseada em arquivo de configuração do Apache e não mais no .htaccess, faça os testes como no item 6 da explicação do .htaccess.

Página anterior     Próxima página

Páginas do artigo
   1. Um pouco de teoria do protocolo HTTP
   2. O arquivo .htaccess
   3. Mão na massa com .htaccess
   4. Mão na massa com arquivo de configuração do Apache
   5. Aspectos e cuidados com a segurança
Outros artigos deste autor

Compilar kernel em distros baseadas em Debian

Problema resolvido: VMware Server 1.0.7 rodando no Debian Lenny Linux

Configurando cliente na rede wireless com criptografia WPA - Debian

Leitura recomendada

Nmap do início ao fim (parte 1)

Sistema de gerenciamento de logs do Linux

Aquisição Estática de Dados em Computação Forense

Segurança com Iptables

Teste de vulnerabilidades com OpenVAS 3.0

  
Comentários
[1] Comentário enviado por paulorvojr em 01/07/2009 - 15:16h

Muito bem explicado, parabéns.
Ou seja você refez cada passo enquanto escrevia o artigo. É assim que gostamos de ver artigos com pé e cabeça, e não aqueles que parecem papo de bar.

Abraços

[2] Comentário enviado por rafaelhenrique em 02/07/2009 - 18:48h

Muito obrigado pelo elogio paulorvojr, prentendo continuar escrevendo artigos que agradem os leitores!!

Abraço

[3] Comentário enviado por qxada07 em 29/03/2011 - 19:27h

Parabéns pelo artigo...


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts