我非常没有耐心,无法忍受在登录屏幕输入错误密码或输入sudo
密码后大约 2 秒的延迟(对我来说主观上很长),然后我才能重试正确输入。
有没有办法修改延迟并将其减少到大约半秒或将其完全关闭,包括sudo
登录屏幕?
最佳解决方案是在输入 3 到 5 次错误密码后延长延迟,以仍然防止暴力破解。
附言:我目前正在使用带有 Unity Desktop 和 lightdm 的 vanilla Ubuntu 16.04。
答案1
在 Ubuntu 中,消除延迟对于终端中的错误密码,请编辑common-auth
文件夹中的文件/etc/pam.d
。
sudo nano /etc/pam.d/common-auth
然后将字符串添加nodelay
到行尾
auth [success=1 default=ignore] pam_unix.so nullok_secure
所以它说
auth [success=1 default=ignore] pam_unix.so nullok_secure nodelay
Ctrl然后按+ X, Y,使用 nano 保存文件Enter。
如果你想改变延迟,首先执行上述步骤并完全消除延迟。然后将以下行添加到同一文件前上面你修改的那行:
auth optional pam_faildelay.so delay=500000
这将是文件中第一个未注释的行。如果你在编辑的第一行之后添加此行,则它将不起作用。
现在你可以编辑延迟值,根据需要随意设置。我按照你的要求设置了半秒。
答案2
如果你想降低延迟而不是完全禁用它,编辑/etc/pam.d/login
:
sudoedit /etc/pam.d/login
找到如下行:
auth optional pam_faildelay.so delay=3000000
根据需要将后面的数字更改delay=
为较小的值。
请注意,该数字以微秒为单位,因此 1000000 表示 1 秒。
资料来源:
- 如何改变输入错误密码后的延迟?
/etc/pam.d/login
在我的 Ubuntu 16.04 LTS 系统上。
答案3
要让您的系统忽略默认密码安全延迟添加nodelay
至/etc/pam.d/common-auth
文件:
更改此行:
auth [success=1 default=ignore] pam_unix.so nullok_secure
到:
auth [success=1 default=ignore] pam_unix.so nullok_secure nodelay
然后重启系统才能使其生效。
笔记:
以前在这里完成/etc/login.defs
,但现在由聚丙烯酰胺通过/etc/pam.d
各种配置文件。