As we know how much web stack is important for hosting web content in linux environment and in this tutorial we will setup our web server for penetration testing on Ubuntu OS.
What is LAMP ?
LAMP stands for Linux, Apache, MySQL, and PHP. Its all are very common example of a web service stack each component. These are the first priority whenever the web application has been hosted into the web server.
What steps will we follow ?
Lets do it 🙂 !!
Install Apache Nmap PHP SSH FTP
- Apache – Apache is the most commonly used web server in linux operating system. It is a free open source software which runs over 50% of the world’s wide web servers.
- PHP – PHP is a popular general-purpose scripting language that is especially suited to web development.
- Nmap – Nmap is a free and open-source network scanner. It also used for vulnerability scanning and network discovery and analyzing the responses.
- SSH – Secure Shell (SSH) is a cryptographic network protocol. It is a secure way to access a computer over an unsecured network.
- FTP – File Transfer Protocol is a standard network protocol used for the transfer of computer files between a client and server on a computer network.
Now we will install all these in a single command.
apt install apache2 php ssh vsftpd nmap -y
MySQL is a relational database management system based on SQL – Structured Query Language that is works with SELECT , DELETE , INSERT , REPLACE , and UPDATE statements. MySQL is used to manage database systems, retrieving data from database tables etc.
Lets install the MySQL database server by using the “apt-get” command.
apt install mysql-server -y
We will login to the database after installation. If we are logging in with root, it is not necessary to enter the password.
mysql -u root -p
After login we have to provide all the privileges to the user of ubuntu, in our case we will select the user “shubham” whose password is “123“.
GRANT ALL PRIVILEGES ON . TO 'shubham'@'%' IDENTIFIED BY '123' WITH GRANT OPTION;
We need to execute the flush privileges command to update the database.
Here you can see that we have configured Web Server Lab in a few minutes.
Docker is a tool designed to make it easier to create, deploy, and run applications by using containers.
Now we will configure our Web Server Lab in docker. In order to create a Docker-based LAMP stack we need to download docker first in ubuntu using the following command.
apt install docker.io
After the installation we have to download the docker-compose which let us easily organize multi-container applications using yaml configuration files.
apt install docker-compose
After install all these we need to create a “.yaml” file that will contains the following configuration.
Note : If you are trying this in the new ubuntu, you can enter the given configuration otherwise you will have to change the port and credentials accordingly.
cat > docker-compose.yaml
After sets the configuration accordingly, now its time to build our project and setup the web server using the following command.
docker-compose up -d
This may take some time, but you can see that all the service has started in the docker.
Check the service to see if the service is working properly. You can see that our Apache server is working successfully on port 82.
Now let’s check the phpmyadmin server, whose username is “user” and the password is “test“
Windows – XAMPP
XAMPP is a free and open-source web server stack package, consisting mainly of the Apache HTTP Server, MariaDB database, and interpreters for scripts written in the PHP and Perl programming languages.
Configuring the web server lab on a window machine is quite easy. First we have to install the “XAMPP” application from the official website. Once installed we have to click on the “Start” button of the Apache and MySQL service.
Done ! Our web server is successfully deployed in the window machine.
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.