How to Restrict IP Address in Apache Ubuntu?

03-Jul-2023

.

Admin

How to Restrict IP Address in Apache Ubuntu?

Hello Friends,

In this example, you will learn how to restrict ip addresses in apache ubuntu. Here you will learn to restrict ip addresses in apache ubuntu if you have questions about how to restrict or block ip addresses in apache ubuntu then I will give a simple example with a solution. I want to share with you how to secure specific URLs in Apache.

To restrict IP address access in Apache on Ubuntu, you can follow this tutorial. It will guide you through the process on Ubuntu versions 21.10, 21.04, 20.04, 18.04, and 16.04 servers.

Step 1: Open 000-default.conf File


Open your terminal and execute the following command on the terminal to open 000-default.conf file; as follows:

sudo nano /etc/apache2/sites-available/000-default.conf

Step 2: Update 000-default.conf File

Then add a Directory tag for restricting IP addresses. we added “111.111.111.111”, you can replace which ip you want to block; as follows:

<VirtualHost *:80>

# The ServerName directive sets the request scheme, hostname, and port that

# the server uses to identify itself. This is used when creating

# redirection URLs. In the context of virtual hosts, the ServerName

# specifies what hostname must appear in the request's Host: header to

# match this virtual host. For the default virtual host (this file) this

# value is not decisive as it is used as a last resort host regardless.

# However, you must set it for any further virtual host explicitly.

#ServerName www.example.com

ServerAdmin webmaster@localhost

DocumentRoot /var/www/html

# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,

# error, crit, alert, emerg.

# It is also possible to configure the loglevel for particular

# modules, e.g.

#LogLevel info ssl:warn

ErrorLog ${APACHE_LOG_DIR}/error.log

CustomLog ${APACHE_LOG_DIR}/access.log combined

# For most configuration files from conf-available/, which are

# enabled or disabled at a global level, it is possible to

# include a line for only one particular virtual host. For example the

# following line enables the CGI configuration for this host only

# after it has been globally disabled with "a2disconf".

#Include conf-available/serve-cgi-bin.conf

<Directory /var/www/html>

order allow,deny

deny from 111.111.111.111

allow from all

</Directory>

</VirtualHost>

Step 3: Restart Apache Web Server

Execute the following command on the terminal to restart the Apache web server; as follows:

sudo service apache2 reload

Step 4: Test with IP Address

Open browser and check your IP; as follows:

http://your_server_ip

OR

http://localhost

I hope it can help you...

#Ubuntu