关于linux 命令“iptables -F”,不要轻易执行

一、文章背景

    昨天在公司服务器的linux开发环境里,部署了几个spring boot项目和nginx代理,都成功启动后,发现本地无法访问(Xshell是可以连接的)。于是各种纳闷,网上搜解决方案。其实最先想到的当然是防火墙是否是开启的状态,但是输入查询防火墙状态的命令,发现没有权限。继续搜索后,发现了一篇文章,最关键的一点,说是执行命令“iptables -F”就可以解决。在迫切想解决的心理下,不管三七二十一执行了这条命令,没一会,发现Xshell断开了连接,然后就一直连接不上了。我以为是服务器挂了,所以就一直等待。

二、问题确认

    今天上班后,发现服务器还是无法连接,所以我再上网去查了这条命令,发现是一个巨大的坑。对于不熟悉linux系统的开发人员,绝对是一个“大杀器”。这条命令如果是在drop策略下被执行了,那么恭喜你,你肯定连接不上了服务器了。联系管理员重启吧。

三、解决方案

    通过命令【sudo iptables -L | more】查看防火墙策略,如果输出内容为【Chain INPUT (policy DROP)】,再输入命令【sudo iptables -P INPUT ACCEPT】修改策略,再执行命令【sudo iptables -L | more】确认策略为【Chain INPUT (policy ACCEPT)】后,再执行【sudo iptables -F】可清除所有规则来暂时停止防火墙。

    PS:在有互联网的情况下,服务器最好还是开启防火墙,最近和以后,网络安全都是信息行业最重要的高压线。

 

你可能感兴趣的:(linux)