更安全的无密码 sudo?

更安全的无密码 sudo?

好的,这是我的问题 - 请不要因为我不安全而对我大喊大叫!:) 这是在我的主机上。我是唯一使用它的人,所以它相当安全,但我有一个非常复杂的密码,很难反复输入。我使用控制台来移动文件并执行任意命令,并且我切换终端,因此记住控制台的 sudo 是不够的(而且我仍然必须至少输入一次我可怕的密码!)过去,我曾在 sudoers 中使用过 NOPASSWD 技巧,但我决定更安全。除了允许不使用密码访问某些应用程序之外,还有其他折衷方法吗?(这仍然不安全)有什么可以阻止恶意软件和远程登录 sudo rm -rf /-ing 我,但在我的终端上我可以愉快地输入?也许我可以在每个终端上都有这个,这样随机命令就不会通过?我尝试以 sudo 身份运行终端仿真,但这会让我成为 root。

答案1

尝试将其添加到您的sudo选项中:

Defaults timestamp_timeout=0, tty_tickets

tty_ticketssudo如果之前没有在特定 tty(包括终端仿真器 ptys)中询问过密码,则选项(默认开启)将询问密码,并且timestamp_timeout=0选项将使其在整个会话中不再询问密码。

因此,当您想要执行某些管理操作时,您可以打开终端,执行 sudo 某些操作,然后关闭它,然后您就又安全了。

答案2

使用的最安全替代方案password 是通过 PAM 使用另一种身份验证方法。例如,您可以使用智能卡读卡器。您只需在使用“sudo”之前插入卡,然后在完成后将其取出。甚至还有一个用于语音身份验证的 PAM 模块。如果您找不到喜欢的 PAM 模块并且不熟悉 C,那么可以使用 Python 绑定。

看看这个PAM 模块列表

答案3

设置rootpw您的/etc/sudoers

 Defaults        rootpw

提供root一个比您的密码更简单的密码。

如果你已经安装了服务器,root请记住禁止。sshssh

如果你的可怕密码是为了保护你的文件,那么只有加密后它们才真正受到保护,否则这只是“安全剧场”。假设这就是你想要保留大密码的原因,那么你就会很安全:破解root密码仍然不足以解密你的文件,任何类型的恶意软件都会在猜出密码之前耗尽我们的 CPU。

答案4

在 /etc/sudoers (visudo) 中添加如下行:

uberjim 全部 = (全部)NOPASSWD:全部

然后作为您的用户,一旦登录(使用您的安全密码),您只需输入:

sudo /cmd/you/want/to/run

无需密码:) 玩得开心

相关内容