Como Fazer Autenticação Básica no Apache

Aprenda a como fazer a configuração básica de autenticação no Apache Web Server, baseada em arquivo de senhas simples.

Sistema em uso

Para essa configuração eu estou usando um Debian Lenny 5.0.7 com Apache 2.2.9.

Essa configuração é bem básica e poderá certamente ser usada em qualquer versão do Apache e qualquer distribuição Linux, bastando alguns ajustes nas configurações.

Configuração

Acesse o diretório /var/www

Uso o vi ou outro editor de texto de sua preferência para criar um arquivo chamado .htaccess.

#vi .htaccess

Esse arquivo deve conter o seguinte conteúdo

AuthName "Acesso Restrito"
AuthType Basic
AuthUserFile /etc/apache.pwd
require valid-user

A linha 3 AuthUserFile informa o nome do arquivo que o Apache deve usar para consultar os usuários e suas senhas.

Agora vamos criar o arquivo citado na linha 3, para isso vamos usar o comando htpasswd com a opção -c.

a opção -c só precisa ser usada na primeira vez, ela serve para criar o arquivo e adicionar o primeiro usuário.

# htpasswd -c /etc/apache.pwd usuario1
New password:
Re-type new password:
Adding password for user usuario1

Para criar outros usuários basta omitir a opção -c.

# htpasswd /etc/apache.pwd usuario2
New password:
Re-type new password:
Adding password for user usuario2

Para remover um usuário usamos a opção -D.

# htpasswd -D /etc/apache.pwd
usuario2 Deleting password for user usuario2

Para funcionar corretamente você deve checar a configuração do Apache a opção AllowOverride.

No Debian basta acessar o diretório /etc/apache2/sites-available e editar o arquivo default.

Dentro desse arquivo procure a linha AllowOverride, geralmente ela é configurada dentro de um bloco Directory, veja abaixo.

<Directory /var/www/>
      Options Indexes FollowSymLinks MultiViews
      AllowOverride AuthConfig
      Order allow,deny
      Allow from all
</Directory>

Caso a configuração da linha 3 esteja como none você deve alterar para AuthConfig e reiniciar o Apache.

.htaccess

Vamos a uma breve descrição das opções usadas no nosso arquivo .htaccess.

AuthName: É um pequeno que será exibido para o usuário quando a caixa de dialog for exebida.
AuthType: Esse é o tipo de autenticação em uso, as opções são Basic ou Digest.
AuthUserFile: Como já falado é o arquivo com os usuários e as senhas.
require valid-user: Essa opção define o critério para permitir o acesso, no nosso caso qualquer usuário que tenha uma senha valida terá acesso a página. Podemos no entanto restringir o acesso para apenas alguns usuário, para fazer isso troque  “require valid-user” por “require user usuario1 usuario3 usuarion“.

Rodrigo Luis Silva

Gestor de equipes especialista em sistemas GNU/Linux com vasta experiência em gerenciamento de storage, virtualização, network, desenvolvimento e outros.

More Posts - Website

Follow Me:
Twitter

6 Respostas

  1. Pedro

    Não acompanho muito o site, porém já visitei algumas vezes, e não pude deixar de perceber que o visual mudou. Parabéns, foi uma escolha inteligente,entretanto tardia, porque o antigo visual era um pouco desanimador, este não, ele é atrativo e convidativo. Mesmo sendo um tema WordPress foi uma escolha certa.

      (Citar)

  2. rsrsrs, obrigado Pedro.

    Realmente o antigo visual já estava ultrapassado desde o inicio, rsrsrs.

    Fiquei bastante tempo sem atualizar o site, ele ficou “abandonado”.

    No final do ano passado comecei um estudo sobre o WordPress e fiquei impressionado com a flexibilidade e facilidade no uso dele, foi ai que decidi trocar todo o site antigo pelo WordPress.

    A minha expectativa e adicionar novos artigos com certa frequência e o WordPress é ideal, principalmente pela possibilidade de colaboração.

    Abraços,

    Rodrigo

      (Citar)

  3. Obrigado Rodrigo,

    Resolveu meu problema, com uma ótima solução do .htaccess.
    Muito bom seu artigo, claro e objetivo.

    Abs.

      (Citar)

  4. cara foi super precisa sua explicação.

    funcionou perfeito num ubuntu como servidor.

    creio que era um pouco diferente no apache1.3

    vlw…abraço

      (Citar)

  5. Rafael Lucindo:
    Options Indexes FollowSymLinks MultiViews
    AllowOverride AuthConfig
    Order allow,deny
    allow from all

    Só creio que o allow da linha “allow from all” deve ser com “A” maiusculo.

      (Citar)

  6. Rafael Lucindo: Só creio que o allow da linha “allow from all” deve ser com “A” maiusculo.

    Rafael, boa noite.

    Na documentação do Apache podemos encontrar a seguinte informação

    Directives in the configuration files are case-insensitive, but arguments to directives are often case sensitive.

    Ou seja, as configurações são Case-Insensitive, tanto faz Allow ou allow, é só estetica, inclusive esse bloco eu copiei da configuração original.

    abs,

    Rodrigo

      (Citar)

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Home Apache Como Fazer Autenticação Básica no Apache