[QuickTips] Habilitando auth_basic no Nginx e como gerar senhas do htpasswd

Dica para quem usa o Nginx como web server de aplicações Rails e já apanhou para habilitar HTTP Basic Authentication ou para gerar as senhas criptografadas em MD5.

Para habilitar o auth_basic, basta adicionar dentro do bloco server do arquivo nginx.conf:

location ~ / {
        auth_basic            "Restricted";
        auth_basic_user_file  htpasswd;
        passenger_enabled on;
}

Um detalhe importante: se estiver rodando sua app com Passenger, inclua a linha passenger_enabled on;

Ah, já estava esquecendo das senhas. Elas devem ficar no arquivo htpasswd, no mesmo diretório do arquivo nginx.conf e precisam seguir o formato user:senha em cada linha. Por exemplo:

user:sd5dsjo23PwdSh
admin:mdePW2hgrPddSA

O detalhe é que a senha precisa ser criptografada em MD5. Uma maneira fácil (e que funciona) de fazer isso é executando:

ruby -e "puts 'usuario:' + 'senha'.crypt('md5')" >> htpasswd

Sucesso!

If you enjoyed this post, please consider leaving a comment or subscribing to the RSS feed to have future articles delivered to your feed reader.
Esta entrada foi publicada em quick tips, ruby, web. Adicione o link permanente aos seus favoritos.

Deixe uma resposta

O seu endereço de email não será publicado Campos obrigatórios são marcados *

*

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">