7

This is the first time I am setting up servers so I'm unsure where to start. One thing I know is that I have chosen the Linux Operating System.

I want to host my own sites so I have a static IP for my dedicated server. What are the issues I need to consider regarding setting up a server at home? Presently, power and security are low priority but you could comment on them.

I am inexperienced and would be glad to know the A to Z of setting up servers.

2
  • Can't understand why so many people stick to apache since it's slowest http server. I would recommend nginx which is easier to configure and faster.
    – solusipse
    Mar 13, 2013 at 3:35
  • NGinX is good for flat sites, but for feature rich sites which utilize the entire LAMP stack, apache is much better suited. Mar 10, 2018 at 12:02

6 Answers 6

12

More general (home) server concepts.


Since you seem to have a single static IP address from your ISP for setting up this server, DNS may be more about configuring your web domain and server name properly. Even that might be solved by your ISP.

Things get more interesting if you intend to have a small network along with the server.
You then need to protect the network from a potential server compromise too.

Here are a few references for DNS,

1
  • Wow!! This is a fantastic answer!! :) Any Idea how would I set up a DNS server should I do it on the same machine?... again I am a noob here...
    – Kevin Boyd
    Sep 27, 2009 at 14:09
2

I'd recommend choosing a Turnkey Linux appliance. These use Ubuntu Server and are pre-configured to run various applications/servers and are set up to be pretty secure and efficient.

You can run them in a virtual machine or on a physical computer either by installing or just running straight from the CD. The download is much smaller (~150mb) than a full Ubuntu CD too.

They have a nice web-based configuration interface to configure most things, but you can always drop into a shell if and when you need to.

They're a good way to get going quickly and once you learn your way around, you can graduate to building your own server from scratch.

1
  • 1
    Turnkey Linux sounds great! seems to be easy to use also...
    – Kevin Boyd
    Sep 28, 2009 at 6:48
1

first make a choice on what distro you want to use; then search on google.com/linux for that distro's name + LAMP (linux apache mysql php)

before installing it to a real machine, play a few days with that on a vmware guest machine

I would suggest debian, for starters

1
  • Well I googled and found that Debaian and Ubuntu were popular distros for setting up home servers.. Thanks for the tips..
    – Kevin Boyd
    Sep 27, 2009 at 9:23
1

well; I use ubuntu as server. Static IP is solved by dyndns.org For ftp; proftpd; real simple to use, it even has good gui. For torrents; i've installed wine + utorrents (special partition for downloading stuff, so I always have room at main partition). vnc and ssh for remote deskop and control. I also have few webpages put; just few things for my friends; for that I used apache server; (off all the programs I've mentioned this is only one that needs to be configured without gui).

4
  • What do vnc and ssh do and what about dns server setup?
    – Kevin Boyd
    Sep 27, 2009 at 10:12
  • 1
    VNC - graphical remote access. i prefer nx though. SSH is for text mode remote access. you NEED this.
    – Journeyman Geek
    Sep 27, 2009 at 10:49
  • 1
    SFTP would be a wiser choice than FTP. Sep 27, 2009 at 14:06
  • agreed; SFTP is safer; but I just use it for my LAN network,
    – bbaja42
    Sep 28, 2009 at 7:19
1

Well, it all depends on what you need as a server. I tend to prefer Ubuntu LTS or debian (though i'm running jaunty at the moment, for various reasons). I favour builiding it off a minimal install or a server cd, but YMMV on either. In any case,save the headache of tweaking more than you need to by deciding what you need.

Assuming you want a LAMP stack, you can install it during installation or with the 'tasksel' command.

Samba is useful for a file server, though you need to look up on how to config it.I also have build-essential since some things i run are compiled and run as a user.

Hardwarewise - pretty much any 'recent' x86 machine probably will do. having as much ram and hard disk as possible is a good idea, though there's no need to overdo it. my LAMP/Fileserver is a PIII 450 with 640 mb of ram, though if i were building new, i might go for a nano or atom based box with as much ram as possible.

You'd be best off running the box headless - set it up on a wired connection, and stick it somewhere- and use SSH for admin.

2
  • If I choose Ubuntu Server Edition how to install the LAMP stack during installation?
    – Kevin Boyd
    Sep 28, 2009 at 6:50
  • What does a headless box mean? SSH?
    – Kevin Boyd
    Sep 28, 2009 at 6:51
1

Setting up your own server does require you to decide upon a lot of things. As have been pointed out, pick a good Linux distribution that contains whatever you need. Unfortunately, at that point your work only starts!

When you use a LAMP system, much of the components will already been chosen for you. Linux with Apache is the natural choice. And for a home system an Oracle database is pure overkill so MySQL is a good choice too. Then you have to chose between PHP or Python, which are both used for web development.

When deciding upon which development language to use, you might find more practical advise at StackOverflow. Of course, if you use some ready-to-use product to just install on your system, things will become a bit easier. Will you do the software development yourself or pick some third-party products?

When picking some third-party products, you will have to check what you want to use on your system, exactly. Do you want a forum? A bug reporting system? A blog? A complete CRM system? A photo gallery? So many options to choose from. And whatever distribution you pick, you need to configure it to fully support this product. (Fortunately, almost all products will install nicely on almost all distributions.

And then you have a server, running the software you like. And at first you get 5 visitors per day, and things run fine. Then more visitors will arrive and amongst them, some will be spambots and hackers, who will try to misuse your system. You will need to moderate your server a bit more, especially putting a stop to possible hack attacks. If you run a forum or blog, you'll need to do something about the spam messages and spam comments that will pop up sooner or later. Soon it becomes too much for one person to handle and you will need a few friends to help you to moderate your site's content.

Don't think that you're done once your server is set up. At that point, the work just starts...

2
  • What if? to start off with I am just hosting web sites no forums, no blogs no nothing... just plain websites...and oh a pop3 server also I guess so the email would probably be a target for spam bots etc...does this reduce the work load a bit?...
    – Kevin Boyd
    Sep 27, 2009 at 14:20
  • 1
    It depends on the number of visitors you're expecting. If it's only for personal use and the number of visitors will be just you and perhaps a couple of friends, the workload will reduce a lot. (Although it doesn't keep evil-doers away.) Do consider using a robots.txt to keep all search engines away from your site in that case. Basically, anything you run on your server needs to be maintained. The more you install and use, the more that needs to be maintained. Sep 28, 2009 at 11:28

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .