Why does ssh X forwarding timeout after a while?
So I have a mac at work which I like to ssh into my linux box with something like this:
$ ssh -Xt user@mylinux
I can login and start any X11 apps on my linux box no problem. But after 15 minutes or so, I come back to a session (ssh is still running and connected) and I get:
$ xterm
xterm Xt error: Can't open display: localhost:12.0
I've tried using -o "TCPKeepAlive yes"
or -o "ServerAliveInterval 30"
, but still get the same behavior.
Is there something in ssh or on the Mac or my linux sshd conf that kills X-forwarding after a period of inactivity?
Solution 1:
The default ForwardX11Timeout
is 20 minutes for ssh -X
, but you can set it to something large (e.g. 7d
for 7 days) in .ssh/config
"Trusted" X11 forwarding via ssh -Y
actually enables potentially nasty things like keystroke monitoring and screen grabs.
Solution 2:
Using -X
, X11 forwarding is enabled in "Untrusted" mode, making use of various X11 security extensions, including a time-limited Xauth cookie.
Use -Y
to enable "Trusted" mode for X11, which will enable complete access to your X11 server.