使用 X 和 tty 登录进行安全屏幕锁定

使用 X 和 tty 登录进行安全屏幕锁定

我选择不在我的系统上运行登录管理器,而是选择 tty 登录,然后手动调用 xinit(说来话长,通过我的登录 shell 设置并让其余部分继承的一系列环境调整,让我的生活变得轻松很多),但是如果其他人访问我的 PC,这会给我带来安全问题,因为即使我锁定了我的 X 会话,他们也可以切换到 tty 并终止我的 X 会话,并返回到 shell。

我可以

  1. 开始运行 xinit; logout(仍然存在竞争条件问题,如果在调用注销之前他们再次输入 Ctrl+C,它将给出一个 shell)
  2. 尝试禁用 X 中的 tty 切换键
  3. 将 xinit 包裹起来以捕获并忽略来自 Ctrl+C 的信号

或者一些我还没有考虑过的更好的解决方案。

答案1

  • exec xinit将要代替你的 shell 进程xinit;它仍然可以被杀死,但如果它稍后被杀死,你就会进入登录屏幕。

  • setsid xinit; logout(xinit &); logout将开始初始化在后台运行,然后立即结束 tty 会话。这样就更好了 – X11 再也不能被 ^C 了。

    (如exec setsid xinit 可能工作,我还没有尝试过。)

FWIW,一些登录管理器从标准中读取“环境调整” ~/.profile;我知道 GDM 确实如此。

相关内容