Firewalld ssh 安全

Firewalld ssh 安全

如何向firewalld添加两条规则以便

  1. 否认所有人和
  2. 只接受一组 IP 地址?

在本例中,我谈论的是 SSH 端口 - 22。
我使用的是 CentOS 7 和 firewalld。

答案1

您可以使用

firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" \
source address="1.2.3.4/32" \
port protocol="tcp" port="22" accept"

只需将 IP 替换为您想要允许 ssh 的 IP

答案2

检查当前处于活动状态并默认用于您的连接的区域,

# firewall-cmd --get-active-zones 
work
  interfaces: work-vpn
home
  interfaces: enp0s25

例如,在上面的输出中,我有 2 个活动区域,每个接口一个。

然后您需要列出特定区域的活动服务,

# firewall-cmd --list-services --zone=public
dhcpv6-client mdns ssh

因此,在上述情况下,公共区域有一条允许 ssh 进入的规则。因此,如果您想允许从特定地址进行访问,您首先需要删除 ssh 服务,以及@noqqe 提到的上面的丰富规则。

# firewall-cmd 
     --permanent        # this will add the rule permanently, su make sure not to run it on a remote host, until you verified it!
     --zone=public      # to which zone add the rule, make sure is the one you actively/currently using.

相关内容