使用iptables或firewalld可限制IP访问,如iptables -A INPUT -s 192.168.1.100 -p tcp --dport 22 -j DROP禁止SSH访问,firewalld通过rich rule拒绝指定IP,也可通过/etc/hosts.deny限制服务级访问。

在Linux系统中,可以通过防火墙工具来限制某个IP访问特定服务。最常用的方式是使用 iptables 或 firewalld。以下是具体操作方法。
iptables 是 Linux 内核中强大的网络包过滤工具,可以直接控制进出系统的网络流量。
假设要禁止 IP 地址 192.168.1.100 访问本机的 SSH 服务(端口 22),可以执行以下命令:
注意:DROP 表示直接丢弃数据包,对方无响应;REJECT 会返回拒绝信息。

firewalld 是动态防火墙管理工具,支持区域(zone)概念,便于管理不同来源的访问策略。
将特定IP加入受信任区域之外,或直接拒绝其访问:

某些服务支持在配置文件中设置访问控制,例如SSH服务可通过 /etc/hosts.deny 和 /etc/hosts.allow 控制。
注意:/etc/hosts.allow 优先级高于 .deny 文件。
基本上就这些常用方法。选择哪种方式取决于你使用的系统和防火墙工具。iptables 更底层灵活,firewalld 更适合动态管理,服务级限制则适用于特定场景。关键是确保规则生效并测试效果,避免误封自己。不复杂但容易忽略。
以上就是Linux如何限制某个IP访问服务的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号