Linux-Mint
如何在登錄時自動輸入 sudo 的寬限期
知道從使用者登錄的那一刻起給使用者一個 sudo 的寬限期可能是一個安全問題,我仍然認為在我的設置中這將是安全性和可用性之間的有益權衡。
問題是:如何做到這一點?據我所知,sudo 沒有為它提供 CLI。
我可能會以某種方式將 gdm 輸入的密碼轉移到類似的東西
sudo false
,但同樣:如何以純文字形式獲取使用者提供的密碼?我應該pam
為它編寫一個自定義模組嗎?或者,最好沉浸在 sudo 的實現細節中,並以 root 身份直接操作時間戳數據庫?
Gross hack,沒有經過真正的測試:
- 將以下行添加到
/etc/pam.d/gdm
:# Update the sudo ticket; proceed whether this succeeds or fails session [success=ignore new_authtok_reqd=ignore] optional pam_exec.so seteuid /usr/local/sbin/update_sudo_ticket
- 內容
/usr/local/sbin/update_sudo_ticket
:#!/bin/sh DIR=/var/run/sudo/$PAM_USER if [ -d "$DIR" ]; then touch "$DIR"; else mkdir "$DIR"; fi
您必須
tty_ticket
關閉該選項/etc/sudoers
(否則,無論如何它都沒有意義:Gdm 登錄不會計算您在 X 會話中在虛擬終端中所做的任何事情)。我不保證這行得通。我不保證這不會引入明顯的安全漏洞。使用風險自負。