Guia de Instalação do Nginx: Passo a Passo para Iniciantes
Domine a configuração inicial do seu servidor web de alta velocidade! Este guia abrangente orienta iniciantes através da instalação precisa, passo a passo, do Nginx tanto em sistemas Debian/Ubuntu quanto em CentOS/RHEL. Aprenda comandos essenciais para iniciar, parar e verificar o serviço, além da configuração crucial do firewall para garantir acessibilidade imediata. Coloque seu servidor web Nginx em funcionamento em minutos.
Guia de Instalação do Nginx: Passo a Passo para Iniciantes
Você precisa ter o Nginx instalado, em execução e acessível antes de usá-lo como servidor web, proxy reverso, balanceador de carga ou cache. Este guia de instalação do Nginx aborda a configuração básica usando gerenciadores de pacotes em sistemas Debian/Ubuntu e Linux estilo RHEL, e mostra como verificar o serviço e liberar o firewall.
Os comandos abaixo assumem um servidor baseado em systemd e um usuário com acesso sudo.
Pré-requisitos
Antes de começar, certifique-se de ter:
- Um servidor ou máquina virtual executando Ubuntu, Debian, RHEL, CentOS Stream, Rocky Linux, AlmaLinux ou uma distribuição similar.
- Um usuário não root com privilégios
sudo. - Acesso ao shell via SSH ou terminal local.
Instalação em Sistemas Debian/Ubuntu
Em sistemas baseados em Debian, o Nginx está disponível nos repositórios padrão. Atualize o índice de pacotes primeiro para que o apt veja os metadados atuais dos pacotes.
Passo 1: Atualizar Listas de Pacotes
Execute os seguintes comandos para atualizar seu índice de pacotes local:
sudo apt update
Passo 2: Instalar o Nginx
Use o comando apt install para baixar e instalar o Nginx e suas dependências:
sudo apt install nginx
Passo 3: Verificar o Status da Instalação
Após a conclusão da instalação, o serviço geralmente é iniciado automaticamente. Você pode verificar o status usando systemctl:
sudo systemctl status nginx
Você deve ver uma saída indicando que o serviço está active (running).
Instalação em Sistemas CentOS/RHEL
Em sistemas estilo RHEL, use dnf nas versões atuais e yum nas mais antigas. Algumas distribuições incluem o Nginx em seus próprios repositórios; outras podem precisar do EPEL ou de um repositório oficial do fornecedor. Se dnf install nginx não encontrar o pacote, habilite o EPEL ou verifique as notas de empacotamento do Nginx da sua distribuição.
Passo 1: Instalar o Repositório EPEL
Se seu sistema precisar do EPEL, instale-o primeiro.
Para CentOS/RHEL 7:
sudo yum install epel-release
Para CentOS/RHEL 8/9 (usando DNF):
sudo dnf install epel-release
Passo 2: Instalar o Nginx
Agora, instale o Nginx usando yum ou dnf:
# Usando yum (sistemas antigos)
sudo yum install nginx
# OU usando dnf (sistemas novos)
sudo dnf install nginx
Passo 3: Iniciar e Habilitar o Serviço Nginx
Ao contrário do Debian/Ubuntu, o Nginx pode não iniciar automaticamente após a instalação em sistemas baseados em RHEL. Você deve iniciá-lo manualmente e habilitá-lo para executar na inicialização do sistema:
# Iniciar o serviço imediatamente
sudo systemctl start nginx
# Garantir que ele inicie na reinicialização
sudo systemctl enable nginx
# Verificar o status
sudo systemctl status nginx
Configuração do Firewall: Permitir HTTP e HTTPS
Após a instalação, certifique-se de que seu firewall permita tráfego web. Se o serviço estiver em execução, mas a porta 80 ou 443 estiver bloqueada, sua verificação no navegador falhará de fora do servidor.
Usando UFW no Ubuntu/Debian
O pacote Nginx do Ubuntu geralmente registra perfis de aplicação UFW. Abra HTTP e HTTPS se você planeja adicionar TLS em breve.
# Listar perfis de aplicação disponíveis
sudo ufw app list
# Permitir tráfego web padrão (HTTP/HTTPS)
sudo ufw allow 'Nginx Full'
# Recarregar o firewall para aplicar as alterações
sudo ufw reload
Usando Firewalld em Sistemas Estilo RHEL
O Firewalld usa zonas para gerenciar regras. Estes comandos adicionam os serviços padrão http e https à zona padrão ativa.
# Permitir tráfego HTTP (porta 80)
sudo firewall-cmd --permanent --add-service=http
# Permitir tráfego HTTPS (porta 443)
sudo firewall-cmd --permanent --add-service=https
# Recarregar as regras do firewall
sudo firewall-cmd --reload
Verificar se o Nginx Está Funcionando
Com o pacote instalado e o firewall liberado, confirme que o Nginx está servindo a página padrão.
Método 1: Verificação no Navegador Web
Abra seu navegador web preferido e navegue até o endereço IP ou nome de domínio do seu servidor:
http://SEU_ENDERECO_IP_DO_SERVIDOR
Se bem-sucedido, você deve ver a página de boas-vindas padrão do Nginx. O texto exato e o caminho do arquivo variam conforme a distribuição.
Método 2: Verificação pela Linha de Comando
Use curl do próprio servidor para verificar o listener local:
curl http://localhost
Este comando deve retornar HTML. Se falhar localmente, verifique systemctl status nginx e /var/log/nginx/error.log antes de solucionar problemas de DNS ou regras de firewall na nuvem.
Comandos Essenciais de Gerenciamento do Nginx
Uma vez instalado, você geralmente gerenciará o Nginx com systemctl:
| Ação | Comando |
|---|---|
| Iniciar o servidor | sudo systemctl start nginx |
| Parar o servidor | sudo systemctl stop nginx |
| Reiniciar (Parar e Iniciar) | sudo systemctl restart nginx |
| Recarregar (Aplicar mudanças na configuração sem tempo de inatividade) | sudo systemctl reload nginx |
| Verificar Status | sudo systemctl status nginx |
| Desabilitar inicialização automática | sudo systemctl disable nginx |
Teste a sintaxe da configuração antes de cada recarregamento:
sudo nginx -t
sudo systemctl reload nginx
Esse hábito detecta ponto e vírgula faltando, caminhos de inclusão ruins e conflitos de listen duplicados antes que interrompam o tráfego.
Próximo Passo: Criar um Bloco de Servidor
A configuração padrão serve uma página de boas-vindas fornecida pelo pacote. No Debian/Ubuntu, os arquivos web geralmente ficam em /var/www/html. Em sistemas estilo RHEL, a raiz padrão costuma ser /usr/share/nginx/html.
Seu próximo passo é criar um bloco de servidor para seu domínio. Layouts do Debian/Ubuntu frequentemente usam /etc/nginx/sites-available/ com links simbólicos para /etc/nginx/sites-enabled/. Layouts estilo RHEL usam mais frequentemente arquivos em /etc/nginx/conf.d/.
Depois disso, adicione TLS, aponte o registro DNS do seu domínio para o servidor e execute sudo nginx -t antes de recarregar. Nesse ponto, sua instalação do Nginx estará pronta para a configuração real do site.