How to manage my CentOS VPS without cPanel [closed]

Do I really need a panel to manage VPS?

Nope, all you need is a shell prompt.

What do I need to know?

I'd start by learning how to configure Apache, particularly vhosts.


You could live without a panel, but its a huge pain. You need to almost know everything about a CentOS box and of course about servers.

The major problem would be security, of course since you can't know much security.

BTW if you're intending to have only ten sites, you can live without a panel, just setup a LAMP, CSF (firewall), learn some httpd.conf (apache configuration) and MySQL configuration (mostly for separation of user access)

Keep in mind that most of the time a panel is needed by customers since they don't know much about tech (usually) but if you're setting up the sites yourself, its ok.

Free control panels (like Kloxo) are not trustworthy. Kloxo developer performed suicide cuz his software ruined many servers when a huge security bug was found.


I will be hosting around 10 Drupal sites with reasonable amount of traffic. Will the above specs be sufficient?

You can install and run 10 drupal sites easily on "VPS w/ Dual Virtual Core/CentOS/150G/1gb ram/2 IP".

Of course get enough traffic and you'll outgrow any server. You'll need to be doing more than hundreds of simultaneous connection to max out what a server of that spec can handle (of course this is highly dependant on your final setup...something like SSL will require more CPU power, load your site up with inefficient PHP scripts and they will chew your RAM etc)

My Host can install any free panel like Kloxo, VHCS etc. First of all, do I really need a panel to manage VPS?

Do you need a panel? No, there's no "need" but you might find it makes life easier. You might find dealing with a control panel makes things harder! Only you can answer that question.

If I can manage without a control panel, what do I need to know? Can I accomplish it over period by first using CentOS on my local machine?

CentOS is a fine to use as your web server. You could install a typical LAMP setup without too much fuss. I've included a link that walks you through it and an example of the commands you'll run. You'll need to do some configuration of the web server for each site, but that's not too difficult either.

If you do want to go down the Control Panel route, the tutorial also shows you how to install webmin.

http://www.howtoforge.com/quick-n-easy-lamp-server-centos-rhel

apache

yum install httpd httpd-devel
/etc/init.d/httpd start

mysql

yum install mysql mysql-server mysql-devel
/etc/init.d/mysqld start
mysql
mysql> USE mysql;
mysql> UPDATE user SET Password=PASSWORD('newpassword') WHERE user='root';
mysql> FLUSH PRIVILEGES;
mysql -u root -p
Enter Password: <your new password>
mysql > create database demo
mysql >GRANT ALL PRIVILEGES ON demo.* TO 'guest'@'localhost' IDENTIFIED BY 'guest' WITH GRANT OPTION;
mysql> UPDATE user SET Password=PASSWORD('guest') WHERE user='guest';

php

yum install php php-mysql php-common php-gd php-mbstring php-mcrypt php-devel php-xml
/etc/init.d/httpd restart
yum install phpmyadmin
nano /etc/httpd/conf.d/phpmyadmin.conf
nano /usr/share/phpmyadmin/conf.inc.php

make sure things start on boot

chkconfig httpd on
chkconfig mysqld on