HAproxy + Stunnel (https) + CentOS 6

Neste artigo vou abordar a configuração do Load Balance com o software HAproxy e Stunnel.
Toda configuração será feita no CentOS 6 i386.

[ Hits: 38.388 ]

Por: evandro matos couto em 23/11/2011


Script para inicializar o Stunnel



#!/bin/bash

# VARIAVEIS
GREP="/bin/grep"
EGREP="/bin/egrep"
PROG="stunnel"
KILLALL="/usr/bin/killall"

# TESTANDO SE EXISTE O ARQUIVO
test -x /usr/bin/stunnel || exit 0
RETVAL=0

########## START ##########
start() {
        if [ ! -f /var/lock/subsys/stunnel ]; then
        /usr/bin/stunnel
                RETVAL=$?
                if [ $RETVAL = 0 ]; then
                        touch /var/lock/subsys/stunnel
                        echo  $"Starting $PROG: OK"
                else
                        exit 1
                fi
        fi
                return $RETVAL
}
stop() {
        if [ -e /var/lock/subsys/stunnel ]; then
        $KILLALL /usr/bin/stunnel
                RETVAL=$?
                if [ $RETVAL = 0 ]; then
                        rm -rf /var/lock/subsys/stunnel
                        echo  $"Stop $PROG: OK"
                else
                        exit 1
                fi
        fi
                return $RETVAL
}
restart(){
         if [ -e /var/lock/subsys/stunnel ]; then
        $KILLALL /usr/bin/stunnel
                RETVAL=$?
                if [ $RETVAL = 0 ]; then
                        rm -rf /var/lock/subsys/stunnel
                        echo  $"Stop $PROG: OK"
                else
                        exit 1
                fi
        fi

        if [ ! -f /var/lock/subsys/stunnel ]; then
        /usr/bin/stunnel
                RETVAL=$?
                if [ $RETVAL = 0 ]; then
                        touch /var/lock/subsys/stunnel
                        echo  $"Starting $PROG: OK"
                else
                        exit 1
                fi
        fi

                return $RETVAL
}
case "$1" in
  start)
        start
        ;;
  stop)
        stop
        ;;
  restart)
        restart
        ;;
  *)
        echo $"ESCOLHA UM ITEM AO LADO: $0 {start|stop|restart}"
        exit 2
esac

exit $?

Logo em seguida, iremos criar a chamada para inicialização no Stunnel no boot do S.O.:

# ln -s /etc/init.d/stunnel /etc/rc3.d/S99stunnel

Página anterior     Próxima página

Páginas do artigo
   1. Objetivo
   2. HAproxy
   3. Configurando o HAproxy
   4. Segunda parte da configuração - Stunnel
   5. Script para inicializar o Stunnel
   6. Ambiente desejável para Alta Disponibilidade e Load Balance
Outros artigos deste autor

CentOS 5.8 - MySQL Cluster 7.1 + HAProxy

Quota - Criando e administrando no CentOS

Alta disponibilidade: CentOS 6 - configurando os pacotes DRBD com gfs2 - parte 1

Instalação do Nagios Core no CentOS 5.5

Nagios 4 com Check_MK 1.2.5i3 no CentOS 6.5 x64

Leitura recomendada

Atualizando o Gnome no Slackware com Dropline

Habilitando multilib no Slackware - Atualizado e simplificado

Blackbox total - Instalado, configurado e personalizado

Bind9 slave em chroot no Debian Lenny

Compiz Fusion no Gutsy

  
Comentários
[1] Comentário enviado por silent-man em 02/12/2011 - 16:38h

@vandocouto,

em primeiro lugar bom artigo. Ainda não tive a oportunidade de testá-lo apesar de já ter ouvido falar.

Tenho uma dúvido.

Quando o cliente acessa o endereço HTTP(no exemplo acima CentOS-1 192.168.1.55) e esta requisição bate nos HTTP's Servers CentOS-2 ou CentOS-3 qual IP irá aparecer nestes Https Servers, o IP do cliente ou o Ip do CentOS-1 ?

[]s

[2] Comentário enviado por vandocouto em 02/12/2011 - 19:55h

Caro Slient-man,

Respondendo sua pergunta:

1 - no caso do http os logs no centos-2 e centos-3 irão mostrar os ip's do clientes sim.
2 - já no caso do https os logs do centos-2 e centos-3 irão mostrar o ip do centos-1, porém no centos-1 você poderá ver os ip's dos clientes que estão requisitando o acesso via https.

Lembrado que o centos-1 recebe a requisição e encaminha para os nodes conforme exemplo no tutorial.

Espero ter ajudado você

até.



[3] Comentário enviado por fporphirio em 23/07/2012 - 15:10h

Precisava muito instalar o HAPROXY , COROSYNC e PACEMAKER no RedHat 6.2 alguem pode ajudar com esses pacotes para baixar e instalar?

[4] Comentário enviado por engracia em 17/12/2012 - 21:59h

Ola pessoal tenho um trabalho com o tema: segurança no linux,sera que alguém pode dar uma ajuda por favor?


Contribuir com comentário