JanelasMacSoftwareConfiguraçõesSegurançaProdutividadeLinuxAndroidDesempenhoConfiguraçãoApple Tudo

Como instalar e configurar o Nginx no Ubuntu

Editado 5 dias atrás por ExtremeHow Equipe Editorial

NginxUbuntuServidorLinuxServidor WebInstalaçãoConfiguraçãoSistemas OperacionaisSistemaConfiguração

Como instalar e configurar o Nginx no Ubuntu

Tradução atualizada 5 dias atrás

Bem-vindo a este guia sobre como instalar e configurar o Nginx no servidor Ubuntu. Neste artigo detalhado, iremos abordar cada passo em detalhe, explicando o processo desde a instalação até a configuração, incluindo vários módulos e configurações que podem ser ajustados de acordo com suas necessidades. O Nginx é conhecido por seu alto desempenho, estabilidade, conjunto de recursos abrangente, configuração simples e baixo consumo de recursos, tornando-se uma escolha popular para servidores web. Vamos aprofundar nos passos para executar o Nginx em seu sistema Ubuntu.

Entendendo o Nginx

O Nginx (pronunciado "enginex") é um servidor HTTP de alto desempenho e proxy reverso, assim como um servidor proxy IMAP/POP3. Ele foi desenvolvido para lidar com várias conexões simultâneas, o que significa que é altamente eficiente ao fornecer conteúdo estático e oferecer recursos de balanceamento de carga. O Nginx é um software de código aberto, o que significa que é gratuito para usar, modificar e distribuir.

Pre-requisitos

Antes de instalar o Nginx, você deve ter um servidor rodando o Ubuntu. Este guia assume o seguinte:

Certifique-se de que seu servidor está atualizado com os pacotes de software mais recentes, para isso faça o seguinte: sudo apt update && sudo apt upgrade.

Instalando o Nginx

Para instalar o Nginx, seu gerenciador de pacotes deve estar atualizado. Você usará apt, que é o gerenciador de pacotes padrão para o Ubuntu. Siga estes passos:

sudo apt update
sudo apt install nginx

O primeiro comando atualiza a lista de pacotes. O segundo comando instala o Nginx. Após a instalação, o Nginx inicia automaticamente. Para verificar se o Nginx está rodando, você pode usar o comando: systemctl status nginx. Se o serviço estiver ativo e rodando, você deve ver uma saída indicando isso.

Ajustando o firewall

Por padrão, o Nginx se registra com o ufw, que é uma ferramenta de configuração de firewall. Usando o ufw pode-se gerenciar quais portas HTTP e HTTPS estão abertas. Execute:

sudo ufw app list

Você deve ver o perfil do Nginx listado lá. Conceda permissão Nginx Full da seguinte forma:

sudo ufw allow 'Nginx Full'

Depois, verifique a mudança verificando o status do firewall: sudo ufw status para se certificar de que o tráfego é permitido nas portas necessárias.

Verificando o servidor Nginx

Agora que o Nginx está rodando e o firewall está ajustado, você pode visualizar a página padrão do servidor web. Abra um navegador web e navegue até o endereço IP público do seu servidor. Se o Nginx estiver configurado corretamente, você deve ver a página "Welcome to Nginx!". Para encontrar o endereço IP público do seu servidor, você pode usar:

curl -4 icanhazip.com

Entendendo a estrutura de diretórios do Nginx

É importante que você esteja familiarizado com a estrutura de diretórios onde o Nginx está instalado, principalmente em /etc/nginx. Os principais diretórios e arquivos incluem:

Mudanças na configuração devem ser feitas geralmente em nginx.conf ou criando novos arquivos em sites-available.

Configuração básica do Nginx

O arquivo nginx.conf é o principal arquivo de configuração do Nginx. Tarefas simples podem envolver a edição direta dele, mas para mudanças específicas relacionadas a sites hospedados, use arquivos de blocos de servidor. Vamos criar um novo arquivo de bloco de servidor para o domínio chamado example.com. Dentro de /etc/nginx/sites-available/:

sudo nano /etc/nginx/sites-available/example.com

Adicione a seguinte configuração:

server {
    listen 80;
    server_name example.com www.example.com;
    location / {
        try_files $uri $uri/ =404;
    }
}

Para habilitar o arquivo, crie um link simbólico para o diretório sites-enabled:

sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/

Para verificar se você tem isso configurado corretamente:

sudo nginx -t

Se for bem-sucedido, recarregue o Nginx:

sudo systemctl reload nginx

Este exemplo serve apenas arquivos estáticos do diretório, assumindo que eles estão localizados em /var/www/html sob o root padrão do Nginx.

Configurando um bloco de servidor

Os blocos de servidor permitem hospedar vários domínios em um único servidor. Cada arquivo de configuração de domínio deve estar em sites-available e o link simbólico em sites-enabled. Exemplo de um bloco de servidor:

server {
    listen 80;
    server_name example.com www.example.com;
    root /var/www/example.com/html;
    index index.html index.htm index.nginx-debian.html;
    location / {
        try_files $uri $uri/ =404;
    }
}

Crie a estrutura de diretórios:

sudo mkdir -p /var/www/example.com/html

Especifique permissões e crie uma página HTML de exemplo:

sudo chown -R $USER:$USER /var/www/example.com/html
sudo chmod -R 755 /var/www/example.com
echo '<h1>Hello World!</h1>' > /var/www/example.com/html/index.html

Lembre-se de criar o link simbólico e testar a configuração, depois recarregue o Nginx.

Implementando SSL com Let's Encrypt

Para proteger o tráfego de e para seu servidor, é importante implementar SSL/TLS. O Let's Encrypt oferece certificados SSL gratuitos. Comece instalando o Certbot, o cliente do Let's Encrypt:

sudo apt install certbot python3-certbot-nginx

O Certbot pode configurar automaticamente o SSL para o Nginx; execute:

sudo certbot --nginx -d example.com -d www.example.com

Durante o processo, é necessário fornecer um endereço de e-mail e concordar com os termos de serviço. O Certbot cuidará das modificações na sua configuração do Nginx para fornecer conteúdo via HTTPS.

Automatizando renovações de SSL

Os certificados do Let's Encrypt expiram a cada 90 dias. Configure um cron job para renovar automaticamente os certificados. Abra o crontab:

sudo crontab -e

Adicione:

0 3 * * * /usr/bin/certbot renew --quiet

Isso executará o comando de renovação todos os dias às 3 AM.

Ajuste de desempenho

Para sites com alto tráfego, o ajuste de desempenho é importante. Algumas estratégias de ajuste:

Considere usar ferramentas como New Relic ou Datadog para monitorar o desempenho do Nginx.

Conclusão

Parabéns, você instalou e configurou o Nginx no Ubuntu! Você aprendeu a servir múltiplos domínios, proteger seu site com SSL e otimizar a configuração para um melhor desempenho. Como as opções e módulos do Nginx são tão ricos, explorar sua documentação mais a fundo pode lhe proporcionar muitas capacidades avançadas e interessantes. Continue experimentando e em breve você estará gerenciando um servidor web altamente otimizado.

Se você encontrar algo errado com o conteúdo do artigo, você pode


Comentários