Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Right, this is strange. I am connecting from my laptop (LMDE) to a remote host (SUSE Linux enterprise) using ssh -X. I want to launch a Firefox instance running on the remote server so I can have access to webpages on a private network.

User@RemoteMachine $ which -a firefox
User@RemoteMachine $ /usr/bin/firefox --version
Mozilla Firefox, Copyright (c) 1998 - 2007

User@LocalMachine $ which -a firefox
User@LocalMachine $ /usr/bin/firefox --version
Mozilla Firefox 14.0.1

Now, if Firefox is not running on the local machine, everything goes as expected and executing firefox on the remote machine causes a Firefox (v 2. 0) window running on the remote machine to show up. However, if Firefox is running on the local machine a second window of Firefox 14. 0. 1 running on the local machine appears.

I have checked top in both machines. In the 2nd case, a Firefox process briefely appears on the remote machine and then disappears when the local version of Firefox is launched.

My questions are the following:

  1. What gives? How/why can Firefox connect to its existing instance on the local machine? The remote machine appears to have access to the local machine. It, in fact, appears to have the right to execute programs on my local machine. Am I missing something or is this just weird?

  2. Is this not a security risk?

share|improve this question
up vote 5 down vote accepted

By default, Firefox will talk to the existing Firefox process and reuse it.

If you wish to override this behavior and start a new process, add the -no-remote command line option when starting the second Firefox process:

firefox -no-remote
share|improve this answer
Thanks, that's a good tip. The question, however, still stands on whether it is a security risk and how the remote user gains the priviledge to execute a local command. – terdon Aug 15 '12 at 21:26

The -X switch forwards remote X clients to your local X server. Firefox must use some internal X Window system communication mechanism to detect that it's already running on your display and tell the already-running instance to open a new window.

share|improve this answer
If I read ssh's man page right, setting -X just enables X forwarding via ssh on a system that doesn't have X forwarding enabled in the configuration files, i.e. ForwardX11 yes and ForwardX11Trusted yes in /etc/ssh/ssh_config If anyone knows details about the internal X Window system communication you mention, I would be very interested in knowing them, because it may have to do with a problem I'm trying to find out about:… – zebonaut Feb 24 '13 at 9:41

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.