SSH 登录尝试次数有限制吗?

Tyl*_*den 5 security login ssh

Debian 9 中的 SSH 登录尝试次数是否有限制?

例如,假设我的 SSH 服务器可以在 100 毫秒内响应,那么理论上有人可以每 100 毫秒尝试一个用户/密码组合,或者每秒 10 个、每分钟 600 个、每小时 36,000 个。这显然不足以破解典型的密码,但可能会以烦人的方式填满日志。

有什么机制可以阻止这种探测吗?

(注意:我不认为在这里使用 PAM 用户尝试拒绝是相关的,因为这是特定于用户名的。自动脚本不会一遍又一遍地尝试相同的用户名,但会循环用户名以避免跳闸 PAM 计数。)

Jak*_*uje 7

是的。手册页ssh_config指定:

MaxAuthTries

指定每个连接允许的最大身份验证尝试次数。一旦失败次数达到此值的一半,就会记录更多失败。默认值为 6。

这是针对单个连接,通常需要大约一秒钟(算法协商、密钥交换)。

对于面向公众的 ssh 服务器,设置一些东西来避免这种情况是明智的,通常 fail2ban 是非常常见且有用的技术——对于多次失败的尝试,它会暂时禁止源 IP,因此除非攻击者拥有大量 IP 僵尸网络,否则他是运气不好,每几个小时尝试几次。