Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I just got myself a slicehost basic slice to play around with so I can learn how to setup web-servers.

I have Ubuntu 10.04.2 installed on the server.

I was able to successfully get the server up and running from scratch, these were the things I did - following this tutorial. I know this is probably just a starters tutorial, so, I was wondering if you guys can tell me what you like to do while setting up production servers.

These are the steps that were followed :

  • Update and Upgrade Ubuntu
  • sudo apt-get install apache2 php5-mysql libapache2-mod-php5 mysql-server
  • Backup a copy of and edit apache2.conf Set :
    'ServerTokens Full' to 'ServerTokens Prod'
    'ServerSignature On' to 'ServerSignature Off'
  • Backup php.ini and then Change “expose_php = On” to “expose_php = Off”
  • Restart Apache

  • Install Shorewall firewall
  • Configure Shorewall to only accept HTTP and SSH connections(in the rules file)
  • Enable shorewall on startup
  • Add the website to the server :

    sudo usermod -g www-data root
    sudo chown -R www-data:www-data /var/www
    sudo chmod -R 775 /var/www

    Edit :
    More steps :
    1) Create another user account and Disable the root account.
    2) Change the port for ssh.

    Please feel free to add the things are left out/done wrong that you would otherwise do for a production server. Much appriciated, thanks! :)

    share|improve this question

    I think your installation is ok.

    If you use PHP you can use "apc" for php caching for better performance:

    apt-get install php-apc
    share|improve this answer

    Your Answer


    By posting your answer, you agree to the privacy policy and terms of service.

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