A configuração de autenticação de senha no servidor web Nginx em um sistema Ubuntu pode ser realizada utilizando o módulo “ngx_http_auth_basic_module”. Este módulo permite que você restrinja o acesso a determinados recursos do seu site ou aplicativo da web por meio de uma autenticação baseada em senha.
Aqui está um guia passo a passo sobre como configurar a autenticação de senha com o Nginx em um servidor Ubuntu:
-
Instale o Nginx:
Certifique-se de ter o Nginx instalado em seu servidor Ubuntu. Se não estiver instalado, você pode fazê-lo utilizando o gerenciador de pacotes apt:sqlsudo apt update sudo apt install nginx -
Crie um arquivo de senha:
Primeiro, você precisa criar um arquivo que conterá os pares de nome de usuário e senha. Você pode fazer isso usando a ferramentahtpasswd, que geralmente está disponível no pacoteapache2-utils:sqlsudo apt update sudo apt install apache2-utilsDepois de instalar as
apache2-utils, você pode criar o arquivo de senha com o seguinte comando, substituindopelo nome do arquivo que você deseja usar (por exemplo,senhas):phpsudo htpasswd -c /etc/nginx/<nome_do_arquivo> <nome_de_usuário>Você será solicitado a inserir e confirmar a senha para o usuário especificado. Se você estiver adicionando mais usuários posteriormente, não use a opção
-c, pois ela é usada apenas para criar um novo arquivo. Adicione usuários adicionais sem a opção-c:phpsudo htpasswd /etc/nginx/<nome_do_arquivo> <nome_de_usuário>Certifique-se de substituir
epelos valores desejados. -
Configure o Nginx para usar a autenticação básica:
Agora que você tem o arquivo de senha pronto, pode configurar o Nginx para usar a autenticação básica. Abra o arquivo de configuração do seu site em um editor de texto. Por exemplo, se você estiver configurando o site padrão do Nginx, o arquivo de configuração pode ser encontrado em/etc/nginx/sites-available/default.Adicione as seguintes linhas dentro do bloco de servidor para o local que deseja proteger:
bashlocation /diretorio_protegido { auth_basic "Área restrita"; auth_basic_user_file /etc/nginx/; # Outras diretivas de configuração, se houver... } Substitua
/diretorio_protegidopelo caminho do diretório que você deseja proteger epelo nome do arquivo de senha que você criou anteriormente. -
Teste a configuração e recarregue o Nginx:
Antes de aplicar as alterações, é importante testar a configuração do arquivo de configuração do Nginx para garantir que não haja erros de sintaxe. Você pode fazer isso executando o seguinte comando:sudo nginx -tSe o teste for bem-sucedido, você verá uma mensagem indicando que a configuração do arquivo está OK. Em seguida, recarregue o Nginx para aplicar as alterações:
sudo systemctl reload nginx -
Acesse o diretório protegido:
Agora, ao acessar o diretório protegido em seu navegador, você será solicitado a inserir um nome de usuário e senha. Insira as credenciais que você configurou no arquivo de senha e você deverá ter acesso ao conteúdo do diretório protegido. -
Gerenciar usuários e senhas:
Se você precisar adicionar ou remover usuários ou alterar suas senhas, você pode fazer isso usando o comandohtpasswdnovamente:Para adicionar um novo usuário:
phpsudo htpasswd /etc/nginx/<nome_do_arquivo> <novo_nome_de_usuário>Para remover um usuário:
phpsudo htpasswd -D /etc/nginx/<nome_do_arquivo> <nome_de_usuário_a_ser_removido>Para alterar a senha de um usuário:
phpsudo htpasswd /etc/nginx/<nome_do_arquivo> <nome_de_usuário>Certifique-se de recarregar o Nginx após fazer qualquer alteração no arquivo de senha para que as alterações entrem em vigor.
Este guia fornece os passos necessários para configurar a autenticação de senha com o Nginx em um servidor Ubuntu. Lembre-se de que a autenticação de senha básica não é criptografada, portanto, é recomendável usá-la apenas em conjunto com HTTPS para garantir a segurança das informações de login.
“Mais Informações”

Claro, vou expandir ainda mais sobre cada etapa da configuração de autenticação de senha com o Nginx no Ubuntu, fornecendo mais detalhes e contexto para cada passo:
-
Instalação do Nginx:
O Nginx é um servidor web de código aberto conhecido por sua excelente escalabilidade e desempenho. No Ubuntu, a instalação do Nginx é bastante simples, pois está disponível nos repositórios padrão do sistema. Após a instalação, o Nginx geralmente é configurado para servir arquivos do diretório/var/www/html/como a raiz do site padrão. -
Criação do arquivo de senha:
Para restringir o acesso a determinadas partes do seu site ou aplicativo da web, você precisa primeiro criar um arquivo que armazenará as informações de autenticação dos usuários. Este arquivo é criado com o auxílio da ferramentahtpasswd, que geralmente faz parte do pacoteapache2-utilsno Ubuntu.O comando
htpasswdé usado para adicionar, remover e modificar usuários e senhas em arquivos de senha. Ao criar o arquivo de senha pela primeira vez, você utiliza a opção-cpara indicar que é um novo arquivo. Se estiver adicionando usuários adicionais, você não precisa usar essa opção. -
Configuração do Nginx para autenticação básica:
Dentro do arquivo de configuração do Nginx do seu site, você define as regras de autenticação básica usando o módulongx_http_auth_basic_module. Este módulo permite que você defina áreas restritas do seu site e especifique um arquivo de senha que contém as informações de autenticação dos usuários.Ao definir uma área restrita, você utiliza a diretiva
auth_basicpara especificar a mensagem exibida na caixa de diálogo de autenticação do navegador e a diretivaauth_basic_user_filepara apontar para o arquivo de senha que você criou anteriormente. -
Teste da configuração e recarregamento do Nginx:
Antes de aplicar as alterações de configuração, é crucial testar a sintaxe do arquivo de configuração do Nginx para evitar possíveis erros que possam causar problemas no servidor. O comandonginx -tverifica a sintaxe do arquivo de configuração sem recarregar o Nginx. Se o teste for bem-sucedido, você pode recarregar o Nginx para aplicar as alterações usandosystemctl reload nginx. -
Acesso ao diretório protegido:
Após configurar a autenticação de senha, ao acessar o diretório protegido em um navegador da web, o servidor Nginx solicitará um nome de usuário e senha. Essas credenciais são verificadas pelo arquivo de senha especificado na configuração. Se as credenciais estiverem corretas, o acesso ao conteúdo protegido será concedido. -
Gerenciamento de usuários e senhas:
Você pode adicionar, remover ou modificar usuários e senhas no arquivo de senha usando o comandohtpasswd. Este comando oferece várias opções para realizar essas operações de maneira fácil e segura. Lembre-se sempre de recarregar o Nginx após fazer alterações no arquivo de senha para garantir que as alterações entrem em vigor imediatamente.
Este processo de configuração de autenticação de senha com o Nginx proporciona uma camada adicional de segurança para áreas restritas do seu site ou aplicativo da web, garantindo que apenas usuários autorizados possam acessar o conteúdo protegido. Ao seguir esses passos detalhados, você pode configurar facilmente a autenticação de senha em seu servidor Nginx no Ubuntu.

