CentOS7下关于iptables导致的故障的一次对话

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS7下关于iptables导致的故障的一次对话相关的知识,希望对你有一定的参考价值。

一、故障现象:

    早上刚开电脑就接到朋友电话,说他的一台阿里云的服务器(CentOS7)无法登陆进去,让我帮忙看看,然后有了接下来的对话:

    我:“服务器昨天有做过什么操作没?比如iptables,阿里云的安全组策略调整”。

    他:“昨天下班前还好好的啊,我没动过什么啊。”

二、分析处理过程:

 检测1:开始ping那台服务器(发现没有包返回)

技术分享

检测2:查看远程连接端口是否开启(端口提示连接失败)

技术分享

检测3:登陆阿里云控制台(通过终端登陆系统)

技术分享

技术分享

检测4:点击“远程连接”,然后输入远程连接密码,进入终端

技术分享

检测5:登陆到终端(检测端口情况、网络访问情况等)

技术分享

端口是正常的(而且我确认安全组中22端口也是开放的),接着我觉得有必要检查下防火墙策略(虽然朋友一直跟我说没碰iptables)。

检测6:检查iptables的状态

技术分享

默认的出口策略居然是DROP,怪不得没有任何回应的包

技术分享

修改完后,重新测试下,发现立马可以登录了。

技术分享

接着我们开始下面的对话:

我:“防火墙的默认策略被调整了吧,我已经调整回来了,现在OK了”

他:“要不帮我把iptables关了吧”

我:“好的”

技术分享先清空相关策略,然后停止iptables服务(提示没服务找不到)

Failed to stop iptables.service: Unit iptables.service not loaded.

centos从7开始默认用的是firewalld,这个是基于iptables的,所有默认会有iptables的核心,但是iptables的服务是没安装的。

所以当你想使用iptables并且对它进行管理,需要安装iptables-service:

[[email protected] ~]# yum -y install iptables-services
[[email protected] ~]# systemctl stop iptables.service

关闭iptabls,设置开机不启动

技术分享

到此,整个处理过程就完成了。

三、小结:

1、线上调整iptables之前,最后在计划任务里面添加一条定期关闭iptables服务的命令(避免出现被被挡在门外的情况)。

2、我一般是在测试环境中先进行调试,确认无误后,然后才在生产环境中进行操作,这样误操作的概率会小很多。


本文出自 “冰冻vs西瓜” 博客,请务必保留此出处http://molewan.blog.51cto.com/287340/1969069

以上是关于CentOS7下关于iptables导致的故障的一次对话的主要内容,如果未能解决你的问题,请参考以下文章

Centos7下关于memcached的安装和简单使用

CentOS7.3下关于DHCP中继代理服务器的详细配置

Centos7配置iptables规则

nf_conntrack被启用导致服务故障

iptables原理及规则

iptables转发规则过多导致一些规则不生效?