First time setting up my own home server, need help!!
Hey guys, i know you must get this a lot but i could really use your guys' help. I have been trying to set up a home server for use to host my personal website and a file server!
I have been learning HTML, CSS, and Javascript over the last few weeks and am going to start learning PHP and MySQL soon but i really want to get this server up! I have a fresh install of CentOS on a box that i took from home, its about 2 years old and has 8GB of DDR2 RAM and i think a 2.4 Ghz processor. I am just super confused on how to install and configure each package. I know i need Apache, PHP, and MySQl, but i as hoping to also get some software to make it a file server (if possible, my priority is a webserver), and i want to get Ruby On Rails, Python, and Perl on it so i can try out all of them and decide which ones suits me ( I plan to start with PHP and move on from there). I know there are tutorials like the one on howtoforge called "The Perfect Server with Apache2 on CentOS" but they are all confusing because they just tell you what to do but not tell you what you are actually doing! I want to learn what i am doing when i make changes to a config file! So i am sorry if i am asking a lot but i would really appreciate it if you guys would help me by explaining what to install, how to install it, and how to configure it and what exactly it is (at least a basic explanation that i can build on by doing my own reading). I just don't know what to install first, I assume its apache but i dont know for sure (thats how noobish i am, haha). And I don't know where to go from there! I am willing to read documentation but I am very new to this and huge documentation is really intimidating and often hard for me to read through and learn from. I am glad to be a new member of this forum and I plan on being very active - helping with whatever i can (as small as it may be)! Thank you guys so much! |
asking for a lot? you've not really asked much in the first place.
Firstly, Running a home server is crappy generally. I'd suggest going and getting a **FREE** instance from amazon. Your server isn't free.. it's costing electricity etc... on a centos ssytem though, you should be able to just run "yum install php mysql-server httpd" or similar and that will install the relevant packages automagically. |
Quote:
I know it isn't free, i am doing this for the experience. I really want to learn all this stuff hands-on. I am actually not paying for my electricity right now (subleasing an apartment at a constant rate over the summer until i move into my actual apartment in September :) gotta love college haha). Anyway, Is that all i need? What about stuff like phpmyadmin, python, etc? thanks so much for the reply, i really appreciate it! |
python itself is already installed. you can use modpython to run python through apache if you need. If you want phpmyasdmin, install it. I wouldn't bother personally, but it depends what you want to learn and how.
|
Quote:
Also, i am not sure how to install it, the yum search really is not that conducive to intuitive searches, haha. Sorry if these questions are dumb... So it is basically a standard to just do 'yum install mysql-server httpd" for web servers? And that comes with Apache, MySQl, and PHP? What else does it come with? Once they are installed how do i go about configuring them to host my webpage (i have port 80 open), also i read some stuff about making my own SSL certificate, is that legitimate? Should i do it? |
I don't use anything else, just mysql directly.
yes, you'd generally just install httpd etc without much thought behind it for a small server. It'll sort out all the dependencies and get you going. It comes with whatever else is required. Interesting (??!) if you did a "yum install phpmyadmin" that would install apache, mysql and php as dependencies as well as anything else phpmyadmin needs. it's utterly legit to make a self signed cert. No browsers will trust it and you'll get a warning to click through, but it happens all the time where being signed by a formally trusted body doesn't matter. If it's for your use then it's just as secure as any commercial cert you can pay for. |
Alright, i think i am gong to get started on the install tomorrow seeing as how it is 3 AM over here in California. Thanks for the info, i might ask more questions tomorrow if that is okay?
|
Sure, ask as many as you wish just so long as the credit card details are processed correctly.
|
www.linuxhomenetworking.com would be something that you could read.
|
I just did 'yum install php mysql-server httpd' but i am not sure on my next steps. Is how a good time to install phpmyadmin? Should i configure the other stuff first? If so how do i configure everything and secure it so it can host my websites securely?
Also i did not see python in the dependencies for the stuff i installed? How do i make sure i can use Perl, Python, and Ruby on Rails as well as PHP which i just installed? EDIT: Also i am trying to get it set up so i can transfer files to and from it remotely, how do i do this? Sorry, i feel like i am just asking a bunch of noobish questions, i am googling this stuff while doing this but nothing clear is coming up EDIT: I got apache to work! Now i just need to learn to configure php and mySQL (as well as the other scripts). |
Salasi's link is good for what you want.
if you are new to Linux, this is a good tutorial (and not a bad ref anyway) http://rute.2038bug.com/index.html.gz You don't say what version of Centos you have ie 5.x or 6.x, but you can get the Admin guides to read here http://www.linuxtopia.org/online_boo...ion_index.html. Given that Centos is a free rebuild of RHEL, the RHEL manuals apply just as much. |
Quote:
Thanks for the links! I am not new to linux but i am completely new to server set up and administration. I am running CentOS 6.2 |
For file transfers sftp is your best bet. if windows is involved, run winscp on windows and connect to linux over ssh from there. SSH should already be running, which provides the sftp subsystem by default, although you may need to open up your firewall to al;low port 22 through it.
|
Quote:
Port 22 is already open(and stays open for some reason when every other port seems down). I tried to get port 80 to work today since it was causing me some trouble by closing on its own when i told it to open but i think i have it now. You should be able to access my server at: www.silmanserver.com or http://98.244.55.49 (Snocone server is an inside joke). So if i have followed your instructions right i now have httpd running, MySQL working php, and phpmyadmin (this one gave me trouble since i couldn't just do yum install phpmyadmin, its in a seperate repo and i had to fiddle around on google for a while to get it installed. I think i am learning a lot but i still feel like i know nothing, haha. tomorrow i will reserch how to install sFTP and how to use it to remotely log into my server. I have had experience with winSCP in the past so lets hope it works! Also i have a strong feeling that my server is completely insecure since it put it on my routers DMZ and i tried to pry open a lot of its ports (some ports like 443 and 21 STILL just won't work! I have no idea why 80 is working part time and the others all fail (except for 22 which is always open)! Anyway, whats some good software to download for server security? and where can i read about bolting down my server? Thanks so much! |
Quote:
Now, you could isolate it with iptables (the firewall...more than you want to know is available here), anything that indirectly runs an iptables ruleset for you (there are dozens of GUI front ends for iptables, and you could build your ruleset on another computer, if you wanted to), probably arrange whatever firewalling you have on your interface device to achieve a similar effect (some modem/routers have more useful firewall approximations than others) or you could pull out the network cable until you are done setting up. Your server currently responds to pings (a bit slowly, but hey, that could be anything). It is a target for any script kiddie who wants to try out their skills. It really doesn't matter that there is (if there is) nothing important to 'hack' on there,
Quote:
|
All times are GMT -5. The time now is 04:07 AM. |