在/etc/hosts.allow中拒绝的IP地址出现在/etc/csf/csf.deny中?

我修改我的/etc/hosts.allow文件

 sshd : 192.168.0.0/255.255.255.0 : allow sshd : xxx.xxx.xxx.* : allow sshd : ALL : deny 

(其中xxx表示我的实际IP地址号,通配符*表示全量程0-255),然后重新启动sshd和Apache Web服务器。 在接下来的一周里,我会留意来自外国的IP地址会继续出现在/etc/csf/csf.deny

 116.31.116.15 # lfd: (sshd) Failed SSH login from 116.31.116.15 (CN/China/-): 5 in the last 300 secs ... 

我的期望是正确的,否认hosts.allow文件中的IP地址,甚至不应该显示login屏幕来尝试login,因此在csf.deny日志中的条目certificate我的hosts.allow文件没有做我想?

或者,我被一般错误消息( 5 in the last 300 secs误导了,因为实际上这些IP地址实际上并没有试图input用户名和密码5次?

我的目标是防止未经批准的IP地址能够input用户名和密码。 我怎么知道我是否达到这个目标?

我应该期望什么时候csf.deny文件显示其IP被拒绝?

ConfigServer Firewall使用csf.deny ,列出的IP根本不允许连接到服务器。

如果IP位于csf.deny文件中,则意味着它在所有端口的服务器防火墙中被阻止,并且在任何服务上都不会显示任何login屏幕,因为它永远不会build立与服务器的连接。

5在过去的300秒内,意味着他们没有通过authentication过程,从而把他们列入了CSF列入黑名单。 可能是因为他们input了错误的凭证,或者根本没有得到login提示,只允许使用SSH密钥。

将IP放在hosts.allow将允许它连接到您在那里指定的服务,但他们仍然需要input正确的凭据连接到服务器。

未被列为允许的IP应该显示以下消息:

 ssh_exchange_identification: Connection closed by remote host 

如果他们尝试连接到SSH,我相信这将被视为失败login,如果他们达到失败的login限制,它们将以csf.deny结尾。 他们将build立到SSH端口的连接,但由于拒绝规则而无法validation自己,并且CSF会将其视为login失败。

阻止未列出的IP的SSH的更好的select将是完全封锁在CSF中,如本文末尾所述。

除了csf.deny之外,重要的文件也是csf.allowcsf.ignore

csf.allow将允许从任何源端口上列出的IP到任何目标端口的连接。

csf.ignore将忽略来自列出IP的任何失败操作,它将不会受到失败login或连接的限制。

您可以使用csf -dr IP IP从csf.deny删除IP,并使用csf -a IPcsf.allow其列入白名单

如果您想完全阻止未预先批准的IP地址的SSH,并且希望避免由于SSHlogin失败导致您的csf.deny增长,则可以完全阻止SSH端口,22如果您没有更改,请将其从TCP_IN中删除行在csf.config

csf.config更改任何内容后,需要使用csf -r重新启动CSF以重新加载configuration文件。

这将阻塞所有IP的端口22,除了在csf.allow中列出的IP。

通过从csf.config中的csf.config删除端口22,并将您的IP地址设置为csf.allow ,您将只允许那些IP连接到端口22,任何其他IP将不会显示任何SSHlogin,但会收到超时消息当试图连接到SSH。

如果只将IP地址放在csf.allow ,将允许所有端口,但只能使用高级端口+ IP过滤来指定单个端口。

把它放在csf.allow中将允许从IP连接到端口22,即使csf.config不允许端口22也是csf.config

 tcp:in:d=22:s=xxxx