原文参考:
https://blog.csdn.net/qq_36657175/article/details/126624155
https://blog.csdn.net/m0_46282787/article/details/129165900
一、firewalld白名单配置(限制ssh登录)解决openSSH漏洞问题
1. systemctl start firewalld.service //开启防火墙
2. firewall-cmd --permanent --zone=public --remove-service=ssh //限制远程登录
3. firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="10.242.0.118" port protocol="tcp" port="22" accept" //添加22号端口白名单
4. firewall-cmd --reload //重启生效
二、firewall 添加、删除白名单
添加白名单
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="127.0.0.1" port protocol="tcp" port="3306" accept" //添加3306号端口白名单
移除白名单
firewall-cmd --zone=public --remove-rich-rule 'rule family="ipv4" source address="127.0.0.1" port port=3306 protocol=tcp reject' --permanent
重启防火墙后生效:
firewall-cmd --reload
三、iptables 添加白名单
sudo iptables -I INPUT -m state --state NEW -m tcp -p tcp -s 10.32.123.1 --dport 3306 -j ACCEPT
sudo:用于普通用户提权为管理员,一般可不添加
-I:添加规则的参数
INPUT:表示外部主机访问内部资源
-m state --state :连接状态,包括(NEW|ESTABLISHED|RELATED|INVALID)
NEW:3次握手的第一次,一次新的请求
ESTABLISHED:二次握手以后,连接断开之前的连接
RELATED:相关连的状态,可解决控制ftp连接等复杂的协议
INVALID:无法识别的状态
-p: 用于匹配协议(通常有3种,TCP/UDP/ICMP)
-s:指定源地址,须填写IP,不能填主机名称
--dport: 用于匹配目标端口号
-j: 用于匹配处理方式:
ACCEPT:允许数据包通过
DROP:直接丢弃数据包,不给出任何回应信息
四、查看白名单添加结果
firewall-cmd --list-all
或
iptables -nL