Pular para o conteúdo

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.
evandro matos couto vandocouto
Hits: 42.563 Categoria: Linux Subcategoria: Configuração
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Parte 5: 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

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
   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

Instalação do Nagios Core no CentOS 5.5

Quota - Criando e administrando no CentOS

CentOS 5.8 - MySQL Cluster 7.1 + HAProxy

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

Clonagem de HDs com o PHANTOM & UDPCAST no CentOS

Otimizando a bateria em sistemas Android 2.2/2.3

Instale uma distro dentro de outra

Servidor de ICQ free no SuSE

Criando uma Máquina de Torrent com o OrangePI [Open Hardware]

Como configurar o MySQL no Slackware

#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

Entre na sua conta para comentar.