开发者社区> 问答> 正文

Linux开启防火墙配置iptables打开3306端口远程访问不了MySQL

查了各种资料,包括设置安全组、设置防火墙开放3306端口啥的
但是只有关闭防火墙才能访问到MySQL

我配置了安全组,出方向入方向都加了3306,然后发现并没什么卵用
1

然后打开iptables(通过vi /etc/sysconfig/iptables)文件
添加“-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT”
这样的命令 然而还是没用(我同时加了3306端口和4999端口)
2

我查看了一下3306端口的监听。。。然而我看不懂,端口冲突还是没问题?
查了4999端口结果啥也没有
image

我用telnet测试端口打没打开(服务器防火期启动状态)
发现我通过iptables和安全组设置的3306端口和4999端口都打不开
image

如果我关闭防火墙,MySQL是可以访问的,但4999还是不能访问
请问这种情况该怎么办呢,要怎么设置我的端口呢,iptables和安全组似乎都没作用,我的步骤有问题?

展开
收起
roucyonly 2017-09-08 20:47:21 16803 0
2 条回答
写回答
取消 提交回答
  • 将命令iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT 中的-A 改为 -I 然后执行service iptables save 和 service iptables restart 即可解决

    2019-11-27 23:46:01
    赞同 2 展开评论 打赏
  • 安全组设置没有问题。
    如果防火墙关闭了,3306端口通了,说明就是防火墙屏蔽了端口,再检查下你添加的规则。
    4999端口还是不通,说明本身应用就没有监听在这个端口,可以netstat -ano看下。

    2019-07-17 21:34:27
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
搭建电商项目架构连接MySQL 立即下载
搭建4层电商项目架构,实战连接MySQL 立即下载
PolarDB MySQL引擎重磅功能及产品能力盛大发布 立即下载