Xorg

當 X 被殺死時阻止訪問 TTY

  • June 14, 2012

假設我從/dev/tty1帶有xinit或的虛擬控制台手動啟動 X 伺服器startx,並將行id:3:initdefault:設置為/etc/inittab。X 伺服器開始執行並放在另一個虛擬控制台上,通常是/dev/tty7. 一段時間後,我決定鎖定螢幕xscreensaver --lock並離開我的電腦。要解鎖螢幕,必須知道我的使用者密碼。如果現在有人決定終止正在執行的 X 伺服器,他或她將返回到執行的 shell,/dev/tty1並且幾乎可以訪問我的電腦。通常,X 伺服器可以被終止Ctrl+Alt+Backspace或切換到初始控制台和SIGTERM正在執行的程序^C

這很簡單——這意味著必須有一些簡單的方法來防止它發生。我vlock用來鎖定我的虛擬控制台/dev/tty1以防止這種情況:

$ xinit && vlock || vlock

當 X 伺服器現在正常返回時,&&控制台||將被鎖定。這可能不是最佳解決方案。我已經閱讀了這個執行緒和這個wiki 文章,解釋了不同的解決方案。

還有哪些其他方法可以防止從 X 會話對虛擬控制台的這種訪問?上述方法是否足夠安全?你如何在你的系統上防止這種情況發生?我不會使用顯示管理器。

Option "DontVTSwitch" "yes"您可以通過添加到您的 Xorg 配置文件來阻止 Xorg 的控制台切換。

為了防止Ctrl++ AltBackspace您必須將DontZap選項添加到您的Xorg 配置文件中。當然,這不會完全阻止對控制台的訪問。如果X由於某種原因終止,例如驅動程序問題,攻擊者仍然可以訪問您的控制台。

你也可以用 startxexec startx代替startxwhich 來代替 bash,這意味著即使有人能夠中止X他們也無法訪問你的控制台。您還可以使用顯示管理器,如lightdmkdmgdm,或者xdm您不需要現有的 shell 會話來啟動 ax 會話。

引用自:https://unix.stackexchange.com/questions/40720