У меня есть настройка репликации Master-Master MySQL между двумя серверами. Я собираюсь переместить один в другое место, поэтому репликация будет осуществляться через Интернет и, конечно же, должна быть защищена.
Насколько я могу судить, у меня есть два варианта:
Есть ли значительные преимущества в безопасности, производительности или обслуживании при выборе одного по сравнению с другим?
Приведенный ниже вывод заставляет меня думать, что я вообще не могу использовать вариант 1. Однако мне все же хотелось бы знать плюсы и минусы каждого из них.
РЕДАКТИРОВАТЬ: Я посмотрел дальше, и у меня есть поддержка ssl. Он сейчас просто отключен.
mysql> SHOW VARIABLES LIKE '%ssl%';
+---------------+----------+
| Variable_name | Value |
+---------------+----------+
| have_openssl | DISABLED |
| have_ssl | DISABLED |
| ssl_ca | |
| ssl_capath | |
| ssl_cert | |
| ssl_cipher | |
| ssl_key | |
+---------------+----------+
7 rows in set (0.00 sec)
Спасибо за любую помощь / совет.
эм, нет четкого ответа на этот вопрос.
Использование встроенной оболочки ssl - это подход с меньшими накладными расходами, но вы потенциально связываете тяжелые процессы msyql с сетевым вводом-выводом, но это действительно проблема только в том случае, если вы реплицируете на множество других устройств и / или вы ' Re очень плотно для памяти. Маршрутизация трафика через дополнительный процесс добавит очень небольшую задержку, но если блоки находятся в разных сетях, это вряд ли будет значительным.
Если бы это был я, я бы сравнил достоинства внутрипроцессного SSL с полным VPN-соединением (не обязательно на основе ssh). Последний будет поддерживать больше, чем просто репликацию mysql (DNS / LDAP частной сети, удаленный доступ, ведение журнала ...), и использование реализации с NAT (например, запуск ppp через ssh / ssl) можно быстро перенастроить для работы через резервный маршрут. Этот подход также обеспечивает более простую и последовательную диагностику проблем связи.
Я предпочитаю SSL-репликацию.
Я считаю, что обычно проще использовать встроенные функции, чем пытаться внедрить независимый уровень безопасности (например, SSH). Чем больше вы настраиваете, тем больше работы вам нужно сделать по созданию, отладке, мониторингу и исправлению, и тем сложнее сторонним лицам (например, спискам рассылки) помочь вам, если они не работают должным образом.
Согласно документации MySQL, у вас может не быть включен SSL. Пожалуйста, взгляните на http://dev.mysql.com/doc/refman/5.1/en/secure-using-ssl.html и как начать работу на сервере ... Кроме того, MySQL предоставляет хороший справочник по репликации MySQL с помощью SSL на http://dev.mysql.com/doc/refman/5.1/en/replication-solutions-ssl.html ...