Como proteger arquivos e pastas com senha no ubuntu linux usando htaccess e htpasswd
Seguindo o exemplo do post anterior (http://blog.idealmind.com.br/servidores/como-criar-um-link-simbolico-no-ubuntu-linux/), vou exemplificar como criar uma proteção, ou seja, restringir o acesso de um arquivo através de login e senha, onde o servidor requer autenticação, através de htaccess e htpasswd, para acessar ou fazer o download de um arquivo restrito.
Como no exemplo do post anterior, a idéia é proteger o download do arquivo em http://www.exemplo.com.br/backup/backupdb.sql.gz (que é um link simbólico puxando um arquivo em outro diretório do servidor).
A proteção pode ser feita utilizando o htacces e o htpasswd. Assim:
Entre no diretório onde está o arquivo que você quer restringir:
$ cd /home/exemplo/backup
home/exemplo/backup$ htpasswd -c restrito nomedousuario
New password:
Re-type new password:
Adding password for user nomedousuario
home/exemplo/backup$
onde restrito é o nome do arquivo que arqmazena os usuários e as senhas, e nome do usuário é o nome do usuário que terá acesso.Você vai digitar a senha de acesso para este usuário logo em seguida, e confirmar a senha.
Neste momento, você terá criado um usuário que poderá acessar o arquivo. Porém, o arquivo ainda não está protegido. Então faça o seguinte:
Crie um arquivo .htaccess dentro dessa pasta (/home/exemplo/backup), utilizando, por exemplo,o vim:
home/exemplo/backup$ vim .htaccess
e insira o seguinte conteúdo no arquivo .htaccess:
AuthName “Acesso Restrito”
AuthType Basic
AuthUserFile /home/exemplo/backup/restrito
require valid-user
salve e feche o vim (:x).
Pronto, a partir desse momento, para qualquer usuário que acessar http://www.exemplo.com.br/backup/backupdb.sql.gz, será solicitado um login e uma senha, e o acesso ao download do arquivo somente será liberado se o usuário for autenticado com sucesso.
A analogia é a mesma para restrição de diretórios.
Se você quiser adicionar mais usuários para se autenticar com logins e senhas diferentes, basta dar o comando:
home/exemplo/backup$ htpasswd restrito nomedeoutrousuario
New password:
Re-type new password:
Adding password for user nomedeoutrousuario
Note que não precisa do parâmetro -c, que especifica que o arquivo restrito deve ser criado, pois ele já existe.

Deixe seu comentário