Firewall installation and configuration in Kali Linux

Posted: 24 Nov 2017 in kali Linux
Tags: , , , , ,

Firewall installation and configuration in kali Linux.Basically after reading this article you will have complete knowledge of Firewall installation and configuration on Kal Linux in Detail.

You can easily manage,troubleshoot Firewall related problems after reading this simple and concise article on UFW and GUFW Firewall Configuration Tutorial.You will be able to enable,Disable,reset,Reload,Append and delete Firewall rules in kali Linux .

 

In this Firewall configuration tutorial we will Learn:

How to install UFW Firewall in Kali Linux.

How to Install GUFW Firewall in Kali Linux

How to Configure UFW Firewall in kali Linux.

How to Allow or Deny Services like http,https,Mysql,samba,ssh,ftp using Firewall in kali Linux.

How to Allow or Deny certain ip addresses using UFW Firewall.

How to Enable and Disable Firewall rules.

How to Reset or Reload Firewall rules.

How to delete Firewall rules.

How to allow or Deny Certain range of PORTS.

 
In Kali Linux There are two firewall implementation Method:

1.ufw(Through command line)
2.gufw(Through GUI Interface)

 

Before installing these packages we need to update kali linux package using below command.


root@kali:~/Desktop# apt-get upgrade

 

Now install command line Firewall (UFW)

root@kali:~# apt-get install ufw
How to List of Applications supported by UFW Firewall:

login as: satish
satish@192.168.0.101’s password:

The programs included with the Kali GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Kali GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Could not chdir to home directory /home/satish: No such file or directory

$ su – root
Password:
root@kali:~# clear

root@kali:~# ufw app list
Available applications:
AIM
Bonjour
CIFS
DNS
Deluge
IMAP
IMAPS
IPP
KTorrent
Kerberos Admin
Kerberos Full
Kerberos KDC
Kerberos Password
LDAP
LDAPS
LPD
MSN
MSN SSL
Mail submission
NFS
Nginx Full
Nginx HTTP
Nginx HTTPS
OpenSSH
POP3
POP3S
PeopleNearby
SMTP
SSH
Samba
Socks
Telnet
Transmission
Transparent Proxy
VNC
WWW
WWW Cache
WWW Full
WWW Secure
XMPP
Yahoo
qBittorrent
svnserve

Check Firewall status using below command:

root@kali:~# ufw status
 Status: inactive

root@kali:~# ufw status verbose
 Status: inactive

 

Now enable firewall using below command.

root@kali:~# ufw enable
 Firewall is active and enabled on system startup
Again test Firewall status :

root@kali:~# ufw status verbose
 Status: active
 Logging: on (low)
 Default: reject (incoming), allow (outgoing), disabled (routed)
 New profiles: skip

 

Allow services by there NAME or by PORT NUMBER:

root@kali:~# ufw allow 80/tcp
 Rule added
 Rule added (v6)

root@kali:~# ufw allow 22/tcp
 Rule added
 Rule added (v6)

root@kali:~# ufw allow samba
 Rule added
 Rule added (v6)

 

Now verify the Firewall Rules after Adding these Rules.

root@kali:~# ufw status verbose
 Status: active
 Logging: on (low)
 Default: reject (incoming), allow (outgoing), disabled (routed)
 New profiles: skip

To Action From
 -- ------ ----
 80/tcp ALLOW IN Anywhere
 22/tcp ALLOW IN Anywhere
 137,138/udp (Samba) ALLOW IN Anywhere
 139,445/tcp (Samba) ALLOW IN Anywhere
 80/tcp (v6) ALLOW IN Anywhere (v6)
 22/tcp (v6) ALLOW IN Anywhere (v6)
 137,138/udp (Samba (v6)) ALLOW IN Anywhere (v6)
 139,445/tcp (Samba (v6)) ALLOW IN Anywhere (v6)

 

 

Now you can clearly see the output and understand the rule i have applied through command line.

 

See the Firewall rules also by Name for easiness.

 

root@kali:~# ufw status numbered
 Status: active

To Action From
 -- ------ ----
 [ 1] 80/tcp ALLOW IN Anywhere
 [ 2] 22/tcp ALLOW IN Anywhere
 [ 3] Samba ALLOW IN Anywhere
 [ 4] 80/tcp (v6) ALLOW IN Anywhere (v6)
 [ 5] 22/tcp (v6) ALLOW IN Anywhere (v6)
 [ 6] Samba (v6) ALLOW IN Anywhere (v6)

 

Let’s Secure a web server by blocking http(80) service and allowing https(443) service only.

root@kali:~# ufw deny 80
 Rule updated
 Rule updated (v6)

root@kali:~# ufw allow 443
 Rule added
 Rule added (v6)
Check the Firewall rules:

root@kali:~# ufw status numbered
 Status: active

To Action From
 -- ------ ----
 [ 1] 80/tcp ALLOW IN Anywhere
 [ 2] 22/tcp ALLOW IN Anywhere
 [ 3] Samba ALLOW IN Anywhere
 [ 4] 80 DENY IN Anywhere
 [ 5] 443 ALLOW IN Anywhere
 [ 6] 80/tcp (v6) ALLOW IN Anywhere (v6)
 [ 7] 22/tcp (v6) ALLOW IN Anywhere (v6)
 [ 8] Samba (v6) ALLOW IN Anywhere (v6)
 [ 9] 80 (v6) DENY IN Anywhere (v6)
 [10] 443 (v6) ALLOW IN Anywhere (v6)

 

How to Allow or Deny a Certain range of PORT:

root@kali:~# ufw allow 21:80/tcp
 Rule added
 Rule added (v6)
root@kali:~# ufw deny 100:1000/tcp
 Rule added
 Rule added (v6)

Now Check the Firewall rules we have applied above:

root@kali:~# ufw status numbered
 Status: active

To Action From
 -- ------ ----
 [ 1] 80/tcp ALLOW IN Anywhere
 [ 2] 22/tcp ALLOW IN Anywhere
 [ 3] Samba ALLOW IN Anywhere
 [ 4] 80 DENY IN Anywhere
 [ 5] 443 ALLOW IN Anywhere
 [ 6] 21:80/tcp ALLOW IN Anywhere
 [ 7] 100:1000/tcp DENY IN Anywhere
 [ 8] 80/tcp (v6) ALLOW IN Anywhere (v6)
 [ 9] 22/tcp (v6) ALLOW IN Anywhere (v6)
 [10] Samba (v6) ALLOW IN Anywhere (v6)
 [11] 80 (v6) DENY IN Anywhere (v6)
 [12] 443 (v6) ALLOW IN Anywhere (v6)
 [13] 21:80/tcp (v6) ALLOW IN Anywhere (v6)
 [14] 100:1000/tcp (v6) DENY IN Anywhere (v6)

 

How to Allow or deny certain IP Address in UFW Firewall:


root@kali:~# ufw allow from 192.168.0.100
 Rule added
root@kali:~# ufw deny from 172.24.0.200
 Rule added

Now Again check the firewall rules:

root@kali:~# ufw status numbered
 Status: active

To Action From
 -- ------ ----
 [ 1] 80/tcp ALLOW IN Anywhere
 [ 2] 22/tcp ALLOW IN Anywhere
 [ 3] Samba ALLOW IN Anywhere
 [ 4] 80 DENY IN Anywhere
 [ 5] 443 ALLOW IN Anywhere
 [ 6] 21:80/tcp ALLOW IN Anywhere
 [ 7] 100:1000/tcp DENY IN Anywhere
 [ 8] Anywhere ALLOW IN 192.168.0.100
 [ 9] Anywhere DENY IN 172.24.0.200
 [10] 80/tcp (v6) ALLOW IN Anywhere (v6)
 [11] 22/tcp (v6) ALLOW IN Anywhere (v6)
 [12] Samba (v6) ALLOW IN Anywhere (v6)
 [13] 80 (v6) DENY IN Anywhere (v6)
 [14] 443 (v6) ALLOW IN Anywhere (v6)
 [15] 21:80/tcp (v6) ALLOW IN Anywhere (v6)
 [16] 100:1000/tcp (v6) DENY IN Anywhere (v6)
 
How to Allow a Particular network

root@kali:~#ufw allow from 192.168.0.0/24

Now above command will allow all ip from network 192.168.0.0/24

How to  Block a Particular network

root@kali:~#ufw deny from 192.168.1.0/24

Now above command will block all ip from network 192.168.1.0/24
How to Delete a Particular Firewall rules:

we want to delete Rules of Line Number 4


root@kali:~# ufw delete 4
 Deleting:
 deny 80
 Proceed with operation (y|n)? y
 Rule deleted
How to Reset Everything or Reload Firewall rules:

root@kali:~# ufw reset
 Resetting all rules to installed defaults. Proceed with operation (y|n)? y
 Backing up 'user.rules' to '/etc/ufw/user.rules.20171124_072802'
 Backing up 'before.rules' to '/etc/ufw/before.rules.20171124_072802'
 Backing up 'after.rules' to '/etc/ufw/after.rules.20171124_072802'
 Backing up 'user6.rules' to '/etc/ufw/user6.rules.20171124_072802'
 Backing up 'before6.rules' to '/etc/ufw/before6.rules.20171124_072802'
 Backing up 'after6.rules' to '/etc/ufw/after6.rules.20171124_072802'

 

root@kali:~# ufw status numbered
 Status: inactive

To allow a specific IP address to access specific service:


For example here i will allow ip address 192.168.0.100 to access FTP service only.


root@kali:~# ufw allow from 192.168.0.100 to any port 21 proto tcp
Rule added
root@kali:~#

 

UFW Firewall Configuration file:


root@kali:~# cat /etc/ufw/before.rules

root@kali:~# cat /etc/ufw/after6.rules


How to enable Logging:

root@kali:~# ufw logging on
Logging enabled


How to Set Default Rules:

#ufw default allow outgoing #ufw default deny incoming

 

Allow HTTP from Specific IP Address or Subnet


here I want to allow 192.168.1.0 network to access my web services.


 

root@kali:~#ufw allow from 192.168.1.0/24 to any port 80

 

Allow SSH to Specific Network Interface


root@kali:~#ufw allow in on eth1 to any port 22

 

Block Connections to a Network Interface

To block connections from a specific IP address, e.g. 192.168.1.100, to a specific network interface, e.g. eth0, use this command:


root@kali:~#ufw deny in on eth0 from 192.168.1.100

 

Block Connections to a Network Interface

To block connections from a specific IP address, e.g.  172.16.0.100  to a specific network interface, e.g. eth0, use this command:


root@kali:~#ufw deny in on eth0 from 172.16.0.100

 

For Live Practical session on UFW Firewall Configuration you can watch my Video here:

 

Advertisement

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.