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: 30.900 ]

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

KnowledgeTree - Um Gerenciador Eletrônico de Documentos funcional

Monitoração de Hosts e Serviços com o NAGIOS

ISCSI - Um sistema de transferência de arquivos diferente

Acesso remoto utilizando FreeNX

Leitura recomendada

Recon and Scan with Metasploit

Introdução ao ModSecurity

Encriptando suas senhas de forma (mais) segura no Pidgin

Servidor de autenticação 802.1x com Freeradius

Melhorando a segurança de servidores GNU/Linux (Parte 1)

  
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