firewalld: 禁止ip地址访问

一,第一种方法:添加到drop这个zone

1,可以访问:
这里假设服务器地址:5.6.7.8
客户端地址:1.2.3.4

客户端ip未被drop前,尝试登录到服务器:

[lhdop@client ~]$ ssh -p 22 lhdop@5.6.7.8
lhdop@5.6.7.8's password:

服务端: 把此机器的ip添加到服务器端:

[root@server ~]# firewall-cmd --permanent --zone=drop --add-source=1.2.3.4
success

说明:也可以添加一个网段:

[root@server ~]# firewall-cmd --permanent --zone=drop --add-source=1.2.3.4/24
success

使生效:

[root@server ~]# firewall-cmd --reload
success

查看active-zones:

[root@server ~]# firewall-cmd --get-active-zones
drop
  sources: 1.2.3.4
public
  interfaces: eth0
trusted
  sources: 11.12.12.14

从客户端再次尝试ssh登录,没有响应了:

[lhdop@client ~]$ ssh -p 22 lhdop@5.6.7.8

 

二,第二种方法:在默认zone中添加富规则

1,禁止前:

客户端ip未被drop前,尝试登录到服务器:

[lhdop@client ~]$ ssh -p 22 lhdop@5.6.7.8
lhdop@5.6.7.8's password:

在服务器端禁止客户端ip访问

[root@server ~]# firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=1.2.3.4 reject'
success

重新加载使用效:

[root@server ~]# firewall-cmd --reload
success

再次从客户端尝试访问:

[lhdop@client ~]$ ssh -p 22 lhdop@5.6.7.8
ssh: connect to host 5.6.7.8 port 22: Connection refused

 这里可以看到target是drop和reject的区别:
drop无任何返回,
reject则立即返回拒绝连接的信息

 

posted @ 2024-08-17 14:45  刘宏缔的架构森林  阅读(93)  评论(0编辑  收藏  举报