在Linux系统中,可以使用iptables或firewalld等工具来配置防火墙规则,以阻止恶意攻击。以下是使用这两种工具的基本步骤:
查看当前iptables规则:
sudo iptables -L -n -v允许必要的端口和服务:确保只开放必要的端口和服务,关闭不必要的端口。
阻止特定IP地址或范围:例如,阻止某个IP地址的访问:
sudo iptables -A INPUT -s 192.168.1.100 -j DROP阻止特定端口:例如,阻止TCP端口80和443以外的所有HTTP/HTTPS流量:
sudo iptables -A INPUT -p tcp --dport 80 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPTsudo iptables -A INPUT -p tcp --dport 443 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPTsudo iptables -A INPUT -p tcp --dport 80 -j DROPsudo iptables -A INPUT -p tcp --dport 443 -j DROP阻止SYN Flood攻击:
sudo iptables -A INPUT -p tcp --syn -m limit --limit 1/s -j ACCEPTsudo iptables -A INPUT -p tcp --syn -j DROP保存iptables规则:不同的Linux发行版保存iptables规则的方法不同。例如,在Debian/Ubuntu上:
sudo sh -c "iptables-save > /etc/iptables/rules.v4"在CentOS/RHEL上:
sudo service iptables save查看当前firewalld状态:
sudo firewall-cmd --state允许必要的端口和服务:例如,允许HTTP和HTTPS流量:
sudo firewall-cmd --permanent --add-service=httpsudo firewall-cmd --permanent --add-service=https阻止特定IP地址或范围:例如,阻止某个IP地址的访问:
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" reject'重新加载firewalld配置:
sudo firewall-cmd --reload查看firewalld规则:
sudo firewall-cmd --list-all/var/log/auth.log、/var/log/syslog等,以便及时发现异常活动。通过以上步骤,可以有效地使用Linux防火墙来阻止恶意攻击。