由于一些公共组件例如redis,elasticsearch会有漏洞扫出,用户需要安全加固,使用升级组件方式加固,需要大量时间,并且所有客户端都需要更新,代价太大。因此统一针对组件的端口设置ip白名单,减少维护成本。cenos6和centos7的配置方式略有不同,因此分别总结。
查看cenos版本
cat /etc/redhat-release
1.启动防火墙
# 查看防火墙状态
service iptables status
# 停止防火墙
service iptables stop
# 启动防火墙
service iptables start
# 重启防火墙
service iptables restart
# 永久关闭防火墙
chkconfig iptables off
# 永久关闭后重启
chkconfig iptables on
2.修改配置文件
vi /etc/sysconfig/iptables
#针对6379端口的白名单配置
iptables -A INPUT -p tcp -s 10.128.55.162 --dport 6379 -j ACCEPT
iptables -A INPUT -p tcp -s 10.128.55.10 --dport 6379 -j ACCEPT
iptables -A INPUT -p tcp -s 192.168.169.52 --dport 6379 -j ACCEPT
iptables -A INPUT -p tcp -s 127.0.0.1 --dport 6379 -j ACCEPT
iptables -A INPUT -p tcp -s 0.0.0.0/0 --dport 6379 -j DROP
#针对8161端口的白名单配置
iptables -A INPUT -p tcp -s 10.128.55.190 --dport 8161 -j ACCEPT
iptables -A INPUT -p tcp -s 0.0.0.0/0 --dport 8161 -j DROP
3.重启防火墙
# 重启防火墙
service iptables restart
1、启动firewalld服务并设置开机自动启动,下面的命令必须在防火墙开启的状态下才可用 ,由于firewalld默认不是放行所有端口,所以启动firewalld会造成该机器的某些端口无法访问。
sudo systemctl enable firewalld
sudo systemctl start firewalld
# 更改防火墙默认区域为trusted,默认放行所有连接请求
sudo firewall-cmd --set-default-zone=trusted
2.新建一个zone,将想要访问本机80端口的ip,如:192.168.1.123 ,添加的这个zone中,同时在这个zone中放行端口。
sudo firewall-cmd --permanent --new-zone=newzone
3.配置ip白名单
sudo firewall-cmd --permanent --zone=newzone --add-source=10.98.201.1
sudo firewall-cmd --permanent --zone=newzone --add-source=10.98.201.10
sudo firewall-cmd --permanent --zone=newzone --add-source=10.98.201.11
sudo firewall-cmd --permanent --zone=newzone --add-source=10.98.201.12
4.配置开发的端口
sudo firewall-cmd --permanent --zone=newzone --add-port=7003/tcp
sudo firewall-cmd --permanent --zone=newzone --add-port=7004/tcp
sudo firewall-cmd --permanent --zone=newzone --add-port=7005/tcp
5.除192.168.1.123这个ip以外的地址访问本机时会使用当前默认的trusted这个zone里的规则,即禁止访问本机的80端口。
sudo firewall-cmd --permanent --zone=trusted --add-rich-rule="rule family="ipv4" port protocol="tcp" port="7003" drop"
sudo firewall-cmd --permanent --zone=trusted --add-rich-rule="rule family="ipv4" port protocol="tcp" port="7004" drop"
sudo firewall-cmd --permanent --zone=trusted --add-rich-rule="rule family="ipv4" port protocol="tcp" port="7005" drop"
6.重启防火墙
sudo systemctl restart firewalld
也可以重载配置
firewall-cmd --reload
7.查看配置是否生效
sudo firewall-cmd --list-all-zone
sudo firewall-cmd --list-all
也可以直接查看配置文件
vi /etc/firewalld/zones/public.xml
#添加指定需要开放的端口:
firewall-cmd --add-port=123/tcp --permanent
#重载入添加的端口:
firewall-cmd --reload
#查询指定端口是否开启成功:
firewall-cmd --query-port=123/tcp
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="172.16.110.55" accept"
#重新载入
firewall-cmd --reload
#来源
Centos7防火墙放行指定IP和端口 - 园子里的瓜 - 博客园
1. 查看防火墙端口开放列表
firewall-cmd --list-all
2. 指定ip端口
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.1.100" port protocol="tcp" port="3306" accept"
连续端口
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.1.100" port protocol="tcp" port="3306-3309" accept"
ip网段
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="3306" accept"
3.重新载入,使配置生效
firewall-cmd --reload
4.删除规则
firewall-cmd --permanent --remove-rich-rule="rule family="ipv4" source address="192.168.1.100" port protocol="tcp" port="3306" accept"
来源:
https://www.csdn.net/tags/Mtjacg1sMjgyNTMtYmxvZwO0O0OO0O0O.html
1、开放端口
firewall-cmd --zone=public --add-port=5672/tcp --permanent # 开放5672端口
firewall-cmd --zone=public --remove-port=5672/tcp --permanent #关闭5672端口
firewall-cmd --reload # 配置立即生效
2、查看防火墙所有开放的端口
firewall-cmd --zone=public --list-ports
来源
Centos7开放及查看端口 - heqiuyong - 博客园