Vou explicar aqui como você disponibilizar o acesso a uma pasta do Apache(www) exigindo usuario e senha.
mkdir /var/www/teste
echo "Testando autenticação no Apache" > /var/www/teste/index.html
touch passwd .htaccess
AuthName "Nome que aparecerá no título da janela"
AuthType Basic
AuthUserFile /var/www/teste/passwd
require valid-user
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
"/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
/etc/init.d/apache2 restart
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