Proxy Reverso com Nginx

Last Updated: 01/03/2023By Tags:

screenshot 20230211 174212 piccollage7199732581973293332
No sistema operacional Linux, um Proxy Reverso atua como um link entre o host (cliente) e o servidor.

gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==

Ele recebe as solicitações do cliente e as passa para outros servidores e, finalmente, entrega a resposta do servidor ao cliente, parecendo ter se originado do próprio servidor proxy.

Neste tutorial, mostraremos o que é um proxy reverso Nginx e como configurá-lo em seu Servidor de origem !

O cliente e o servidor trocam informações continuamente para trabalhar com eficiência. Normalmente, os proxies reversos são usados por um servidor web. Um proxy reverso ou gateway aparece para o cliente como um servidor web comum, onde nenhuma configuração especial é necessária. O cliente faz requisições ordinárias enquanto o proxy reverso decide para onde passar a informação entregando a saída final ao cliente como se fosse a origem.

O proxy reverso Nginx tem uma ampla gama de benefícios. Está entre os servidores de código aberto mais usados na Internet.

As vantagens de usar o proxy reverso Nginx

Vamos nos aprofundar nos motivos que explicam por que essa ferramenta é tão popular:

  • É simples de implementar e fornece ao usuário segurança de ponta contra ataques de servidor Web, como DDoS e DoS
  • O proxy reverso Nginx ajuda a criar uma carga balanceada entre vários servidores de back-end e fornece cache para um servidor de back-end mais lento
  • O Nginx não requer a configuração de um novo processo para cada solicitação da Web do cliente. Em vez disso, a configuração padrão é incluir um processo de trabalho por CPU
  • Ele pode atuar como um servidor proxy reverso para vários protocolos, como HTTP, HTTPS, TCP, UDP, SMTP, IMAP e POP3
  • Ele pode lidar com mais de 10.000 conexões com baixo consumo de memória.
  • O Nginx pode operar vários servidores da Web por meio de um único endereço IP e entregar cada solicitação ao servidor certo em uma LAN
  • O Nginx é um dos melhores servidores da Web para melhorar o desempenho do conteúdo estático. Além disso, também pode ser útil servir o conteúdo do cache e executar a criptografia SSL para diminuir a carga do servidor da web
  • Também pode ser útil ao otimizar o conteúdo, compactando-o para aumentar o tempo de carregamento
  • O Nginx pode realizar experimentos aleatórios ou testes A/B sem colocar códigos JavaScript nas páginas.

E todos esses benefícios são apenas a ponta do iceberg! Quanto mais você usar o Nginx Reverse Proxy, mais recursos você descobrirá!

Como configurar um proxy reverso Nginx?

Agora, vamos configurar o Nginx na frente de um servidor web Apache. Escolhemos o servidor Apache porque é melhor para lidar com conteúdo dinâmico.

Assim, todo o conteúdo estático irá para o Nginx, enquanto o conteúdo dinâmico irá para o Apache. Isso melhorará o desempenho otimizando a entrega de conteúdo com base nos critérios de tratamento.

Em seguida, definiremos o endereço IP do Nginx Proxy Server como 192.xx1 e o servidor Apache de back-end como 192.xx2 . Depois de configurar o Apache, podemos seguir para estas etapas:

1. Instale o Nginx

Estaremos usando o comando apt no Ubuntu 18.04:

sudo apt-get update

sudo apt-get install nginx

2. Desative o host virtual padrão

Depois de instalar o Nginx, siga o comando abaixo para desativar o host virtual:

sudo unlink /etc/nginx/sites-enabled/default

3. Crie o proxy reverso Nginx

Depois de desabilitar o host virtual, precisamos criar um arquivo chamado reverse-proxy.conf dentro do diretório etc/nginx/ sites-available para manter as informações do proxy reverso.

Para isso, devemos primeiro acessar o diretório usando o comando cd:

cd etc/nginx/seusite/

Então podemos criar o arquivo usando o editor vi:

vi reverse-proxy.conf

No arquivo, precisamos colar essas strings:

server {
    listen 80;
    location / {
        proxy_pass http://192.x.x.2;
    }
}
				

No comando acima, o ponto importante é que a passagem do proxy permite que as solicitações provenientes do proxy reverso do Nginx passem para 192.xx2:80 , que é o soquete remoto do Apache. Assim, ambos os servidores web – Nginx e Apache, compartilham o conteúdo.

Depois de concluído, basta salvar o arquivo e sair do editor vi. Você pode fazer isso digitando :wq .

Para passar informações para outros servidores, você pode usar o ngx_http_proxy_module no terminal.

Agora, ative as diretivas vinculando-as a /sites-enabled/ usando o seguinte comando:

sudo ln -s /etc/nginx/sites-available/reverse-proxy.conf /etc/nginx/sites-enabled/reverse-proxy.conf

4. Teste o Nginx e o proxy reverso do Nginx

gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==


Por fim, precisamos executar um teste de configuração do Nginx e reiniciar o Nginx para verificar seu desempenho. Digite o comando abaixo para verificar o funcionamento do Nginx no terminal Linux:

services nginx configtest

reinicialização do serviço nginx

Lembre-se, se você receber um teste com falha, isso provavelmente indica que o Apache não foi configurado corretamente.

Seu servidor de hospedagem virtual, suas regras. Obtenha todos os recursos necessários para o seu próximo projeto.

Conclusão

Há muitos benefícios em configurar um proxy reverso Nginx no sistema operacional Linux. Ele pode efetivamente aumentar o desempenho e aumentar a segurança contra malware. A configuração do proxy reverso Nginx é um processo simples em um terminal Linux. Embora haja uma infinidade de maneiras de instalá-lo e configurá-lo, que dependem completamente de sua necessidade, o tutorial acima é simples e direto para ajudá-lo a começar com uma configuração de proxy reverso.

Mais materiais você pode consultar o site do NGINX que tem uma infinidade de material mais tecnico para sua finalidade ou projeto.

Veja aqui Nginx

Espero que eu tenha ajudado.

newsletter-icon

Novidades via inbox

Fique por dentro no meu Boletim digital toda semana um conteúdo novo

Leave A Comment