Proxy reverso e balanceamento de carga utilizando o Pound

Muitas vezes é necessário utilizarmos empacotamento SSL em servidores WEB, mas nem sempre é possível porque vários tipos de servidores não oferecem esta funcionalidade ou não são tão seguros como gostaríamos. Este artigo ensina o conceito e configuração do Pound, uma excelente solução para proxy reverso e balanceamento de carga.

[ Hits: 31.228 ]

Por: Gilberto Russo em 07/09/2006


Apresentação



O POUND é um proxy reverso, balanceador de carga e um front-end HTTPs para servidores web. Ele foi desenvolvido para permitir a distribuição de carga entre diversos servidores web e possibilitar um empacotamento SSL conveniente para os servidores que não oferecem este serviço de forma nativa.

Sistema Operacional: Linux
Mandriva Linux release 2006.0 for i586
Kernel 2.6.12-12mdk on an i686

Ambiente de teste: Celeron 2.4 / 512 RAM / 80 GB SATA / Celeron 2.4 / 512 RAM.

Pré-requisitos: OpenSSL

Instalação


Obtendo o código fonte:

Acesse o site oficial do Pound para realizar o download da versão mais recente:
Esse documento está baseado na versão 2.0.9.

Você poderá também usar o comando wget para baixar o fonte direto no servidor caso o mesmo não possua interface gráfica habilitada:

# wget http://www.apsis.ch/pound/Pound-2.0.9.tgz

Compilando o Pound:

Antes de descompactar o código fonte do Pound e realizar a compilação, é necessário que criar o usuário e grupo que irão controlar os processos desse serviço, já definindo o home do mesmo como sendo o diretório onde o Pound será instalado:

# adduser pound -d /usr/local/pound

CheckList:

# tail -1 /etc/passwd
# tail -q /etc/group
# ls -ld /usr/local/pound


Descompacte o arquivo do código fonte na pasta /usr/local/src, por ser a pasta mais indicada pela FHS (File Hierarchy Standard) para armazenamento de fontes:

# tar -xvzf Pound-2.0.9.tgz -C /usr/local/src/
# cd /usr/local/src/Pound-2.0.9


Iremos compilar o Pound com suporte a WebDAV e Log, então temos apenas que definir alguns parâmetros de compilação:
  • --enable-msdav - Habilitando suporte a WebDAV;
  • --enable-log - Habilitando sistema de log.

# ./configure --enable-msdav --enable-log

OBS: Por padrão a compilação já vem com suporte a OpenSSL.

Para concluir a instalação você deverá executar os seguintes comandos:

Compilação:

# make

Instalação dos binários no diretório /usr/local/sbin/pound:

# make install

    Próxima página

Páginas do artigo
   1. Apresentação
   2. Configuração
Outros artigos deste autor

Firewalls redundantes utilizando VRRP

Instalando o Squid + SquidGuard

Configuração do DKIM no Debian com Postfix e Múltiplos Domínios

ISCSI - Um sistema de transferência de arquivos diferente

Osiris - Integridade do sistema de arquivos

Leitura recomendada

Sudo 1.8.12 - Parte II - Como sudo funciona

Snort + BarnYard2 + Snorby no Slackware 14.1

CouchDB - For Fun and Profit

Restrição em diretórios usando o Apache2 sem mistérios

webCalendar: a agenda e o PAM

  
Comentários
[1] Comentário enviado por thelinux em 11/09/2006 - 12:48h

Nota 10. Excelente.

[2] Comentário enviado por helderam em 24/02/2007 - 08:02h

Ola,

Beixei o pound e fiz conforme recomendado. Porem na hora de fazer o .configure apareceu uma mensagem de erro:

checking for BIO_new in -lcrypto... no
Missing OpenSSL (-lcrypto) - aborted

Alguem pode me ajudar ?
Grato,
Helder

[3] Comentário enviado por gilberto.russo em 24/02/2007 - 10:54h

Helder,

vc instalou o OpenSSL completo? Pois ele é um pré-requisito do POUND e o responsável pela segurança das conexões.

Att.,

Gilberto Russo

[4] Comentário enviado por Fcesarsousa em 13/09/2011 - 16:09h

Boa tarde!

Caro Gilberto,

Estou instalando um servidor Pound em uma maquina com o Cent OS e esotu seguindo o seu artigo. Consegui chegar até a marte da compilação mas quando dei o comando MAKE e e mseguida o MAKE INSTALL ele me retornou a seguinte mensagem "-bash: Make: command not found".

Executei ele apartir do diretorio "/usr/local/src/Pound-2.5" este ultimo é onde estão os arquivos descompactados.

Gostaria de uma ajuda. O que fazer neste caso? será que faltou alguma coisa?

Grato,

César Sousa.

[5] Comentário enviado por patronks em 13/09/2012 - 09:17h

Bom dia,

Gilberto, utilizo o Pound e tenho uma dúvida, seria possível por exemplo, receber conexões em com um nome e direcionar para outro, vou dar o exemplo abaixo para facilitar. Precisamos desta configuração, pois temos uma aplicação que roda em webserver próprio e não conseguimos alterar as configurações>

URL acessada de fora: http://www.externo.com.br/XXXXXXX
URL a ser direcionada internamente: http://192.168.0.1/YYYYYYYYY

Talvez não tenha ficado claro a explicação, mas seria receber conexões em uma pasta (/) e direcionar para outra.

Obrigado.

Paulo Henrique.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts