首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >防火墙-cmd拒绝目标地址

防火墙-cmd拒绝目标地址
EN

Server Fault用户
提问于 2015-08-27 15:00:32
回答 1查看 9K关注 0票数 2

我用的是:

代码语言:javascript
复制
# cat /etc/redhat-release 
CentOS Linux release 7.1.1503 (Core) 
# rpm -q firewalld
firewalld-0.3.9-11.el7.noarch
#

我试图阻止特定IP地址(10.52.208.220)从我的系统到达它,但无法这样做:

在此之前:

代码语言:javascript
复制
# firewall-cmd --reload
success
# firewall-cmd --list-all
public (default, active)
  interfaces: eno1
  sources: 
  services: dhcpv6-client high-availability http https ssh
  ports: 5666/tcp 3306/tcp 5900/tcp 9001/tcp
  masquerade: no
  forward-ports: 
  icmp-blocks: 
  rich rules: 

# ping -c1 wcmisdlin01
PING wcmisdlin01.uftmasterad.org (10.52.208.220) 56(84) bytes of data.
64 bytes from wcmisdlin01.uftmasterad.org (10.52.208.220): icmp_seq=1 ttl=64 time=0.379 ms

--- wcmisdlin01.uftmasterad.org ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.379/0.379/0.379/0.000 ms
#

之后:

代码语言:javascript
复制
# firewall-cmd --add-rich-rule='rule family="ipv4" destination address="10.52.208.220" protocol value="icmp" reject'
success
# firewall-cmd --list-all
public (default, active)
  interfaces: eno1
  sources: 
  services: dhcpv6-client high-availability http https ssh
  ports: 5666/tcp 3306/tcp 5900/tcp 9001/tcp
  masquerade: no
  forward-ports: 
  icmp-blocks: 
  rich rules: 
    rule family="ipv4" destination address="10.52.208.220" protocol value="icmp" reject

# ping -c1 wcmisdlin01
PING wcmisdlin01.uftmasterad.org (10.52.208.220) 56(84) bytes of data.
64 bytes from wcmisdlin01.uftmasterad.org (10.52.208.220): icmp_seq=1 ttl=64 time=0.266 ms

--- wcmisdlin01.uftmasterad.org ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.266/0.266/0.266/0.000 ms
# 

IPTABLES(8) - iptables/ip6tables — administration tool for IPv4/IPv6 packet filtering and NAT

代码语言:javascript
复制
# iptables --list IN_public_deny
Chain IN_public_deny (1 references)
target     prot opt source               destination         
REJECT     icmp --  anywhere             wcmisdlin01.uftmasterad.org  ctstate NEW reject-with icmp-port-unreachable
# 

我做错了什么?

EN

回答 1

Server Fault用户

回答已采纳

发布于 2015-08-27 18:08:19

在检查整个iptables -n --list输出时,(最终)从INPUT链调用IN_public_deny,这与从系统发送到如此不可否认的主机的数据包无关;相反,这些数据包将通过OUTPUT链路由(如果防火墙是源和目的地之间的路由器或桥梁,则可能是FORWARD )。firewalld.richlanguage(5)似乎没有提供任何方法来指定规则必须进入OUTPUT (或FORWARD)链,因此直接规则的“最后”选项似乎是一种解决方案。

代码语言:javascript
复制
firewall-cmd --direct --add-rule ipv4 filter OUTPUT_direct 0 -p icmp -d 10.52.208.220 -j REJECT --reject-with icmp-host-prohibited

(虽然我通常更喜欢放弃(可能是以速率限制的方式登录)而不是发送ICMP拒绝,就好像即将被阻塞的主机正在发疯一样,将ICMP响应数据包扔回有负担的网络可能会使事情变得越来越糟……)

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/717266

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档