Hey Folks, today we are going to configure MODX CMS on ubuntu operating system. MODX is an open source content management system and web application framework for publishing content on the world wide web and intranets. MODX cms written in the PHP programming language, and supports MySQL, MariaDB and Percona Server as the database.
Let’s take a look 😛 !!
Add Repository
By default, the latest version of PHP is not installed in the Ubuntu operating system, so we will add this given repository so that the latest version of PHP can be installed in the ubutnu operating system. After adding it then execute the update command.
1 2 | sudo add-apt-repository ppa:ondrej/php sudo apt-get update |
Apache Installation
We need a web server to configure or host any web application so we will first install apache web server to host our wordpress on our ubuntu operating system.
1 | sudo apt install apache2 |
Installation of MySQL Database
Likewise, we need a database server in the backend to keep the credentials and information of ourselves and our customers. Now we will install maria database server to store all those data and content.
1 | apt install mysql-client mysql-server |
Installation of PHP
Now we can install any version of PHP which is available, but in this time we need version 7.1 of PHP which we install using the following command.
1 | sudo apt-get install libapache2-mod-php7.1 php7.1-common php7.1-mbstring php7.1-xmlrpc php7.1-soap php7.1-gd php7.1-xml php7.1-intl php7.1-mysql php7.1-cli php7.1-mcrypt php7.1-zip php7.1-curl -y |
Activate Services
Now we will enable all the services that we had downloaded.
1 2 | sudo systemctl start apache2 sudo systemctl start mysql |
Protect Remote Root Login
We will take the following steps to secure our database server only. All you have to do is change the root password of mysql as per your choice and the rest has to be done as we have done below.
1 | sudo mysql_secure_installation |
Just enter “Y” everywhere and move ahead.
Manage & Create Database
Now we will create a database with username and password using the following command. You can keep all things or names according to yourself.
1 2 3 4 5 6 | sudo mysql -u root -p create database modx_db; CREATE USER 'modx'@'localhost' IDENTIFIED BY '123'; GRANT ALL ON modx_db.* TO 'modx'@'localhost' IDENTIFIED BY '123'; FLUSH PRIVILEGES; exit; |
Install MODX CMS
First we have to download the entire project of MODX CMS via wget command and unzip it.
1 2 | wget https://modx.s3.amazonaws.com/releases/2.6.3/modx-2.6.3-pl.zip unzip modx-2.6.3-pl.zip |
The CMS folder must grant some required permissions, so follow these steps.
Step 1: Copy the entire folder to the root folder of Apache.
Step 2: Chane ownership.
Step 3: Give permissions.
Step 4: Retart apache web server.
1 2 3 4 | sudo cp -r modx-2.6.3-pl /var/www/html/modx sudo chown -R www-data:www-data /var/www/html/modx sudo chmod -R 775 /var/www/html/modx sudo systemctl restart apache2 |
Ready 😛 !! After that all you have to do is open the following location on your browser and select the language according to you.
1 | http://localhost/modx/setup |
Without any doubt just click on “next” button and proceed.
This automatically adds the required details, so we need to click the “Next” button.
Now enter the maria database credentials and click on “test database server” in order to check the validation of credentials.
Just scroll down a little, click on the highlighted hyper link and create a username and password to protect the admin panel.
Again click on “next” button and proceed.
Now enter credentials and go to the admin panel.
Done 😛 !! We have successfully reached the admin panel of CMS which means that CMS is successfully installed in the operating system.
Good 😛 !! Now whenever someone browses your domain or IP address, the interface of CMS will look like the image given below.
A keen learner and passionate IT student. He has done Web designing, CCNA, RedHat, Ethical hacking, Network & web penetration testing. Currently, he is completing his graduation and learning about Red teaming, CTF challenges & Blue teaming.