Tip of the Trade: Web Console
Remote administration of Linux, Unix, and Windows servers and PCs relies on a large, mixed bag of tools, depending on which operating system you want to log in from, and what sort of interface you prefer. SSH, Putty, VNC, NXServer, Rdesktop, and Webmin are some of the popular remote administration utilities. All require both a client and server, so if you're on a computer that doesn't have the client you want you're either out of luck or must take the extra steps to install and configure it. Webmin tries to be the universal Web-based administration client. It gives admins a nice graphical administration interface, and it works with any Web browser without requiring special client software. But there is a new and interesting candidate for Web-based server administration: Web Console. Need universal server administration? Forget Webmin. Web Console is a fast, light-weight AJAX-based interface that facilitates execution of desired commands.
Unlike Webmin, Web Console is a fast, light-weight AJAX-based interface that allows you to execute whatever commands you want. It resembles a cross between an X terminal running Ncurses embedded in a Web browser, and a text-based Web browser like ELinks. Functionally, it behaves like SSH plus a file manager, so previewing, moving and copying files is as easy as with a graphical file manager, minus the overhead.
Web Console is still a young project the current release is 0.2.5. It's a single Perl file that requires both Perl and an HTTP server to be installed on the servers you want to control. Any lightweight HTTP server will do, such as Lighttpd or thttpd, or any of the old standbys, such as Apache and IIS. By default it runs as your HTTP server user. This can present some security problems; you really don't want your HTTP user to have any powers other than the absolute minimum needed to do its jobs and no more. Apache users can use suexec to run Web Console under a different user, and you should always use your HTTP server's usual access controls to lock it down further. On Unix and Linux systems, you'll need to set up /etc/sudoers to allow the Web Console user to use sudo when you need root permissions. You should also set up SSL for a secure connection. Even with SSL the security risk of running Web Console over untrusted networks could be considered unacceptable, so limiting it to LAN use is probably the wisest course.
Once it's installed and you have your access controls refined and working to your satisfaction, you'll be able to log in with any Web browser and run your servers almost as easily as if you were sitting at a physically-attached console. Visit Web-console.org for downloads and howtos.