You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

global
    log		/dev/haproxy/log local0			# см https://en.wikipedia.org/wiki/Syslog#Facility
    log		/dev/haproxy/log local1 notice	# notice - уровень ошибки. весь список: emerg, alert, crit, err, warning, notice, info, debug
    chroot	/var/lib/haproxy	# изменяем директорию выполнения для защиты от атак. папка пуста и нет прав.
    maxconn	256					# максимальное количество одновременных подключений. 
    stats socket /run/haproxy/admin.sock mode 660 level admin # связывает сокет с admin.sock
    stats timeout 30s
    
# Неизменяемые настройки HAPROXY
    user haproxy
    group haproxy 
    daemon 					# Запустить процесс в фоновом режиме

defaults
    log		global
    mode	http
    option	httplog
    option	dontlognull
    
# Таймауты
    timeout connect 5000ms
    timeout client 50000ms
    timeout server 50000ms
    retries 3 				# кол-во попыток до того, как понизить статус сервера

# Статистика
    stats enable
    stats hide-version
    stats realm Haproxy\ Statistics
    stats uri /haproxy		#здесь указываем ссылку на страницу статистики
    stats auth stat:stat
    option httpchk HEAD / HTTP/1.0

# Настройки доступа 
    option redispatch		# Позволит пользователям пройти к другому серверу если сервер, на который ссылаются их куки, не работает
    balance source # алгоритм выбора сервера (наименее загруженный по порядку)

frontend frontend_pam
    bind *:443 ssl crt /etc/ssl/certs/haproxy.domain.local.pem # настройка интерфейса фронтенда с указанием пути к сертификату этого сервера
    option forwardfor				# передать оригинальный ip адрес клиента серверу
    acl url_core path_beg /pam/core
    use_backend backend_api if url_core
    acl url_idp path_beg /pam/idp
    use_backend backend_idp if url_idp  
    acl url_mc path_beg /pam/mc
    use_backend backend_mc if url_mc
    acl url_uc path_beg /pam/uc
    use_backend backend_uc if url_uc    

backend backend_api   
    option prefer-last-server           # попытка повторно использовать тоже соединение к серверу
    option httpchk GET /pam/core/health        # проверка доступности приложения PAM Core 
    server PAM1 192.168.1.1:443 ssl verify none check inter 5000ms fall 3 
    server PAM2 192.168.1.2:443 ssl verify none check inter 5000ms fall 3

backend backend_idp  
    option prefer-last-server           # попытка повторно использовать тоже соединение к серверу
    option httpchk GET /pam/idp/            # проверка доступности приложения PAM Core
    server PAM1 192.168.1.1:443 ssl verify none check inter 5000ms fall 3
    server PAM2 192.168.1.2:443 ssl verify none check inter 5000ms fall 3

backend backend_mc
    option prefer-last-server           # попытка повторно использовать тоже соединение к серверу
    option httpchk GET /pam/mc/            # проверка доступности приложения PAM Core
    server PAM1 192.168.1.1:443 ssl verify none check inter 5000ms
    server PAM2 192.168.1.2:443 ssl verify none check inter 5000ms 

backend backend_uc  
    option prefer-last-server           # попытка повторно использовать тоже соединение к серверу
    option httpchk GET /pam/uc/            # проверка доступности приложения PAM Core
    server PAM1 192.168.1.1:443 ssl verify none check inter 5000ms
    server PAM2 192.168.1.2:443 ssl verify none check inter 5000ms 


  • No labels