Introduction to CloudLinux
Now-a-days almost all hosting providers offers CloudLinux especially in a shared environment.
CloudLinux was firstly introduced in 2010. It supports major webhosting control panels like cPanel, Plesk and DirectAdmin.
What is CloudLinux? [Go to Direct Installation Steps]
CloudLinux is a Linux based Operating system especially used in a shared environment which isolates each user in its own light weight virtualized environemnts (LVE) which consumes predefined amount of resources allocated for each user. That is, each user will be in a caged environment.
The resource usage of any user won’t affect the stability of another users. Each user will be allocated a specific amount of resources. If a user’s PHP script utilizes the entire resources allocated to it, then it won’t affect other users. Only that particular user will face problems related to this.
That particular user will get a “Resource limit reached” error while he access his website.
How normal hosting differ from CloudLinux based hosting? (Normal Hosting Vs CloudLinux)
In normal hosting, if resource usage of a user exceeds it’ll affect all other users in the server. Thereby it increases the server load which makes the server slow response times and brings the sever down. A single user in a normal shared environment can cause problems to 100s of websites.
That is, normal hosting have no control over individual accounts. Also, in normal hosting, all users will have the same PHP version which is enabled in the server. If a user’s PHP script is incompatible with latest PHP version, then upgrading PHP in the server will cause sever problems to his website and he has to face downtimes with his domain.
If a user needs to alter any PHP extension value such as memory_limit then he needs to either upload a custom php.ini file or need to do it in .htaccess file. Also, a major security vulnerability that threats shared hosting environment is Sym link attack. Symlink attack means, if a hacker gain access to a user’s account, he can create symbolic links to 1000s of files in an insecure method. He can create sym links to all the users’ files.
In CloudLinux based hosting, as I’ve mentioned earlier, each user will have its own cage like environment with predefined amount of resources. Also, another main feature that CloudLinux provides is that each user have the ability to select the PHP version that is suitable for his domain.
Each user have their own PHP extensions and modules enabled for their webhosting account. Users have the ability to select it from their cPanel. There is no need to upload custom php.ini, he can simply change to his desired value from his cPanel interface.
Yes, CloudLinux is a best solution for Symlink attacks as each user is in its own caged environment, even if an intruder gain access to any of the account he won’t be able to take the control of entire domains in the server 🙂
Advantages of CloudLinux
1. Improved stability by limiting the resource usage of each user
In a traditional shared hosting, the resource usage of a single user can slow down the entire server whereas in CloudLinux based hosting as each user is in its own Light weight virtual environment, it won’t affect other users in the server.
2. High server security
With CageFS enabled in CloudLinux based servers, the data/information of a user won’t be available to other users. Hence it prevents a large number of security vulnerabilities.
3. Multiple PHP versions
By installing PHP selector module in CloudLinux based server, each user will have the ability to select the PHP version that required from their control panel.
4. Hardened Kernel
CloudLinux protects the server from symlink attacks and other trace exploits.
How to convert CentOS servers to CloudLinux?
Yes, anyone reading this topic will surely ask this question that is our CentOS servers can be converted to CloudLinux? Yes, CentOS servers can be converted to CloudLinux. CentOS 5.x and CentOS 6.x servers can easily be converted to CloudLinux.
Installation of CloudLinux is very easy. If you’ve CentOS server (5.x or 6.x) server, then follow the steps below to install CloudLinux.
1. Download the CloudLinux repo to the server.
# wget http://repo.cloudlinux.com/cloudlinux/sources/cln/cldeploy
2. Next step is activating your license.
a. If you’ve an activation key, then
# sh cldeploy -k
b. If you’ve IP based license, then
# sh cldeploy -i
3. Reboot the server
# shutdown -rf now
Once the server is rebooted, run the following command to check the OS
# cat /etc/redhat-release
Now, your server has CloudLinux OS installed.