Andrew Baudouin wrote:
> Is there anyone out there (echoes) who has set up a VNC server to
> integrate to their desktop (that will run on their :0 display rather
> than setting up new X servers)?  Hopefully with Gentoo experience?

Do it all the time.
emerge x11-misc/x11vnc (might be masked)

http://www.karlrunge.com/x11vnc/ is the home page for the package.  Also 
look at http://libvncserver.sf.net (emerge net-libs/libvncserver)

Here's how I use it:
clienthost_xterm_A $ ssh -L 5900:localhost:5900 [EMAIL PROTECTED]
remotehost $ x11vnc -display :0
(output snipped. x11vnc is now waiting for a connection)
clienthost_xterm_B $ vncviewer localhost::5900
This connects to your tunnelled ssh port to the remote VNC server 
running on :0.  Obviously you can use any vnc viewer you are comfortable 
with.  You can leave x11vnc running or even run it out of inetd but I 
don't think either is a good idea for security reasons.  vnc passwords 
are insecure so the on-demand method I typically use just relies on ssh 
for authentication and encryption.

Here's another scenario.
clienthost_xterm_A $ ssh -L 5900:remote_natted_box:5900 \
  [EMAIL PROTECTED]
remotefirewall $ ssh remote_natted_box
remote_natted_box $ x11vnc -display :0
(output snipped. x11vnc is now waiting for a connection)
clienthost_xterm_B $ vncviewer localhost::5900

So you can ssh to a firewall and crate tunnels to machines behind them. 
  Note that this works fine for Windows Term services (TCP port 3389) as 
well.  You can tunnel multiple ports to multiple machines.  Just do 
something like ssh -L5900:host1:5900 -L5901:host2:5900 remotefw .  Then 
connection vncviewer to the appropriate port on localhost.   man 
ssh_config to find out how to store these tunnels permanently in a 
config file so you don't have to type long command lines.

Here's another one.  You've got a remote machine that X has died on or 
you want to fire it up interactively on :0.
clienthost_xterm_A $ ssh -L 5900:localhost:5900 [EMAIL PROTECTED]
remote $ /etc/init.d/xdm start
remote: $ sudo bash
remote # x11vnc -auth /var/run/xauth/A:0-oUSh -display :0N
(the filename referenced here changes with any running instance of an X 
server so just use tab completion within bash)
clienthost_xterm_B $ vncviewer localhost::5900
You can then disconnect and restart x11vnc as your normal user account 
after you log in to [x|g|k]dm .  And of course :0 keeps on running so 
you can disconnect and reconnect as desired both remotely and locally 
(hint: make sure the sound volume is off  if there are people around teh 
remote box :) ).

x11vnc is like the X counterpart to the 'screen' terminal application. 
Very, very useful piece of software.  And it builds and runs anywhere 
you run X so I've used it on various Linux distros, BSD's and Solaris.

libvncserver also has another nifty example piece of software called 
LinuxVNC which exports the system text tty console over VNC. So yes, you 
can execute "startx" on the system console under LinuxVNC, diconnect, 
then fire up x11vnc to connect to the now running X session.

-- 
Scott Harney<[EMAIL PROTECTED]>
"Asking the wrong questions is the leading cause of wrong answers"
gpg key fingerprint=7125 0BD3 8EC4 08D7 321D CEE9 F024 7DA6 0BC7 94E5

Reply via email to