00:00
大家好,今天来介绍一下MYSQL安全组的设置。那最近有一个网友在问一个问题,就是腾讯云的数据库是否在开启外网之后,任何主机都可以访问,无法限制可以访问的IP,那结论肯定是否,那可以通过安全组来限制IP的访问,但是这里边儿我要强调一下,是不推荐啊数据库开启外网,并通过外网来访问你的数据库的,因为这是非常的不安全的。但是如果你要是测试的话也是可以的,那这节课呢,我们就来介绍通过安全组如何来限制指定的IP访问。那这里我画了一个图,那上面这个大的云呢,其实就是腾讯云,那腾讯云下边有很多的这种子网,比如说MYSQ的子网,然后安全组和虚拟主机,还有CRB,就是这个转发负载均衡,那通常我们在访问呃麦服务的时候,你如果要是开启了外网,它会给你一个随机的端口,你在访问那个随机的端口的时时候呢,其实他就是把你的这个请求转发到了内部的MYSQL的3306端口上。其中在访问的过程中呢,它会经过安全组,所以我们可以在安全组这个位置设置安全组的规则,来达到限制不同的IP访问的这样一个效果,那我稍等就会来演示一下这个效果,首先呢,就是我本地的MacBook和广州的云主机,因为我买了一台广州的云主机都可以访问CLB。
01:18
那我要加一条规则,让其他人和啊,我本地的MacBook都访问不了,只允许广州这个CBM主机去访问,因为广州的CDM主机是一个固定的IP,那这样呃,开启这样的规则以后,相对来说会更加的安全。好,那我当前呢,已经买了一台这个MYSQL的实力,同时呢,我也购买了一台这个州的云主机,那稍等呢,我就要通过这个广州的云主机,只能限制这个IP访问我的MYSQL,好,那我们先开启公网。OK,已经进到了这个MYSQL的实例的一个实例详情,那我们可以看到这个位置有一个外网地址,我们可以点击开启,那点击开启的时候呢,系统就已经提示你了,启动后呢,可能分配的端口和域名通过外可以通过外网来访MYS,但是它的一个生效时间大概是五分钟,然紧接着的话就是MYSQL外网访问仅适用于开发或辅助的系统管理业务访问,请使用内网。
02:15
啊,业务请求请使用内网访问,那第三个的话就是呃,腾讯云的MYSQ外网可以,呃,开通后将受到安全组访问策略控制,配置安全策略时需要开通3306端口,也就是MYSQL的一个默认端口,那如果你要是改了MYSQL的默认端口,那安全组在配置的时候也要设置相应你改的那个端口,OK,那没有问题的话,我们点击确定。那这时呢?系统呢,就会开启这个外网地址,其实它就是增加了一个CLB,当我们访问这个。呃,域名加这个端口的时候呢,其实就是访问的CLB,它通过呃这个域名和指指定的端口映射到这个MYSQL3306端口上,大概是这样一个流程,好,那我现在先来测试一下。Telnet要看那个端口是否通。
03:01
好,我把域名复制进来,T一下这个啊,地址啊,复制一下这个。回圈一下啊,大家可以看到当前没有通,那其实就是安全组并没有生效,因为刚刚系统已经提示你了,要去设置安全组,开启3306端口,那我们可以回到这个控制台啊,数据库实例的一个控制台啊,当前是在这个啊实例详情中,我们点击安全组。OK,点击安全组以后,我们可以看到当前安全组的一个规规则啊,入站的规则,那我们怎么去配置呢?我们点击这个编辑,那当前这个界面呢,就进入到了安全组的一个配置的界面,那安全组是什么呢?其实它就一个防火墙,那我们可以看到之前的这个截图,其实它就是一个防火墙,那进入到安全组的一个配置规则界面呢?它就包含了入站规则和出站规则,那我们可以在入站规则这个位置点击添加规则,我们在自定义列表中点击下拉列表,看到MYSQL3306,看到了吧,我们选择啊。来源呢是or,然后协议呢,3306,然后允允许它访问点击完成。
04:01
好,这时系统呢,就增加了两条规则,你看是5月16号的23:20,也就当前那个时间点,它增加了两条规则,一一条规则呢,是开通了IPV6协议的访问啊,协议是TCP的访问,3306的一个规则,另外一个是开通了IPV4的访问,协议是TCP3406的一个准许规则,那其实这个请求就是会经过这个规则从上往下,那会去一一匹配,那最后呢,如果。都没有匹配到这个允许规则则的话,就会走到这个默认规则,变成了拒绝,所以看我们当前呢,已经增加了3306端口的访问,我再次回到我的广州的云主机,我可以在telnet大厦,大家可以看我们当前呢已经可以访问通了哈,可以访问通了,那我可以试着masco-H。加远程的地址啊,杠u root-P杠大P就是远程的这个随机的端口。我们输入密码。大家可以看到我当前呢,已经访问到了腾讯云,我们在腾讯云上买的一个麦克的一个云主机实例,但是当前我们是通过公网来访问的,相对来说不是很安全,那这是在广州的这个云主机上访,我再到我的本地的机器上来看一下啊。
05:09
输入MYSQL。这是我本地的MacBook,我输入回车,呃,输入密码以后呢,点击回车,我同样可以连接到呃,远程的MYSQL实例,那其实也就说明了什么,说明了这个安全组呢,当前是允许所有的IP来访问这个MYSQL的,那相对显然就是非常不安全的,像这个网友说的。啊,非常不安全的,那我们如何来加这个限制呢?我们回到这个控制台。我们只要在这这个位置点击编辑规则。点击编辑规则以后呢,我把我的广州的。这服务器的公网。出口的IP填到这个位置。点击保存。OK,那当前的这个规则什么意思呢?只允许来自这个IP的。
06:01
公网是这个IP的来源,是这个IP的来访问,我们的MYSQL端口是允许的,如果其他的IP就会变为拒绝。好,其他的IP就会变为拒绝,所以我们再测试一下,看一下效果,那我们就直接t net来模拟这个登录的过程啊,大家可以看到啊,这个端口还是可以通的,那我就回到我们的。这个。我的MacBook上我TNE一下这个远程,待会大家可以看一下效果,那当前的已经访问不通了,说明什么?说明我们当前这个安全组的规则已经生效。那如果我们要是增加更多的啊。IP怎么增加的?其实就是在这里。点击添加规则。比如说我在准许幺。202.106.184.183。接待服务器访问我的。3306端口。我的远程服务器。点击保存。那又加了一条规则,其实那加完这条规则呢,也就是说只准许这这个IP和这个IP来访问我的MYSQL实例,那除了这两个IP以外呢,是不可以访问我的MYQ实例的,当当然这里边有一个IPV6可以把它删掉,为了更安全的话,因为IPV6并没有设置具体哪个IPV6地址,默认是所有的IPV6地址都可以访问,接到34006端口,那当前呢,将它删掉。
07:25
那这样一来我们就配置完了,只允许啊指定的IP来访问我们的MYSQL实例。好,那这节课就到这里。如果你喜欢这个视频,也欢迎在视频的下方点赞关注加评论,谢谢观看。
我来说两句