Starting Linux Web Hosting Administration
I've goggled for a while for that topic and found a lot of thing:-
1) It is not an easy way to go through and it takes time.
2) If you want to learn then forget about panels and go for command line interface.
3) It takes time.
So this is what I've got from goggle.
Also while ubuntu is the most widely used distribution and most supported but for a stable and secure for the long run, one should stick to centos or debian but it is all just a matter of personal preferences and I realized that more or many go towards centos.
when I explored various resources I've found myself lost and can not find my way for what to do 1st and what to do next …etc.
So why I am posting here?
Because I am asking for a plan for what to do next and what to do next? then I will follow this plan in my own and goggle it to learn as no one teaching any one but you should try it yourself.
So may some one give me a plan ? I do not mean details but just lines and I will do it in my own.
I am in a situation that I do not know what to search for? what is the term to search for?
Then I will dive more and more.
I hope that I was able to express it the right way.
16 Replies
But Debian and CentOS are both excellent choices too, this really comes down to personal preference. For me, I like being in a Debian-like ecosystem with a fixed and predictable release schedule, and that's Ubuntu.
@Guspaz:
They don't seem to publish them on the new website anymore, but until they launched the new site, Ubuntu was the overwhelming distro of choice among Linode customers, followed by Debian. I would actually argue that Ubuntu is more stable and secure over the long run than a rolling release OS like Debian, due to the LTS releases, which are released every 2 years (in April) and are supported for 5 years:
http://en.wikipedia.org/wiki/List_of_Ub … f_versions">http://en.wikipedia.org/wiki/ListofUbuntureleases#Tableof_versions But Debian and CentOS are both excellent choices too, this really comes down to personal preference. For me, I like being in a Debian-like ecosystem with a fixed and predictable release schedule, and that's Ubuntu.
Thanks for replying.
I could not agree more with what you said.
But regarding what I've asked for in the topic, what about it?
> Because I am asking for a plan for what to do next and what to do next? then I will follow this plan in my own and goggle it to learn as no one teaching any one but you should try it yourself.
So may some one give me a plan ? I do not mean details but just lines and I will do it in my own.
I am in a situation that I do not know what to search for? what is the term to search for?
Then I will dive more and more.
The quickstart guide is something to look at. There are also a few introductory articles here:
"Introduction to Linux Concepts" is probably a good place to start.
Learning system administration takes hundreds of hours of hands on experience; it is not a "quick read". There is no fast track to becoming a system administrator, and there is no "reading list" that I'm aware of. You can take classes (brick & mortar or online), read many books & articles, etc but you still need hands on experience. Always learn from your mistakes (there will be many; we've all made them), and always make backups of your system and even any config file you're going to mess with. No exceptions.
The very first thing you need to do is determine what you want/need your server to do and learn a general overview of how that process works. If you don't understand the flow/path of how things work then you can't figure out what will or won't work for you at one of the many stops along the way.
Below are some of the important items you need to consider; this list in not complete by any means:
if you're going to use control panel software then you need to pick one (too many to paid & free options to list), learn how to use it and learn basic Linux command line management. Remember that it's almost impossible to remove control panel software after you've installed it. You'll need to start with a clean installation to try another one or to run your server without one.
if you're not going to use control panel software you need to learn basic & intermediate Linux command line management.
if you're going to be running one of the popular CMS packages, frameworks, forums, etc then you need to determine what the requirements are for your package(s) of choice and learn about them.
if you're using Apache, nginx, lighttpd or something else as your web server software then you need to learn basic management & configuration for Apache, nginx, lighttpd or something else.
if you're using a database like MySQL, MarinaDB, Postgres, Mongo, etc then you need to learn basic management & configuration for MySQL, MarinaDB, Postgres, Mongo, etc.
if your website(s) use Ruby, PHP, Python, Go or something else then you need to learn how your platform of choice interacts with your web server software (eg, Apache, nginx, lighttpd, etc).
if you're hosting email then you need to pick an MTA (eg, Postfix, qmail, Exim, sendmail, etc) and a delivery agent (Dovecot, Courier, etc). You may even need to pick webmail software (Roundcube, Squirrel Mail, Horde, ATMail, etc).
if you use one of the hundreds of other Linux utilities or packages then you need to learn how they work, how they interact with your configuration and how to manage & configure them.
Some of these choices are made for you if you choose a CMS, framework, forum, etc. That just removes the complexity of making choices and does not remove the necessity to learn about what it takes to manage one of those options. Remember, you're not "running a website." You're "running a server that you website(s) run on." There is a difference if you actually intend to be a system administrator.
A control panel could make you too reliant on GUI, and there are some things that you might not be able to do without a terminal or remote desktop.
@vonskippy:
Unless you need to have non-sysadmins config their own systems (i.e you're reselling web services) - control panels are a complete waste of resources - avoid like the plague.
you mean to deal with everything from command line even the database queries and no phpmyadmin?
@MGadAllahBasheer:
@vonskippy:Unless you need to have non-sysadmins config their own systems (i.e you're reselling web services) - control panels are a complete waste of resources - avoid like the plague.
you mean to deal with everything from command line even the database queries and no phpmyadmin?
MySQL workbench is a better bet (or some other desktop client). It connects over SSH so it's secure and it performs well.
Here's a free Linux 'Intro to Linux' course (usually $2,400):
That may be a good place to start.
@Guspaz:
PHPMyAdmin can be used over SSH too, via tunnelling, either by tunnelling to the non-accessible web interface or by running it locally and tunnelling the SQL connection.
Like using the server as a SOCKS proxy and setting the web server virtual host to only allow access from the server's IP address?