Ubuntu 20.04 open HTTP port 80 and HTTPS port 443 with ufw

This article explains how to open HTTP port 80 and HTTPS port 443 on Ubuntu 20.04 Focal Fossa with the ufw firewall. HTTP and HTTPS protocols are primarily used by web services such as, but not limited to, Apache or Nginx web servers.

In this tutorial you will learn:

  • How to open HTTP port 80 and HTTPS port 443
  • How to open HTTP port 80 and HTTPS port 443 for Apache and Nginx
  • How to list currently open ports/services
  • How to close/remove HTTP port 80 and HTTPS port 443

Allow 80 and 443 port and delete firewall rule on Ubuntu 20.04 Focal Fossa.

Allow 80 and 443 port and delete firewall rule on Ubuntu 20.04 Focal Fossa.

Software Requirements and Conventions Used

Software Requirements and Linux Command Line Conventions
Category Requirements, Conventions or Software Version Used
System Installed Ubuntu 20.04 or upgraded Ubuntu 20.04 Focal Fossa
Software ufw >= 0.36
Other Privileged access to your Linux system as root or via the sudo command.
Conventions # – requires given linux commands to be executed with root privileges either directly as a root user or by use of sudo command
$ – requires given linux commands to be executed as a regular non-privileged user

Ubuntu 20.04 Focal Fossa open HTTP port 80 and HTTPS port 443 step by step instructions

  1. Check the status of your firewall.
    # ufw status verbose
    Status: active
    Logging: on (low)
    Default: deny (incoming), allow (outgoing), disabled (routed)
    New profiles: skip
    

    Based on the above output all incomming ports are blocked by default.



  2. We have multiple options on how to open ports 80 and 443. First we can directly specify the port number or the service we wish to open the port for. Example:

    $ sudo ufw allow 80
    $ sudo ufw allow 443
    OR
    $ sudo ufw allow http
    $ sudo ufw allow https
    

    Alternatively, if we wish to open ports for a specific webserver such as Apache or Nginx we can execute the bellow commands:

    $ sudo ufw allow in "Apache Full"
    $ sudo ufw allow in "Nginx Full"
    
  3. Check you current firewall configuration settings:
    # ufw status verbose
    Status: active
    Logging: on (low)
    Default: deny (incoming), allow (outgoing), disabled (routed)
    New profiles: skip
    
    To                         Action      From
    --                         ------      ----
    80                         ALLOW IN    Anywhere                  
    443                        ALLOW IN    Anywhere                  
    80 (v6)                    ALLOW IN    Anywhere (v6)             
    443 (v6)                   ALLOW IN    Anywhere (v6)
    
  4. In case you will later on decide to remove the port 80,443 rules you can do so by executing the bellow commands:
    $ sudo ufw delete allow 80
    $ sudo ufw delete allow 443
    OR
    $ sudo ufw delete allow http
    $ sudo ufw delete allow https
    

    Alternatively, if we wish to open ports for a specific webserver such as Apache or Nginx we can execute the bellow commands:

    $ sudo ufw delete allow in "Apache Full"
    $ sudo ufw delete allow in "Nginx Full"