CentOS7配置最基本的web环境——诡异的iptables


因为想试试Sphinx,所以装了个CentOS7的虚拟机。

前面很简单,官方下载一个新的镜像就可以,我用的64位的。

安装好后,ifconfig可以看到ip地址,VMware选择桥接才可以让主机连接虚拟机。

root进入系统后,尝试用主机连接ftp,成功!

尝试http,失败。于是开始检查httpd配置,没发现可疑,最后找到了防火墙,也就是iptables。

iptables -A OUTPUT -p tcp --sport 80 -j ACCEPT

执行后,web正常。

连接Mysql(其实是MariaDB,CentOS使用MariaDB替换了Mysql,不过还好,一切都一模一样),失败。

本地登录 mysql -u root -p成功,于是

iptables -A OUTPUT -p tcp --sport 3306 -j ACCEPT

再次远程连接Mysql,成功。(这里省略了在mysql里执行GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '111111' WITH GRANT OPTION;)

于是开始捣鼓iptables。

iptable stop

重启后问题依旧

iptables -A OUTPUT -p tcp --sport 80 -j ACCEPT

iptables -A OUTPUT -p tcp --sport 3306 -j ACCEPT

service iptables save

重启后问题依旧

chkconfig –level 35 iptables off

重启后,问题依旧。

systemctl disable iptables.service

重启后问题依旧

启动后

service iptables status可以看到iptables服务确实关闭了,但规则还是生效,郁闷了。

在/etc/sysconfig/下可以找到iptables的配置文件,在文件里添加了

-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT

重启后,问题依旧。

最后妥协了,暂时先每次重启打两行命令吧!

相关内容