I am brand new to Linux. I have a database server and web server both running CentOS. My database server will host MySQL and my web server will host Apache. I am very familiar with Windows and remote desktop. My question:

How do I connect to my Linux-based servers? Is there something similar to Remote Desktop, or do I need to use straight command line Linux commands? Ultimately, obviously, I will need to upload my web files to my web server.

I need to create a REST based service that will live on my database server- I know this is a very, very broad question, but where would I start with that? Is EVERYTHING Linux-based controlled from the command prompt?

EDIT
My REST service will most likely be written in server side Javascript.

By far, the most common way to connect to linux servers is through the command line. 90% of the things you need to do can often only be done through the command line.
–
antiduhJul 2 '13 at 13:53

1

You should also realize that most of us use the command line because it is easier, not because it is the only thing available. Yes, there are Remote Desktop solutions for *nix they are just usually not worth it since using the command line is so much simpler and faster (once you learn how). These days you can do just about anything using a GUI but experienced users don't because it is not as simple as the command line.
–
terdon♦Jul 2 '13 at 14:10

If you have installed the Linux server yourself or someone built it for you, I assume you have console access to the server. Start with finding out look for root password on that server. If you have built it yourself, you would know it. Otherwise you would have to get it from the person who built it for you. You need to go to the console of the server and start ssh daemon.

Putty will provide an ssh session to the Linux server. You will need to know the IP Address of the Linux server to connect. On Linux, it is most useful to use command line to do admin tasks. You can also rely on a tool called webmin http://www.webmin.com/docs.html.

From what I understand and this is my assumption, you did not install or you are not "owner" of these servers. As such I strongly advise you to contact your system administrator as ask him how to connect to the systems.

In any case, the most common way to connect to a Linux server is by ssh, this is CLI mode but you if it is properly configured you can redirect the GUI to your system. If you are using windows I recommend the installation of Xming ( to be able to open GUI apps from linux in your Windows system ).

Ssh not only is good to connect in a secure way to your servers but also allows you to copy files between servers via the commands scp ( if you are using some *nix based system or cygwin for example ) and sftp ( behaviour similar to FTP you can use FileZilla for instance or any other FTP client that supports SFTP ).

If GUI is mandatory for you then you need to ask your sys admin and ensure you have a Desktop Environment installed. After that you can use a couple of software like:
VNC
FreeNX
TeamViewer ( paid for corporate customers )

Regarding you number 2 question:

You did not mentioned which language your REST service will be on. So start with that and check the possible deployment options. Nothing like a google search won't help. But like you mentioned it is a broad question.