要禁止特定IP访问Linux系统,可以使用以下命令:
iptables -I INPUT -s IP_ADDRESS -j DROP
其中,IP_ADDRESS是您要阻止的IP地址。例如,要阻止IP地址192.168.1.100访问您的系统,您可以使用以下命令:
iptables -I INPUT -s 192.168.1.100 -j DROP
此命令将在INPUT链中插入一条新规则,该规则将丢弃来自192.168.1.100的所有数据包。您还可以在OUTPUT或FORWARD链中使用-A(附加)参数添加规则,以阻止从您的系统发送数据包或转发数据包到特定IP地址。
查看被阻止的IP地址
要查看当前被阻止的IP地址,可以使用以下命令:
iptables -L INPUT -n
此命令将列出INPUT链中所有规则,包括您添加的禁止IP地址的规则。您还可以使用-A或-F(刷新)参数来查看或刷新OUTPUT或FORWARD链中的规则。
删除被阻止的IP地址
要删除被阻止的IP地址,可以使用以下命令:
iptables -D INPUT -s IP_ADDRESS -j DROP
其中,IP_ADDRESS是您要允许的IP地址。例如,要允许IP地址192.168.1.100访问您的系统,您可以使用以下命令:
iptables -D INPUT -s 192.168.1.100 -j DROP
此命令将从INPUT链中删除阻止IP地址192.168.1.100的规则。您还可以使用-A或-F(刷新)参数来删除OUTPUT或FORWARD链中的规则。
其他注意事项
在使用iptables禁止IP访问时,需要注意以下几点:
iptables规则不会永久存在,在重新启动系统后将被清除。要使规则永久存在,可以使用iptables-save和iptables-restore命令将规则保存和还原。
iptables规则可以在多个链中应用。INPUT链用于阻止传入流量,OUTPUT链用于阻止传出流量,FORWARD链用于阻止转发流量。
iptables规则使用不同类型的目标。DROP目标丢弃数据包,ACCEPT目标允许数据包,REJECT目标拒绝数据包并发送错误消息。