Java教程

关于防火墙的记录

本文主要是介绍关于防火墙的记录,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

 

2022-08-10

记录一次,关于因为不熟悉防火墙,搞出的乌龙事件。

事件原由:

项目中有用到 es,当时遇到的问题是,es 的服务启动着,本机可以访问,但外网就不能访问了,网上找了挺多资料,说改一下配置就行了(这个网上的策略都大差不差,此处略),但按照网上说的策略操作,就是没有效果,想到会不会是防火墙的问题?9200这个端口没有只针对个别Ip进行开放?

于是找到了一个解决方案:

firewall-cmd --zone-public --add-port=9200/tcp --permanent
systemctl restart firewalld.service

这个语句,是往防火墙添加了9200这个tcp端口,允许对9200的访问(虽然当时也不是特别清楚这语句的意思)

然后,执行了,没效果!

emmm,再然后发现,原来可以访问的服务,也访问不了了。。。nginx都访问不了了,疯了!!!!!

(好在不是生产环境!!!非专业运维人员,真的不要随便动生产!!!!)

 

糟糕了糟糕了,nginx 的端口都访问不了,怎么办呢?

好奇怪啊,好像也没干嘛呀。。。

 

解决:

折磨了好久,当时也很多人在等着使用服务,超级尴尬了。

不知道为什么,竟然搞了很久都没想过向运维人员求助,总觉得自己可以搞好(迷之自信)。

emmm,终于想起应该向运维人员求助的时候,已经过去好大半小时了。

运维同学,看了一下,就说了一句,这两台服务器之前是设置的 iptables , 并不是用的 firewall。。。但我这语句把 firewall 开启了,反而把iptables 给干没了(应该是 firewall的优先级比iptable要高吧?)

吐血了!!!!

因为不懂而执行的语句,把整个服务都给搞崩了。怎么办呢?

(1)先把firewall stop 掉: systemctl stop firewalld.service 

(2)再尝试一下,在浏览器请求web服务,看是否可以请求了

(3)浏览器请求, 发现 502 ,说明 nginx 已经能够被访问,但还有服务不行。嗯?原来是有登录服务是部署在另外一台服务器(一样被我弄坏了,把防火墙搞起来,只能本机访问,其它Ip全部不允许访问)。于是去另外一台服务器,把 firewalld.service 停下来后,也就恢复了。

(4)现在就还存在一个问题,现在服务都是没有防火墙,也没有设置 iptables 的。即好像在裸奔的感觉。怎么办。(现在只能先把防火墙拉起来,明天再把iptables 设置起来了)

 

以后不清楚的指令,还是别随便弄,特别是运维层面,一旦搞坏了,就是整个环境的问题了。

 

这篇关于关于防火墙的记录的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!