Hack 37 Run Remote Desktops

 < Day Day Up > 

figs/moderate.gif figs/hack37.gif

Use a computer running Knoppix as a base for remotely controlling other computers on the network via rdesktop or xvncviewer .

System administrators often need to be in two places at once. You might be on the phone walking a person through a technical problem when you realize that it would be much simpler if you could perform the problem-solving steps yourself. You might need to perform the same task on multiple computers, such as a manual virus or spyware scan or software update, that requires some initial setup and then a lot of waiting. If you could access all of the computers at the same time, you could start on the second computer once the first got going. In any of these cases, you might want to remotely control the computer, and with Knoppix, you can connect to both Remote Desktop Protocol (RDP) and any Virtual Network Computing (VNC) server using software on the CD. This hack explains the steps and software required to turn any machine on the network running Knoppix into a mobile command center for remotely controlling all of the computers on your network.

5.2.1 VNC

VNC is an open source remote access project created by AT&T Labs at Cambridge, U.K. VNC's original purpose was to enable remote access to computers running X from thin clients that could be disconnected and reconnected later from the same or another thin client. The fact that the software is open source and runs on a variety of different platforms (Windows, Linux, Solaris, and OS X among others) has made it rather popular to both system administrators, who want a single program to remotely control multiple platforms, and to programmers, who have improved the VNC protocol by adding encryption and compressions and incorporated it into their open source projects. The current open source version of VNC is maintained by the company RealVNC and can be downloaded for free from its site at http://www.realvnc.com.

Knoppix includes the Linux RealVNC client xvncviewer to connect to remote VNC servers. For system administrators who are familiar with that program, open a terminal, and type this command to connect to a remote VNC server:

 knoppix@ttyp0[knoppix]$  xvncviewer  server :display#     

Now type the password for that server at the prompt. The xvncviewer program also has a large number of options to enable full-screen mode and control settings such as color depth. Use xvncviewer from the command line if you are already experienced with the program or your connection requires special options. If you're not comfortable with the command line or don't have one open, you can click on K Menu Internet More Programs xvncviewer to launch a GUI that makes connecting to remote machines quick and easy.

If you are completely new to VNC or you plan on managing multiple connections at once, you might find the included KDE application krdc (for KDE Remote Desktop Connection) a better choice. Krdc allows you to manage multiple VNC and RDP sessions from a single easy-to-use program. To launch krdc , click K Menu Internet Remote Desktop Connection. When first run, you are presented with a simple window that prompts you to enter the address of the computer to which you wish to connect. For a VNC connection, this is as simple as typing the hostname or IP address for the remote computer, followed by a colon and the display name . Usually, the remote machine is running a single VNC session, so to connect to the machine at the IP address, type the following command and click Connect:  

Krdc then prompts you for your connection type so it can choose the settings that best suit your connection (such as a lower color depth for low-speed connections). After configuring your connection, krdc next prompts you for the remote server's VNC password and, once it is provided, connects you. Krdc superimposes a small taskbar at the top of your VNC window that tells you which server this window belongs to and allows you to toggle full-screen mode and close or minimize the window. This taskbar is particularly useful if you are in full-screen mode and can't remember the key combination to escape it (Ctrl-Alt-Enter). If the taskbar bothers you, you can easily set it to hide by clicking the pushpin icon.

One nice feature of krdc is that it keeps track of servers to which you have already connected, and the next time you run the program you can quickly select your server from the drop-down menu. Krdc also saves session information, and you only have to enter settings, such as the resolution for the remote connection and the connection rate, once.

5.2.2 RDP

Knoppix also comes with tools to connect to servers accepting RDP connections. RDP is a protocol used by Microsoft for its Terminal Services software to allow mouse, keyboard, and even sound channels to be accessed remotely. The functionality to make at least a single RDP connection to a machine exists out of the box in Windows XP Professional, Windows Server 2000 and 2003, and NT Server 4.0 Terminal Server Edition. For instance, to enable RDP connections on a Windows XP Professional machine, click on System under the Control Panel and check "Allow users to connect remotely to this computer" under the Remote tab.

The primary client for RDP connections under Linux is the command-line program rdesktop . Like xvncviewer , rdesktop has a number of command-line arguments to tweak settings, such as color depth and desktop geometry, and even forward sound to your local machine. To reference all of these settings, run man rdesktop or visit the official site at http://www.rdesktop.org, but for most usage, simply type this command in a terminal:

 knoppix@ttyp0[knoppix]$  rdesktop  servername   

If the remote computer accepts RDP connections, you are presented with a standard Windows login page. Once connected, you can toggle full-screen mode by pressing Ctrl-Alt-Enter in the rdesktop window or by passing the -f argument to rdesktop when you start it.

Similar to VNC connections, RDP connections are also managed within the krdc program in much the same way. The primary difference is the syntax used for the hostname. For VNC connections, the syntax is hostname:display or vnc:/hostname:display ; with RDP connections, the syntax is rdp:/hostname . To connect to a machine running at at the prompt, type this command and click Connect:


You are prompted for the resolution to use for the desktop and are then presented with the login screen. This presents a similar result as rdesktop only with the krdc taskbar appearing along the top of the screen, allowing you to toggle full-screen mode and a few other settings. These sessions are saved with any VNC sessions, making krdc an excellent choice for system administrators who are on a mixed network of VNC and RDP servers.

5.2.3 NX Server

Knoppix 3.4 has also introduced a suite of tools to connect to NoMachine's NX server. You can use the NX server to create encrypted and compressed remote connections to X, VNC, and RDP servers, which are responsive even over a dial-up connection. NoMachine's NX client and other software included on Knoppix are licensed under the GPL, but it is worth noting that the NX server does require that you purchase a license from NoMachine. Further information about the NX server can be found at http://www.nomachine.com.

If you have an NX server to which you wish to connect, start the NX Connection Wizard by clicking K Menu Internet NX Connection Wizard. The wizard asks you a series of questions about the server's IP address, your connection type, and the protocol the remote connection is using to share the desktop. Fill out the information in the wizard to see the NX Client login window, and the session for the server you have just configured is selected in the drop-down Session menu. Type in your NX server login and password, and click Login to connect to the remote NX server and start your remote desktop connection. For further help with using the included NX software, Knoppix has a direct link to NoMachine's support page that is accessible by clicking K Menu Internet NX Help on the Web.

5.2.4 Share the Local Desktop

Knoppix also supports sharing its own desktop with remote users by using the VNC protocol. This is useful when you find yourself talking someone through repairing a system that is unable to boot. The machine is unbootable so you can't take advantage of any remote control utilities the computer may already have. You know that with Knoppix, you can use some of the advanced system-recovery tools to fix the system, but it might be difficult to talk the user through all of the commands (not to mention that there is always a potential for typos that could cause further damage). If the user has a Knoppix disc (plan ahead and hide a copy under every user 's machine), then she can boot and get network access. You can then walk her through the simple steps of sharing her desktop, and remotely connect and finish the system recovery.

Sharing the local Knoppix desktop is pretty simple. The user's first step is to run the Desktop Sharing applet by clicking K Menu System Desktop Sharing. Have the user click "Create Personal Invitation . . . " in the main window to create a personal invitation to share her desktop, which then displays a new window containing the address and the temporary password to use for the connection. This information can be entered into any VNC-compatible client on the remote end, causing a prompt to appear on the local user's screen and requesting the user to accept the remote desktop connection.

The user can also click "Invite via Email . . . " to send an email containing connection information to the system administrator. This email provides a direct link to click on if the recipient is running a KDE desktop with krdc installed. The sender must have an email account set up on her Knoppix machine for this to work.

The randomly generated password expires after an hour , so any new connections after that point require creating a new invitation. To remove an invitation before it expires, click "Manage invitations" on the main Desktop Sharing Wizard screen to see all current invitations, along with options to delete them and create new invitations. The Desktop Sharing Wizard makes sharing your current KDE desktop pretty easy even for people new to VNC or Linux, and it is simple to explain to users over the phone or through email.

With all of the different remote desktop protocols Knoppix supports, along with the fact that it includes a simple method to share its own desktop, you might find it worthwhile to hand out an emergency Knoppix CD to friends or clients for those times when you need to do some quick technical support but are unable to physically be there. If a client has a network of machines that needs support, you can use the desktop-sharing feature of Knoppix to connect remotely to a machine on the network booted off of Knoppix, and then use that machine as a remote command center to connect to the rest of the machines within the network. This allows you to support all of the machines from a single remote connection.

 < Day Day Up > 

Knoppix Hacks. 100 Tips and Tricks
Knoppix Hacks. 100 Tips and Tricks
Year: 2004
Pages: 166

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net