I'm wanting to do some testing locally before I move the database. 1. How does one start to make a linux webserver? Obviously you install linux first. Then what? Cpanel? apache? How do you secure the server? Firewall program? There's a free and paid version of php. Is there a web server in a box install type package that drops all the needed programs into linux? Forgive the ignorance but I am a windows box person.
I had a guideline that help the basic setup of this. Gonna look for it. Still, it depends on what stuff you plan to use the server for. For the moment, check this: http://www.freesoftwaremagazine.com/articles/the_perfect_network_server http://howtoforge.org/perfect-server-debian-lenny-ispconfig3 Don't know if it's up to date, but should help in some areas. Wish i could help more, but i don't mess with Linux servers for quite some time. I'm sure someone around here will help you.
1) Apache for the webserver 2) MySQL for the database If you're new to it all, I suggest starting with Ubuntu server and run the LAMP (Linux, Apache, MySQL, PHP) setup. That'll get you the basics. You can use the auto-update to ensure the latest security patches are installed. From there customize the server to you're heart's content. LAMP is basically as close to an "out of the box" server as you can get. -hl718
If your intrested in rock solid stability, you could also think about Debian as your host platform as well. Might require a bit more configuration out of box though when compared to Ubuntu. (which is based of Debian code)
If you are planning on hosting assemblergames.com (etc...) on the box, and this is your first experience with setting up a linux server I would recommend you get someone to do it for you. Debian...rock solid sure but you can go with pretty much any flavour of linux (or hey why not BSD? ). Just checking some boxes of mine now for stability: a random Ubuntu Server: up 454 days, 10:00, 1 user, load average: 0.00, 0.00, 0.00 a random FreeBSD box: up 352 days, 21:11, 1 user, load averages: 0.12, 0.12, 0.12 That Ubuntu box is waiting for its' first reboot since it was installed...hoping to get it up to 1000 days uptime before that happens though Shiggsy
yeah as shiggsy said, if you're not experienced with this and it's for a site with lots of traffic like assemblergames I would recommend you to have someone else help you. I've setup a couple of servers in the past (with slackware, gentoo, unbuntu) but I still don't feel safe enough to host anything big on them as security is just one big mess.. setting up firewalls, blocking, patching holes, ... but as others have said simplest would probably be to setup a LAMP server with ubuntu.
If you want to setup a server for a site other than assembler. just burn a centos dvd and install every server package, that's all you have a completely ready php,mysql,apache server to experiment with. If you plan to get assembler on this box pay someone to do it for you or you will lose many days reading if anything go wrong.
I had an uptime of almost a year on one of mine, then the PSU crapped out... Linux: Because reboots are for adding new hardware. Randomly installing lots of stuff is usually a bad idea, in general. Install only what you need, nothing more. More packages just means more potential holes. While I'm usually trying to convince people to use lighttpd/sqlite instead, the LAMP stack is definitely the way to go for beginners. Make sure you have a SSH daemon running too, for copying files around - FTP just doesn't cut it nowadays security-wise. Pick a distribution, any distribution, do a minimal install, then add just the server packages you need (resolving dependencies and basic configuration should be getting taken care of automagically by the package manager), done. Security's tight enough out of the box on most distros in my opinion - just remember to pick strong passwords. If I was going to install random PHP scripts, they'd be what I'd be the most concerned about...
I'd love to get experiance with securing linux, but haven't got a clue. The university degrees on security are worthless and teach you about... Teach, I lied, they teach you buggar all =/.
You really want linux that bad eh..Well if you want why not try FreeBSD after some year of experience I could say that it's a little more secure (by default) then any linux distribution. I run an apache + mysql server with freebsd without problem... If you want a good documentation (for beginners...) I suggest visit the FreeBSD handbook pages (here the one's related to your specific task : http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/network-apache.html . This documentation could be used (for most part) with Linux as well...
Please, don't go recommending *BDS to newbies, unless you're prepared to walk them through everything. Otherwise they'll probably run into a problem, find nobody to help them, then give up and go back to Windows, never to touch a *NIX again. That doesn't help anyone (besides MS). I run NetBSD myself, and while it's a really good server OS, it's definitely not something for beginners. ASSEMbler, why not stick with/switch to a leased non-root server? That way the hoster is responsible for setting up a secure system and keeping it updated, nice and simple. imho, root servers (or servers run from home) usually aren't worth the extra effort when you just need the standard LAMP stack. It's only when you want some custom stuff (game servers, irc bots, torrents, sth like that) that you might need one.