Introdução
Recentemente precisei instalar a versão mais recente do Nginx em um servidor Linux e não encontrei um tutorial completo. Após algumas tentativas, consegui完成 a instalação com sucesso. A seguir, apresento o processo completo.
O ambiente utilziado foi o CentOS. Os passos abaixo detalham toda a instalação:
Instalando as Dependências Necessárias
Primeiramente, instalamos as bibliotecas e ferramentas essenciais para o编译 do Nginx:
yum install -y gcc gcc-c++ pcre \
pcre-devel zlib zlib-devel openssl openssl-devel wget
Criando o Diretório de Trabalho
mkdir -p /opt/downloads && cd /opt/downloads
Baixando o Pacote de Instalação
Para outras versões, você pode acessar o site oficial do Nginx e escolher a versão desejada:
wget https://nginx.org/download/nginx-1.24.0.tar.gz
Extraindo e Compilando
tar zxvf nginx-1.24.0.tar.gz
cd nginx-1.24.0
./configure --prefix=/usr/local/nginx
make && make install
Configurando Acesso Global ao Comando
ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx
Verificando a Instalação
nginx -V
Se a versão for exibida, a instalação foi bem-sucedida.
Confirmando que o Serviço Está Executando
netstat -ntlp | grep nginx
Criando o Serviço Systemd
Para gerenciar o Nginx como um serviço do sistema, crie o arquivo de configuração:
vim /lib/systemd/system/nginx.service
Insira o seguinte conteúdo:
[Unit]
Description=nginx - high performance web server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
Iniciando o Nginx como Serviço
pkill nginx
systemctl daemon-reload
systemctl start nginx
Verificando o Status do Serviço
systemctl status nginx
netstat -ntlp | grep nginx
Configurando Inicialização Automática
systemctl enable nginx
Localização dos Arquivos de Configuração
O arquivo de configuração principal encontra-se em:
vim /usr/local/nginx/conf/nginx.conf
Opcional: Ocultando a Versão do Nginx
Por padrão, o Nginx exibe sua versão nos erros de página e nos cabeçalhos HTTP. Por motivos de segurança, especialmente em versões mais antigas que podem conter vulnerabilidades, é recomendável ocultar essa informação.
Passo 1: Modificar nginx.conf
cd /usr/local/nginx/conf
vim nginx.conf
No bloco http, altere a diretiva server_tokens para off:
http {
...
server_tokens off;
...
}
Passo 2: Modificar fastcgi.conf
vim fastcgi.conf
Encontre e modifique a linha:
# Original:
fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;
# Modificada:
fastcgi_param SERVER_SOFTWARE nginx;
Passo 3: Reiniciar o Nginx
systemctl restart nginx
A versão do Nginx agora está oculta.