Назад | Перейти на главную страницу

Haproxy для перенаправления Mysql с помощью ssl

Я смотрю, можно ли использовать haproxy для балансировки серверов mysql с ssl. Только я нахожу, как использовать с http, но в этом случае нам нужно включить эту опцию.

На данный момент конкретная конфигурация

listen mysql-cluster
   bind 0.0.0.0:3307 ssl crt /etc/ssl/certs/cert.pem
   mode tcp   
   option mysql-check user admin  
   server mysql1 192.168.1.110:3307

Какие параметры мне нужно использовать для прямого подключения к серверам без внешнего интерфейса?

Если я прокомментирую ssl-часть

   bind 0.0.0.0:3307 #ssl crt /etc/ssl/certs/cert.pem

Подключаемся идеально, так что мне нужно добавить?

Отсутствует одна важная информация: какой у вас клиент, как вы подключаетесь к серверу Mysql с haproxy-ssl-прокси?

В вашей конфигурации Haproxy не «говорит» mysql, он говорит только TCP, добавление опции SSL добавит общий уровень SSL поверх потока TCP, который будет пересылаться как есть.

Если вы используете стандартный клиент mysql, это не сработает, обработка SSL является «родной» в протоколе mysql и, скорее всего, не просто «обволакивает» поток с использованием уровня SSL, поэтому он не будет работать с вашей настройкой.

Если вы сохраните эту конфигурацию, вам понадобится что-то вроде stunnel на другом конце вашего соединения, чтобы предоставить клиентам собственный поток без SSL.

Вы должны настроить свой сервер mysql с действующей конфигурацией SSL и использовать haproxy в режиме tcp + прокси-протокол для делегирования всего и исходного IP-адреса вашему mysql