Autenticação no Apache2

Publicado por Leandro Nascimento de Souza em 07/03/2007

[ Hits: 32.224 ]

Blog: http://www.mailgateway.com.br

 


Autenticação no Apache2



Esta dica foi testada no Debian Sarge e explica como utilizar autenticação no Apache2.

01) Primeiramente devemos criar o diretório onde desejamos restringir o acesso caso o mesmo não exista.

# mkdir /var/www/teste

02) Criaremos agora um arquivo somente para testes com o nome "index.html" no diretório "/var/www/teste".

# echo Testando autenticação no Apache > /var/www/teste/index.html

03) Criar os arquivos .htaccess e passwd no diretório onde se deseja restringir o acesso.

# touch passwd .htaccess

04) Conteúdo do arquivo .htaccess

AuthName "Nome que aparecerá no título da janela"
AuthType Basic
AuthUserFile /var/www/teste/passwd # Arquivo que conterá as senhas criptografadas dos usuários.
require valid-user

05) Criação dos usuários que terão permissão para acessar o diretório:

# htpasswd -c passwd usuário

Será pedida a senha do novo usuário e em seguida sua confirmação.

New password:
Re-type new password:
Adding password for user usuário

Ao abrir o arquivo de senhas (passwd), serão vistos os nomes de usuário e senhas criptografadas.

# more passwd
usuário:ZzbJ.YtR6TyyU

06) Edite o arquivo "/etc/apache2/sites-available/default", colocando as seguintes linhas no final do arquivo antes da tag </VirtualHost>, substituindo todas as diretivas conforme suas necessidades, uma observação importante é para a tag AllowOverride, a mesma deve conter "AuthConfig" para que a autenticação seja bem sucedida.

Alias /teste/ "/var/www/teste/"
<Directory "/var/www/teste/">
   Options Indexes MultiViews FollowSymLinks
   AllowOverride AuthConfig
   Order deny,allow
   Deny from all
   Allow from 172.16.0.0/255.0.0.0 ::1/128
</Directory>

07) Reinicie o serviço do Apache para atualizar as configurações.

# /etc/init.d/apache2 restart

08) Teste agora suas configurações acessando http://<seu_servidor>/teste, fornecendo o nome de usuário senha.

Outras dicas deste autor

tcpdump: Monitorando conexões

Monitorando interfaces de rede com ifstat

lsof - Pequeno guia de referência

PHP - Checando sintaxe

Obtendo informações sobre dispositivos

Leitura recomendada

Login automático no SSH com chave criptográfica mais segura

Auditando acesso de usuários no Linux

A segurança maior é o conhecimento...

Criptografando diretórios com eCryptfs

Webinars sobre proteção de perímetro e hardening de servidores GNU/Linux

  

Comentários
[1] Comentário enviado por birarn em 30/08/2007 - 10:19h

E meu velho fiz tudo como vc descreveu ai e nao deu certo
quando eu acesso via navegador

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, webmaster@localhost and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.
Apache/2.2.3 (Debian) Server at 189.11.176.175 Port 8080

[2] Comentário enviado por robertobrandao em 10/09/2007 - 13:09h

Essa dica foi muito boa mais acontece que quando acesso a 1° vez ele pedi senha quando fecho o browser e tento acessar ele, não pedi senha ja mostra direto o conteudo diretorio .

como posso resolver isso ????

[3] Comentário enviado por mvleandro em 01/01/2008 - 21:56h

Olá,

Recentemente publiquei um artigo falando sobre o mesmo assunto, sendo que no apache2 no meu blog.

Dá uma conferida lá!

http://www.prosadigital.com/linux/autenticacao-http-no-apache-2/

Abraços!

[4] Comentário enviado por manchatnt em 02/06/2008 - 17:33h

O meu tava dando Server Internal Error 500.....
é só tirar o comentario do lado de .../teste/passwd que funciona

AuthName "Nome que aparecerá no título da janela"
AuthType Basic
AuthUserFile /var/www/teste/passwd
criptografadas dos usuários.
require valid-user

[]'s

[5] Comentário enviado por scher em 25/01/2009 - 00:15h

Faltou indicar que as linhas abaixo se referem à restrição por IP, não são necessárias à autenticação.

Deny from all
Allow from 172.16.0.0/255.0.0.0 ::1/128



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts