通过 SSH 登录网络后,使用的网络默认 shell 是 BASH。
只有在启用 X11 转发时才可以运行使用图形的应用程序,我通常-X在登录时通过该选项执行此操作:
ssh -X user@network.to.connect.to
我注意到当它被启用时 DISPLAY 环境变量存在并被设置为这样DISPLAY=localhost:11.0,但是没有什么能阻止用户导出一个名为相同事物的环境变量,使它看起来好像已经被启用。
有没有办法从 bash shell 或 bash 脚本来确定是否启用了 X11 转发?
首先,为什么?为什么用户应该伪造 DISPLAY?不过,我看到了两种解决方法:
readonly DISPLAY在 bashrc/配置文件中。如果在登录时执行,用户将无法在之后设置 DISPLAY。xset q. 查询一些 X11 信息。如果不存在 X11 会话,则返回错误| 归档时间: |
|
| 查看次数: |
8037 次 |
| 最近记录: |