记一次MySQl访问限制,使用开关登陆外网

场景:因CTO需要手动直接更改客户资料要登陆数据库。(不要说啥,让登陆数据库不安全....)

但是直接授权数据库又感觉也是不安全

grant all on 库.* to CTO@"%" identified by "password";    (允许所有IP访问,也不安全) 

grant all on 库.* to CTO@"IP" identified by "password";   (虽然这个授权 只允许某个IP登陆,但我想说,公司外网IP会变,鬼知道会变成什么,所以也行不通)

因为主机用的云,不存在什么内网。而CTO用MySQL图形工具,要使用公网IP才能连接。

为了运维的人身安全(数据被其他人入侵,然后没了?),决定在想个办法。

------------------------------------------------------------------------------------------------------------------------------

解决方法:

因为云服务器,可以添加扩展网卡(既使用双网卡方式)

服务器使用是2台,1web+1mysql

web服务器使用(第二个网卡)私网IP直接连接mysql

将公网IP绑定在第一个网卡上,因为web和mysql连接是使用第二个网卡IP 所以第一个网卡如果down掉也可以传输数据

所以也可以直接授权了

grant all on 库.* to CTO@"%" identified by "password";  

思路:

在web服务器上 写脚本  (用脚本控制mysql服务器的公网网卡)

ssh root@第二个网卡IP地址 "ifup 第一个网卡名字"    (打开网卡命令)

ssh root@第二个网卡IP地址 "ifdown 第一个网卡名字"    (关闭网卡命令)

(上面命令要使用密钥方式连接 不然需要输入密码)

给 CTO 2个按钮,一个开启公网网卡连接,一个关闭公网网卡连接


当CTO需要改数据库  就登陆一个web页面 点击开启,公网网卡开启

修改完成 点击关闭 网卡关闭   公网连接自然就断开。

web页面会写的自己写,不会就让开发写。很简单,写的点击按钮能调用脚本就行

或者用jenkins(构建任务,注意jenkins的用户安全和权限控制)。




  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值