25. Install Linux Malware Detect (LMD)
Linux Malware Detect (LMD) is a open source Linux malware scanner released under the GNU GPLv2 license, that is
specially designed for threats faced in hosting environments. For complete installation, configuration and usage of LMD can be found at:
26. Server Bandwidth Testing with Speedtest-cli
speedtest-cli is a tool written in python to test internet bandwidth including download and upload speed. For complete installation and usage of speedtest-cli tool, read our article at Check Linux Server Bandwidth Speed from Command Line
27. Configure Cron Jobs
This is one of the most widely used software utility. It function as job scheduler i.e., schedule a job now that will execute in future itself. It is useful in logging and maintaining records unattained as well as several other routine work like regular backup. All the schedule is written in /etc/crontab file.
The crontab file contains 6 fields as follows:
Minutes Hour Day of Month Month of Year Week Day Command (0-59) (0-23) (1-31) (1/jan-12/dec) (0-6/sun-sat) Command/script

To run a cron job (say run /home/$USER/script.sh) everyday at 04:30 am.
Minutes Hour Day of Month month of year Week Day command 30 4 * * * speedtest-cli
Add the following entry to the crontab file ‘/etc/crontab/‘.
30 4 * * * /home/$user/script.sh
After adding the above line to crontab, it will run automatically at 04:30 am everyday and the output depends upon what is there in script file. Moreover script can be replaced by commands. For more examples of cron jobs, read 11 Cron Jobs Examples in Linux
28. Install Owncloud
Owncloud is a HTTP based data synchronization, file sharing and remote file storage application. For more detail on installing own cloud, you may like to see this article : Create Personal/Private Cloud Storage in Linux
29. Enable Virtualization with Virtualbox
Virtualization is a process of creating virtual OS, Hardware and Network, is one of the most sought technology of these days. We will be discussing on how to install and configure virtualization in detail.
Our CentOS Minimal server is a headless server. Lets prepare it to host virtual machines that is accessible over HTTP by installing following packages.
# yum groupinstall 'Development Tools' SDL kernel-devel kernel-headers dkms

Change working directory to ‘/etc/yum.repos.d/‘ and download Virtualbox repository.
# wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc
Install the key just downloaded.
# rpm --import oracle_vbox.asc
Update and Install Virtualbox.
# yum update && yum install virtualbox-4.3
Next, download and install Virtualbox extension pack.
# wget http://download.virtualbox.org/virtualbox/4.3.12/Oracle_VM_VirtualBox_Extension_Pack-4.3.12-93733.vbox-extpack # VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-4.3.12-93733.vbox-extpack


Create a user ‘vbox‘ to manage virtualbox and add it to group vboxusers.
# adduser vbox # passwd vobx # usermod -G vboxusers vbox
Install HTTPD server.
# yum install httpd
Install PHP (with soap extension).
# yum install php php-devel php-common php-soap php-gd
Download PHP virtualBox.
# wget http://sourceforge.net/projects/phpvirtualbox/files/phpvirtualbox-4.3-1.zip
Extract the zip and copy the extracted folder to HTTP working directory.
# unzip phpvirtualbox-4.*.zip # cp phpvirtualbox-4.3-1 -R /var/www/html
Next, rename file /var/www/html/phpvirtualbox/config.php-example to var/www/html/phpvirtualbox/config.php.
# mv config.php.example config.php
Open the configuration file to edit and add ‘username‘ and ‘password‘ we just created in the above step.
# vi config.php
Finally, restart VirtualBox and HTTP server.
# service vbox-service restart # service httpd restart
Now forward the port and access it on a headed server.
http://192.168.0.15/phpvirtualbox-4.3-1/


I followed this guide. Its really helpful. As you said quite extensively about installing apache, databases and others.
Can you also provide a guide regarding how to upload a site in CentOS after doing all this?
You can use WordPress and add the blogs.create new website add the domain to that website apache.
I am wondering why httpd,php is installed after installing virtualbox. Initially it is installed, will it conflict
Resourceful tutorial for Linux enthusiast.
There is a mistake in the SSH section. The config file is NOT ‘ssh-config’. That is meant for the SSH client not the server. The SSH server settings are in ‘sshd-config’. As a noob, it took me a while to figure out why my changes had no effect on the server.
Otherwise, this has been a great resource for someone like me learning Linux for the first time. Thanks!
@Gary,
Thanks for notifying, yes it should sshd_config for configuring SSH Server. We’ve corrected in the article.
One of the commands didn’t work for me, the one related to opening up the httpd port through firewalld. I got a syntax error
I got a successful execution with the following command, because I did not choose to assign http a funky port, just the standard one (80)
If you want to use a custom port for httpd, use this command, which specifies the port/protocol:
SOURCE:
https://stackoverflow.com/questions/24729024/open-firewall-port-on-centos-7
Thank you for getting this information together, it is very helpful for people not familiar to minimal dekstop-less installations.
There’s a syntax error in the article, it should say:
(two dashes instead of one, before every argument)
@IvanZ,
Thanks, I have corrected the command in the article..