8 servidores proxy reversos de código aberto de código aberto para Linux

8 servidores proxy reversos de código aberto de código aberto para Linux

Um servidor proxy reverso é um tipo de servidor proxy que é implantado entre clientes e servidores de back-end/origem, por exemplo, um Http servidor como Nginx, Apache, etc ... ou servidores de aplicativos escritos em Nodejs, Pitão, Java, Rubi, Php, e muitas outras linguagens de programação.

É um gateway ou um servidor intermediário que leva uma solicitação do cliente, passa para um ou mais servidores de back-end e, posteriormente Originado do próprio servidor de proxy reverso.

Leitura relacionada: Os 8 melhores servidores da web de código aberto

Geralmente, um servidor de proxy reverso é um proxy interno usado como um 'front-end'Para controlar e proteger o acesso a servidores de back-end em uma rede privada: normalmente é implantado atrás do firewall da rede.

Ajuda os servidores de back-end a alcançar o anonimato para melhorar sua segurança. Em uma infraestrutura de TI, um proxy reverso também pode funcionar como um firewall de aplicativo, balanceador de carga, TLS Terminator, acelerador da web (por conteúdo estático e dinâmico de cache) e muito mais.

Neste artigo, revisaremos os 8 servidores de proxy reverso de código aberto que você pode usar em um sistema Linux.

1. Haproxy

Haproxy (Haproxy, que significa Alta disponibilidade proxy).

Haproxy é um proxi reverso HTTP, um proxy e normalizador do TCP, um terminador/iniciador/descartador SSL/TLS, um proxy de cache, um carregador de compressão HTTP, um regulador de tráfego, um interruptor baseado em conteúdo, um gateway rápido e mais. É também uma proteção contra DDOs e abuso de serviço.

É alimentado por um mecanismo sem bloqueio, acionado por eventos, que combina uma camada de E/S muito rápida com um agendador multithread baseado em prioridade, que permite lidar facilmente com dezenas de milhares de conexões simultâneas. Notavelmente, Haproxy usa o Proxy Protocolo para passar as informações de conexão do cliente para servidores de back -end ou origem, para que um aplicativo obtenha todas as informações relevantes.

Alguns dos recursos básicos de Haproxy incluem proxy, suporte SSL, monitoramento dos estados do servidor e seu próprio estado, alta disponibilidade, balanceamento de carga, viscosidade (mantenha um visitante no mesmo servidor, mesmo em vários eventos), comutação de conteúdo, reescrita HTTP e redirecionamento, Proteção ao servidor, log, estatísticas e muito mais.

Leitura relacionada: Como configurar o Haproxy como balanceador de carga para o nginx no CentOS 8

2. Nginx

Nginx, um servidor HTTP gratuito, de código aberto, de alto desempenho e muito popular e proxy reverso. Também funciona como um IMAP/POP3 Servidor proxy. Nginx é bem conhecido por seu alto desempenho, estabilidade, conjunto de recursos ricos, configuração simples e flexível e baixo consumo de recursos (particularmente pegada de memória pequena).

Assim como Haproxy, Nginx tem uma arquitetura orientada por eventos, portanto não tem problema em lidar com dezenas de milhares de conexões simultâneas, pois usa Proxy de Haproxy protocolo.

Nginx Suporta a proxy reversa acelerada com o cache usando o módulo NGX_HTTP_PROXY_MODULE, que permite a passagem de solicitações para outro servidor por outros protocolos que não http, como fastcgi, uwsgi, scgi e memcached.

É importante. O ngx_http_upstream_module Módulo permite definir grupos de servidores de back -end para distribuir os pedidos provenientes de clientes. Isso torna seus aplicativos mais robustos, disponíveis e confiáveis, altamente escaláveis, com tempo de resposta e taxa de transferência. Além disso, com segurança, ele suporta terminação SSL/TLS e tantos outros recursos de segurança.

Artigos úteis no NGINX Web Server que você gostaria de ler:

  • Como instalar o Nginx Web Server no Ubuntu 20.04
  • Como instalar o nginx no CentOS 8
  • Como ativar a página de status nginx

3. Cache http de verniz

Cache http de verniz (ou Cache de verniz ou simplesmente Verniz) é um software gratuito, de código aberto, de alto desempenho e cache muito popular, mais conhecido como acelerador de aplicativos da web, projetado para melhorar o desempenho HTTP usando cache do lado do servidor.

Ele é implantado entre um cliente e um servidor Web HTTP ou servidor de aplicativos; Sempre que um cliente solicita informações ou um recurso de um servidor da web, o Varnish armazena uma cópia das informações; portanto, na próxima vez que o cliente solicita as mesmas informações, o Varnish servirá sem enviar uma solicitação ao servidor da web, reduzindo assim a carga no servidor e, por sua vez, acelerar a entrega de conteúdo da web.

Verniz usa uma linguagem de configuração flexível conhecida como o Linguagem de configuração de verniz (Vlc) que, entre outras coisas, permitem que os administradores do sistema configurem como os pedidos de entrada devem ser processados, que conteúdo deve ser servido e de onde e como a solicitação ou resposta devem ser alterados, e muito mais.

O verniz também é extensível - pode ser estendido usando Módulos de verniz (Vmods) e os usuários podem escrever seus módulos personalizados ou usar módulos fornecidos pela comunidade.

A principal limitação de Verniz é sua falta de apoio para SSL/TLS. A única maneira de ativar Https é implantar um SSL/TLS terminador ou descarregador, como Haproxy ou Nginx na frente dele.

4. Træfɪk

Træfɪk (pronunciado Tráfego) é um proxy reverso de http de código aberto, moderno e rápido e balanceador de carga para implantar micro-serviços que suporta vários algoritmos de balanceamento de carga. Ele pode interagir com vários provedores (ou mecanismos de descoberta de serviço ou ferramentas de orquestração), como Kuberna, Docker, Etcd, API REST, Mesos/Maratona, Swarm e Zookeper.

Seu recurso adorável é sua capacidade de gerenciar sua configuração automaticamente e dinamicamente, descobrindo a configuração correta para seus serviços. Isso faz isso digitalizando sua infraestrutura para encontrar informações relevantes e descobre qual serviço serve qual solicitação do mundo externo. Os provedores dizem aos træfɪk onde seus aplicativos ou micro-serviços estão localizados.

Os outros recursos de Træfɪk são suportados para WebSockets, HTTP/2 e GRPC e recarregamento a quente (atualiza continuamente sua configuração sem reinicialização), https usando certificados Let's Encrypt (suporte a certificado de curvatura) e expõe um API REST. Ele também mantém os registros de acesso e fornece métricas (descanso, Prometheus, Datadog, STATSD, InfluxDB).

Além disso, træfɪk envia com uma simples interface de usuário da web baseada em HTML usada para ficar de olho nos eventos. Ele também suporta disjuntores, solicitações de tentativa, limitação de taxa e autenticação básica.

5. Servidor de tráfego Apache

Anteriormente um produto comercial de propriedade de Yahoo que mais tarde foi entregue ao Fundação Apache, O Apache Traffic Server é um servidor gratuito, de código aberto e rápido para o cache para a frente e reverso.

O servidor de trânsito também funciona como balanceador de carga e pode participar de hierarquias de cache flexíveis. É conhecido por ter lidado com mais de 400 TB por dia de tráfego no Yahoo.

Possui um conjunto de keep-alive, filtragem ou anonimização de solicitações de conteúdo e é extensível por meio de uma API que permite aos usuários criar plugins personalizados para modificar cabeçalhos HTTP, manipular solicitações de ESI ou projetar novos algoritmos de cache.

6. Servidor proxy de lula

Lula é um servidor de proxy gratuito, de código aberto e conhecido, que suporta vários protocolos como HTTP, HTTPS, FTP e muito mais. Possui um proxy reverso (httpd-acelerador) que armazena em cache solicitações de dados de entrada de dados de saída.

Ele suporta ricas opções de otimização de tráfego, controle de acesso, autorização, instalações de madeira e muito mais.

7. Libra

Uma libra é outra proxy reversa e de código aberto e de código aberto e balanceador de carga e servidores front-end para servidores da web. É também um terminador SSL (que descriptografa solicitações HTTPS dos clientes e as envia como HTTP simples para os servidores de back-end), um http/https https (que verifica solicitações de correção e aceita apenas as bem-formadas) e uma falha -Over servidor.

8. Servidor HTTP Apache

Por último, mas não menos importante, temos um servidor http apache (também conhecido como Httpd), o servidor da web mais popular do mundo. Também pode ser implantado e configurado para atuar como um proxy reverso.

Além disso, você também pode fazer o checkout Capitão, o novo garoto no quarteirão. É um roteador HTTP gratuito e de código aberto e proxy reverso para a composição de serviço, incluindo casos de uso como Kubernetes Ingress.

Isso é tudo o que tivemos para você neste guia. Para obter mais informações sobre cada ferramenta nesta lista, confira seus respectivos sites. Não se esqueça de compartilhar seus pensamentos conosco através do formulário de feedback abaixo.