Configure Uncomplicated Firewall (UFW) on Ubuntu 14.04

Configure Uncomplicated Firewall (UFW) on Ubuntu 14.04

Security is crucial when you run your own server. You want to make sure that only authorized users can access your server, configuration, and services.

In Ubuntu, there is a firewall that comes preloaded. It's called UFW (Uncomplicated Firewall). Although UFW is a pretty basic firewall, it is user friendly, excels at filtering traffic, and has good documentation. Some basic Linux knowledge should be enough to configure this firewall on your own.

Install UFW

Notice that UFW is typically installed by default in Ubuntu. But if anything, you can install it yourself. To install UFW, run the following command.

sudo apt-get install ufw

Allow connections

If you are running a web server, you obviously want the world to be able to access your website(s). Therefore, you need to make sure that the default TCP port for web is open.

sudo ufw allow 80/tcp

In general, you can allow any port you need by using the following format:

sudo ufw allow <port>/<optional: protocol>

Deny connections

If you need to deny access to a certain port, use this:

sudo ufw deny <port>/<optional: protocol>

For example, let's deny access to our default MySQL port.

sudo ufw deny 3306

UFW also supports a simplified syntax for the most common service ports.

root@127:~$ sudo ufw deny mysql
Rule updated
Rule updated (v6)

It is highly recommended to restrict access to your SSH port (by default it's port 22) from anywhere except your trusted IP addresses (example: office or home).

Allow access from a trusted IP address

Typically, you would need to allow access only to publicly open ports such as port 80. Access to all other ports need to be restricted or limited. You can whitelist your home/office IP address (preferably, it is supposed to be a static IP) to be able to access your server through SSH or FTP.

sudo ufw allow from 192.168.0.1 to any port 22

Let's also allow access to the MySQL port.

sudo ufw allow from 192.168.0.1 to any port 3306

Looks better now. Let's move on.

Enable UFW

Before enabling (or restating) UFW, you need to make sure that the SSH port is allowed to receive connections from your IP address. To start/enable your UFW firewall, use the following command:

sudo ufw enable

You will see this:

root@127:~$ sudo ufw enable
Command may disrupt existing ssh connections. Proceed with operation (y|n)?

Type Y, then press Enter to enable the firewall.

Firewall is active and enabled on system startup

Check UFW status

Take a look at all of your rules.

sudo ufw status

You will see output similar to the following.

sudo ufw status
Firewall loaded

To                         Action  From
--                         ------  ----
22:tcp                     ALLOW   192.168.0.1
22:tcp                     DENY    ANYWHERE

Use the "verbose" parameter to see a more detailed status report.

sudo ufw status verbose

Disable/reload/restart UFW

To disable (stop) UFW, run this command.

sudo ufw disable

If you need to reload UFW (reload rules), run the following.

sudo ufw reload

In order to restart UFW, you will need to disable it first, and then enable it again.

sudo ufw disable
sudo ufw enable

Again, before enabling UFW, make sure that the SSH port is allowed for your IP address.

Removing rules

To manage your UFW rules, you need to list them. You can do that by checking UFW status with the parameter "numbered". You will see output similar to the following.

root@127:~$ sudo ufw status numbered
Status: active

To                              Action      From
--                              ------      ----
[ 1] 22                         ALLOW IN    192.168.0.1
[ 2] 80                         ALLOW IN    Anywhere
[ 3] 3306                       ALLOW IN    192.168.0.1
[ 4] 22                         DENY IN     Anywhere

Noticed the numbers in square brackets? Now, to remove any of these rules, you will need to use these numbers.

sudo ufw delete [number]

Enabling IPv6 support

If you use IPv6 on your VPS, you need to ensure that IPv6 support is enabled in UFW. To do so, open the config file in a text editor.

sudo nano /etc/default/ufw

Once opened, make sure that IPV6 is set to "yes":

IPV6=yes

After making this change, save the file. Then, restart UFW by disabling and re-enabling it.

sudo ufw disable
sudo ufw enable

Back to default settings

If you need to go back to default settings, simply type in the following command. This will revert any of your changes.

sudo ufw reset

Conclusion

Overall, UFW is able to protect your VPS against the most common hacking attempts. Of course, your security measures should be more detailed than just using UFW. However, it is a good (and necessary) start.

If you need more examples of using UFW, you can refer to UFW - Community Help Wiki.


How to Install Tiny Tiny RSS Reader on a CentOS 7 LAMP VPS

How to Install Tiny Tiny RSS Reader on a CentOS 7 LAMP VPS

Using a Different System? Tiny Tiny RSS Reader is a free and open source self-hosted web-based news feed (RSS/Atom) reader and aggregator, designed to allo

Configura vsFTPd a Debian/Ubuntu

Configura vsFTPd a Debian/Ubuntu

Introducció vsftpd significa Very Secure FTP Daemon. És un servidor FTP lleuger. Aquest breu tutorial explica com instal·lar vsftpd a Debian o Ubuntu

Using MySQL Views on Debian 7

Using MySQL Views on Debian 7

Introduction MySQL has a great feature known as views . Views are stored queries. Think of them as an alias for an otherwise long query. In this guide,

How to Install OpenMeetings on Ubuntu 16.04

How to Install OpenMeetings on Ubuntu 16.04

Using a Different System? Apache OpenMeetings is an open source web conferencing application. It is written in Java and supports multiple database servers. I

How to Install RainLoop Webmail on CentOS 7

How to Install RainLoop Webmail on CentOS 7

Using a Different System? RainLoop is a simple, modern and fast web-based email client. RainLoop source code is hosted on GitHub. This guide will show you ho

How to Install Selfoss RSS Reader on a CentOS 7 LAMP VPS

How to Install Selfoss RSS Reader on a CentOS 7 LAMP VPS

Using a Different System? Selfoss RSS Reader is a free and open source self-hosted web-based multipurpose, live stream, mashup, news feed (RSS/Atom) reade

Configure Uncomplicated Firewall (UFW) on Ubuntu 14.04

Configure Uncomplicated Firewall (UFW) on Ubuntu 14.04

Security is crucial when you run your own server. You want to make sure that only authorized users can access your server, configuration, and services. I

Configura la rèplica de fitxers mitjançant Rsync a Debian/Ubuntu

Configura la rèplica de fitxers mitjançant Rsync a Debian/Ubuntu

Introducció Si executeu un lloc web crític, és una bona pràctica reflectir els vostres fitxers en un servidor secundari. En el cas que el vostre servidor principal tingui una xarxa

How to Install LimeSurvey CE on Debian 9

How to Install LimeSurvey CE on Debian 9

Using a Different System? LimeSurvey is an open source survey software written in PHP. LimeSurvey source code is hosted on GitHub. This guide will show yo

How to Install LimeSurvey CE on Ubuntu 18.04 LTS

How to Install LimeSurvey CE on Ubuntu 18.04 LTS

Using a Different System? LimeSurvey is an open source survey software written in PHP. LimeSurvey source code is hosted on GitHub. This guide will show yo

Configureu Nginx Reverse Proxy a Apache a Debian o Ubuntu

Configureu Nginx Reverse Proxy a Apache a Debian o Ubuntu

Nginx és un servidor web lleuger que s'ha demostrat que serveix fitxers estàtics més ràpid que Apache. Aquest tutorial us guiarà com instal·lar Nginx a la inversa

Configura els repositoris de Subversion (SVN) a Debian/Ubuntu

Configura els repositoris de Subversion (SVN) a Debian/Ubuntu

Instal·leu els paquets necessaris Anem a executar SVN sota xinetd per a un ús baix de recursos. apt-get install xinetd subversion Crea usuari svn adduser --syste

Força Apt-Get a IPv4 o IPv6 a Ubuntu o Debian

Força Apt-Get a IPv4 o IPv6 a Ubuntu o Debian

Aquí a Vultr, tenim l'opció d'habilitar IPv6 a tots els VPS desplegables. Però amb això, alguns programes i ordres poden preferir un enginy o un altre

Add Teamspeak To Webmin

Add Teamspeak To Webmin

This article explains how to integrate a Teamspeak 3 server with the popular hosting panel, Webmin. I assume that youve already set up Teamspeak on eithe

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

La Intel·ligència Artificial no està en el futur, és aquí mateix en el present. En aquest bloc Llegiu com les aplicacions d'Intel·ligència Artificial han afectat diversos sectors.

Atacs DDOS: una breu visió general

Atacs DDOS: una breu visió general

També ets víctima d'atacs DDOS i estàs confós sobre els mètodes de prevenció? Llegiu aquest article per resoldre les vostres consultes.

Us heu preguntat mai com guanyen diners els pirates informàtics?

Us heu preguntat mai com guanyen diners els pirates informàtics?

Potser haureu sentit que els pirates informàtics guanyen molts diners, però us heu preguntat mai com guanyen aquest tipus de diners? anem a discutir.

Invents revolucionaris de Google que us facilitaran la vida.

Invents revolucionaris de Google que us facilitaran la vida.

Vols veure els invents revolucionaris de Google i com aquests invents van canviar la vida de tots els éssers humans actuals? A continuació, llegiu al bloc per veure els invents de Google.

Divendres essencial: què va passar amb els cotxes impulsats per IA?

Divendres essencial: què va passar amb els cotxes impulsats per IA?

El concepte de cotxes autònoms per sortir a les carreteres amb l'ajuda de la intel·ligència artificial és un somni que tenim des de fa temps. Però malgrat les diverses promeses, no es veuen enlloc. Llegeix aquest blog per saber-ne més...

Singularitat tecnològica: un futur llunyà de la civilització humana?

Singularitat tecnològica: un futur llunyà de la civilització humana?

A mesura que la ciència evoluciona a un ritme ràpid, fent-se càrrec de molts dels nostres esforços, també augmenten els riscos de sotmetre'ns a una singularitat inexplicable. Llegeix, què pot significar per a nosaltres la singularitat.

Evolució de lemmagatzematge de dades – Infografia

Evolució de lemmagatzematge de dades – Infografia

Els mètodes d'emmagatzematge de les dades que han anat evolucionant poden ser des del naixement de les dades. Aquest bloc tracta l'evolució de l'emmagatzematge de dades a partir d'una infografia.

Funcionalitats de les capes darquitectura de referència de Big Data

Funcionalitats de les capes darquitectura de referència de Big Data

Llegeix el blog per conèixer de la manera més senzilla les diferents capes de l'Arquitectura Big Data i les seves funcionalitats.

6 avantatges sorprenents de tenir dispositius domèstics intel·ligents a les nostres vides

6 avantatges sorprenents de tenir dispositius domèstics intel·ligents a les nostres vides

En aquest món digital, els dispositius domèstics intel·ligents s'han convertit en una part crucial de les vides. A continuació, es mostren alguns avantatges sorprenents dels dispositius domèstics intel·ligents sobre com fan que la nostra vida valgui la pena i sigui més senzilla.

Lactualització del suplement de macOS Catalina 10.15.4 està causant més problemes que no pas solucions

Lactualització del suplement de macOS Catalina 10.15.4 està causant més problemes que no pas solucions

Recentment, Apple va llançar macOS Catalina 10.15.4, una actualització de suplements per solucionar problemes, però sembla que l'actualització està causant més problemes que provoquen el bloqueig de les màquines Mac. Llegiu aquest article per obtenir més informació