iptables -nvL --line-number
,2. 添加防火墙过滤规则(设置白名单):iptables -I INPUT [选项] [链名] [地址/端口/协议]
,iptables -I INPUT 192.168.1.100/32
,这将允许IP地址为192.168.1.100的主机访问所有端口。,3. 保存防火墙配置:service iptables save
什么是Linux防火墙
Linux防火墙是一种用于保护Linux操作系统和网络服务的安全工具,它可以监控进出网络的数据流,并根据预先设定的规则允许或拒绝特定的数据包,Linux防火墙可以帮助防止未经授权的访问,保护内部网络免受外部攻击,以及限制对特定服务的访问。
为什么需要设置白名单
在Linux系统中,我们可能会遇到这样的情况:某些特定的IP地址或者端口号需要被允许访问我们的服务器,但是直接使用防火墙规则设置会非常繁琐,这时,我们就需要使用白名单功能,将需要访问的IP地址或者端口号添加到白名单中,这样就可以简化防火墙规则的设置过程。
如何设置Linux防火墙白名单
以iptables为例,我们可以按照以下步骤设置Linux防火墙白名单:
1、查看当前防火墙规则:
sudo iptables -L -n -v
2、添加白名单规则:
sudo iptables -A INPUT -p tcp --dport 80 -s 192.168.1.100 -j ACCEPT
这条命令表示允许IP地址为192.168.1.100的主机通过TCP协议访问本机的80端口。-A INPUT
表示将规则添加到INPUT链,-p tcp
表示协议类型为TCP,--dport 80
表示目标端口为80,-s 192.168.1.100
表示源IP地址为192.168.1.100,-j ACCEPT
表示接受符合规则的数据包。
3、保存防火墙规则:
sudo service iptables save
4、重启防火墙服务:
sudo service iptables restart
相关问题与解答
Q1:如何删除已添加的白名单规则?
A1:可以使用以下命令删除已添加的白名单规则:
sudo iptables -D INPUT -p tcp --dport 80 -s 192.168.1.100 -j ACCEPT
这里的参数与添加规则时相同,只需将命令中的“-A”改为“-D”即可。
Q2:如何批量添加多个白名单规则?
A2:可以使用for循环遍历一个包含IP地址和端口号的文件,然后为每个IP地址和端口号添加一条白名单规则,假设我们有一个名为whitelist.txt的文件,内容如下:
192、168.1.100 80 192、168.1.101 8080
那么我们可以使用以下脚本批量添加白名单规则:
!/bin/bash while read line; do ip=$(echo $line | cut -d' ' -f1) port=$(echo $line | cut -d' ' -f2) sudo iptables -A INPUT -p tcp --dport $port -s $ip -j ACCEPT done < whitelist.txt
将此脚本保存为add_whitelist.sh,然后给予执行权限并运行:
chmod +x add_whitelist.sh sudo ./add_whitelist.sh
原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/252562.html