如何在 X-forwarded 窗口上显示机器和用户名

如何在 X-forwarded 窗口上显示机器和用户名

我经常使用前向 X windows 连接(使用“ssh -X ...”)。

我如何才能看到哪个窗口来自哪个用户和机器?

理想情况下,我希望每个非本地窗口标题栏显示“[电子邮件保护]" 或类似内容。


抱歉,我没有把问题表述清楚。

我不仅仅询问远程终端窗口,我还询问所有 X 转发窗口,例如 Firefox、Thunderbird 等。

答案1

您可以通过查看环境变量来 ~/.bashrc判断它是否是一个连接:ssh

walt@bat:~(0)$ env | grep SSH
SSH_AUTH_SOCK=/run/user/1000/keyring/ssh
walt@bat:~(0)$ ssh $USER@localhost
walt@localhost's password: 
Welcome to Ubuntu 16.04.6 LTS (GNU/Linux 4.15.0-48-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage

0 packages can be updated.
0 updates are security updates.

Last login: Sun Apr 21 11:09:24 2019
walt@bat:~(0)$ env | grep SSH
SSH_CLIENT=127.0.0.1 49228 22
SSH_TTY=/dev/pts/5
SSH_CONNECTION=127.0.0.1 49228 127.0.0.1 22
walt@bat:~(0)$ logout
Connection to localhost closed.

walt@bat:~(0)$ 

然后,您可以使用xttitle来设置窗口标题(sudo apt install xttitle)。

就像是

if [[ -n "$SSH_CONNECTION" ]] && [[ -n "$DISPLAY" ]] ; then
    xttitle "SSH Connection $USER@$(hostname)"
fi

相关内容