家里 ADSL
上网,没有办法分配固定外网 IP
,现在想使用群晖自带的MariaDB
安全实现与公网 MySQL
服务器主从同步。
最大的问题实际上是如果暴漏 MySQL
服务器的端口,但是不限制来源 IP
地址的话,会造成非常大的安全隐患。
但是, ADSL
恰恰不能提供固定的 IP
地址,我们需要解决这个问题。如果通过在公网数据库服务器上搭建 OpenVPN
服务器的方式,我们恰恰可以把内外网的设备影射到同一个子网中,而且 OpenVPN
提供的加密服务支持,刚刚好满足我们的安全需求。
注意:一旦配置主从同步,磁盘的休眠会被MySQL的同步写入打断,导致磁盘不能正常休眠,毕竟正常情况下数据库是持续写入的,不存在很长时间的停顿。这样会导致磁盘周期性的咔咔寻道声,尤其是晚上。
噪声问题,参考 群晖(Synology) DS718+希捷酷狼(Seagate IronWolf)12TB空闲发出持续噪声
1. 参考 Ubuntu架设OpenVPN实现内网穿透 搭建整个的 OpenVPN
服务器。映射完成后,设备上会新增一个名为 tun0
的网卡设备。同时所有连接到 VPN
服务器的设备都被被影射到 10.8.0.X
的网段。 公网服务器的地址默认是 10.8.0.1
,本文中, 群晖NAS的地址被设定为 10.8.0.7
。
2. 配置防火墙规则,许可来自指定网卡指定地址的设备的访问。注意,此处一定要指定网卡为 OpenVPN
创建的虚拟网卡,否则造成安全隐患。
3. 参照 ubuntu 16.04配置基于SSL的MySQL主从同步 配置服务器
4. 接下来是群晖NAS的配置
首先是群晖服务器上没有 MySQL
,需要安装 MariaDB
,如下图:
继续阅读家里ADSL上网无固定外网IP的群晖NAS安全实现与公网MySQL服务器主从同步