Autenticação no Apache2




Vou explicar aqui como você disponibilizar o acesso a uma pasta do Apache(www) exigindo usuario e senha.

  • Primeiramente devemos criar o diretório onde desejamos restringir o acesso caso o mesmo não exista.
mkdir /var/www/teste 
  • 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 
  • Criar os arquivos .htaccess e passwd no diretório onde se deseja restringir o acesso.
touch passwd .htaccess
  • Conteúdo do arquivo .htaccess
AuthName "Nome que aparecerá no título da janela"
AuthType Basic
AuthUserFile /var/www/teste/passwd
require valid-user 
  • 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

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

more passwd
  • Edite o arquivo
"/etc/apache2/sites-available/default"

Colocando as seguintes linhas no final do arquivo antes da tag 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/"
Options Indexes MultiViews FollowSymLinks
AllowOverride AuthConfig
Order deny,allow
Deny from all
Allow from 172.16.0.0/255.0.0.0 ::1/128
  • Reinicie o serviço do Apache para atualizar as configurações.
/etc/init.d/apache2 restart
  • Teste agora suas configurações acessando http://localhost/teste, fornecendo o nome de usuário senha.

Observações: 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

E todo esse tramite desse ser feito pelo usuário root para funcionar.

Eu uso aqui e você, vai deixar de se proteger!

Fonte:Viva o Linux




Terminal Root - Super Usuário da Tela Preta!    Curso de Shell Script    Curso de Vim    Tutorial Git