I'm wondering if you might be able to recommend an online guide, or alternately a book, that can help walk me through the steps of setting up a Linux VPS from scratch without a cPanel.

In particular I need to install and configure Apache, PHP, MySQL, FTP and some form of sendmail so that the web app can send email notifications.

Any flavour of Linux is acceptable, although my preference would be Debian or CentOs.

  • This is a Q&A site. Asking for such detailed documentation (which is already freely available all over the Internet) is way outside the scope of the site. – John Gardeniers Apr 8 '11 at 2:37

You're better off getting a local, Windows Based Virtual Machine solution such as VirtualBox (the one I use).

This way you can experimenting locally first, for free. You absolutely cannot afford to skip this step. Everything's a lot different in Linux. You need to learn the meaning of the folder structure, how software (packages) are installed and uninstalled, how to configure them, etc. This can easily eat a couple weeks of full-time learning.

You also need to get interested in command-line tasks for everyday server management tasks. I'm not sure how you feel about typing commands on a text-only black screen, but there's little you can do to avoid that. And, of course, when in doubt, go to Google.

If you choose Debian, you can, during the installation process, ask it to set up a web server + ssh server, and will give you a standard LAMP (Linux, Apache, MySQL, PHP) setup. You can use your favorite SFTP client to put your stuff in /var/www and start from there.

Some VPS vendors, mine included, will not give you the installation process. Instead, they'll give a fresh new already-installed distribution, ready for SSH login. To set up LAMP (again, in Debian), you'll need to log in as root and run:

apt-get install apache2 libapache2-mod-php5 php5-mysql mysql-server

Anything worth paying a VPS for will require you to log in to the command line and go from there.

  • Yes, I am comfortable with *nix command line and shell scripting, I'm just unfamiliar with web server setup and unfamiliar with packages and specific configurations for the items I listed. I'm hoping to find a step-by-step walkthrough, but maybe it's too much to ask. – Paul Shipman Apr 7 '11 at 0:37
  • +1 If you don't know your way around Linux, you're going to be fumbling around your Linux VPS and not get your money's worth for quite some time. Also, everything Ekevoo says here about Debian applies to Ubuntu (my distro of choice) as well. – Kromey Apr 7 '11 at 0:37
  • Well, use the packages I suggested above. :) For mail I recommend postfix (that's the package name), which comes with a decent default configuration for your needs. For FTP, I have no idea, but I would suggest against supporting FTP at all as it's insecure and almost all FTP clients support SFTP anyway. Debian/Ubuntu (agree with Kromey above) have decent defaults and just installing these packages suffice for most starter cases. – Ekevoo Apr 7 '11 at 1:10
  • Yes, setting up a local version of a system before deploying a live version, particularly when the latter is done at distance, makes a lot of sense - but there's absolutely no reason for it to be "Windows Based" – symcbean Apr 7 '11 at 9:13

I've done some additional digging, and I've been finding this guide to be quite helpful:


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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