Mysql

安全的 MySQL 複製;SSL 還是 SSH 隧道?

  • April 21, 2011

我在兩台伺服器之間設置了 Master-Master MySQL 複製設置。我即將將一個移動到另一個位置,因此複製將通過 Internet 進行,並且 - 當然 - 需要得到保護。

據我所知,我基本上有兩種選擇:

  1. 在 MySQL 複製中使用內置的 SSL 支持。
  2. 使用 SSH 隧道轉髮用於複製的埠。

選擇其中一個是否有顯著的安全性、性能或維護優勢?

下面的輸出讓我覺得我根本不能使用選項 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 複製。

我發現使用內置功能通常比嘗試嫁接獨立的安全層(例如SSH)更乾淨。您定制的越多,您在建構、調試、監控和修復它方面要做的工作就越多,如果它沒有按預期執行,那麼第三方(例如郵件列表)就越難為您提供幫助。

呃,這個沒有明確的答案。

使用嵌入式 ssl 包裝器是一種成本較低的方法 - 但您可能會將繁重的 msyql 程序與網路 I/O 捆綁在一起 - 但如果您要復製到許多其他盒子和/或您,這才是真正的問題記憶力很緊。通過一個額外的程序路由流量會增加非常少量的延遲 - 但如果這些盒子位於不同的網路中,這不太可能是顯著的。

如果是我,我會將程序內 SSL 的優點與完整的 VPN 連結(不一定基於 ssh)進行比較。後者不僅支持 mysql 複製(私有網路 DNS/LDAP、遠端訪問、日誌記錄……),而且使用 NAT 實現(例如通過 ssh/ssl 執行 ppp)可以快速重新調整以跨備用路由。這種方法還提供了對通信問題的更簡單和更一致的診斷。

引用自:https://serverfault.com/questions/261972