Centos7防火墙放行指定IP和端口方式

发布时间 2023-10-26 17:47:33作者: 尐鱼儿

https://www.jb51.net/server/286297zj1.htm#_lab2_0_1

 

防火墙是整个数据包进入主机前的第一道关卡。为了安全起见,一般把防火墙打开,如果没有开放相应策略,则其他服务器无法访问。

现在我有3台服务器,他们相互需要访问对方的服务,关闭防火墙后,他们之间的通信就出现了问题,如果单纯开放指定端口,由于服务太多,要开放的端口也多,我觉得太麻烦了,所以我放行了他们之间的IP,让他们三台之间能够互相访问,没有限制。

这样,我整套系统没有通信问题了,能够正常运行起来。现在系统跑起来了,但是外界并不能访问到web界面,所以还需要把web服务的端口开放出来。

1、放行指定端口

#添加指定需要开放的端口:

firewall-cmd --add-port=443/tcp --permanent
#重载入添加的端口:
firewall-cmd --reload
#查询指定端口是否开启成功:
firewall-cmd --query-port=123/tcp
 

2、放行指定IP

firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="172.16.110.55"   accept" 

#重新载入
firewall-cmd --reload
 
查看iptables策略
iptables -L
 

对应文件在/etc/sysconfig/iptables,如果找不到

执行service iptables save,如果上述命令执行失败报出:

The service command supports only basic LSB actions (start, stop, restart, try-restart, reload, force-reload, status). For other actions, please try to use systemctl.

解决方法:

#安装或更新

yum install iptables-services
#再执行
service iptables save
执行完毕之后/etc/syscofig/iptables文件就有了

 

centos7 firewall指定IP与端口、端段访问(常用)

1、启动防火墙

systemctl start firewalld.service

2、指定IP与端口

 firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.142.166" port protocol="tcp" port="5432" accept"

3、重新载入,使配置生效

 systemctl restart firewalld.service

4、查看配置结果

 firewall-cmd --list-all

5、删除规则

 firewall-cmd --permanent --remove-rich-rule="rule family="ipv4" source address="192.168.142.166" port protocol="tcp" port="11300" accept"
 

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。