linux服务器如何屏蔽ip
linux服务器如何屏蔽ip详细介绍
在 Linux 服务器上屏蔽 IP 地址的方法有多种,以下是几种常见的实现方式:
一、使用防火墙工具(推荐)
1.
iptables(传统防火墙)
适用于大多数 Linux 发行版,通过配置规则阻止特定 IP 访问:
bash
iptables INPUT .1.100 DROP
iptables INPUT .1.0/24 DROP
iptables save
iptables-save /etc/iptables/rules.v4
2.
firewalld(CentOS/RHEL 7+)
使用更简单的命令管理防火墙规则:
bash
firewall-cmd --add-rich-rule
firewall-cmd
3.
ufw(Ubuntu/Debian)
简化版防火墙工具:
bash
ufw deny from .1.100
ufw
二、使用 hosts.deny 文件(针对特定服务)
适用于基于 TCP wrappers 的服务(如 sshd、httpd 等):
bash
/etc/hosts.deny
sshd: .1.100
all: .1.0/255.255.255.0
三、封禁特定端口的 IP(针对 DDOS 攻击)
针对特定端口(如 80、443)的大量连接,可结合iptables和conntrack:
bash
iptables INPUT tcp connlimit --connlimit-above REJECT
iptables INPUT tcp recent BAD_HTTP_ACCESS DROP
四、验证屏蔽效果
bash
iptables
firewall-cmd --list-all
ufw status
/etc/hosts.deny
注意事项
- 谨慎屏蔽 IP:确保屏蔽的是恶意 IP,避免误封自己或合法用户。
- 备份配置:修改防火墙前先备份现有规则,避免意外中断服务。
- 远程管理风险:如果通过 SSH 远程管理服务器,切勿屏蔽自己的 IP。
- 持久化规则:部分防火墙规则重启后会丢失,需使用
save或permanent选项确保规则持久化。
根据实际需求选择合适的方法,推荐优先使用防火墙工具(如firewalld或ufw),因为它们更易于管理且支持动态规则。