How to Whitelist/Allow IP Address in Apache Ubuntu?
Hi,
This article will give you example of how to whitelist ip address in apache. i explained simply about apache allow from multiple ip. This tutorial will give you simple example of ubuntu apache allow ip address. you'll learn apache allow specific ip.
In this post, i will show you how to whitelist specific ip address to access our website in apache2 server in ubuntu 22.10, ubuntu 22.04, ubuntu 21.10, ubuntu 21.04, ubuntu 20.04, ubuntu 18.04 and ubuntu 16.04 server. we need to add Directory tag on config file and add "Allow from". so let's see bellow solution:
Whitelist/Allow IP Address in Apache2:
Here, we will add Directory tag for restrict ip address. i added "111.111.111.111", you can replace which ip you want to block.
Let's run bellow command and update file as bellow:
sudo nano /etc/apache2/sites-available/000-default.conf
/etc/apache2/sites-available/000-default.conf
<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 deny,allow
deny from all
Allow from 111.111.111.111
</Directory>
</VirtualHost>
Now, let's restart apache2.
sudo service apache2 reload
After installing successfully, you can go to the browser and check your IP as like bellow and layout:
http://your_server_ip
OR
http://localhost
Output:
i hope it can help you...
Hardik Savani
I'm a full-stack developer, entrepreneur and owner of ItSolutionstuff.com. I live in India and I love to write tutorials and tips that can help to other artisan. I am a big fan of PHP, Laravel, Angular, Vue, Node, Javascript, JQuery, Codeigniter and Bootstrap from the early stage. I believe in Hardworking and Consistency.
We are Recommending you
- How to Install Laravel in Ubuntu Server?
- How to Set Up Password Authentication with Apache in Ubuntu?
- How to Install Composer in Ubuntu Server?
- How to Install Apache PHP MySQL and Phpmyadmin on Ubuntu?
- How to Change PHP Version in Ubuntu Server?
- How to Install Phpmyadmin in Ubuntu Server?
- How to Install MySQL in Ubuntu Server?
- How to Install PHP in Ubuntu Server?
- How to Install Apache Web Server on Ubuntu Server?
- Apache Reverse Proxy with Authentication Example
- How to Enable Apache mod_rewrite Module in Ubuntu?