Port 80 vs Port 443: Port 80 provides unencrypted connection, whereas Port 443 supports encrypted connection.
Port 80 vs. Port 443: Many of you have chaos about these different ports. When you read or hear about Port 80 vs. Port 443 what is the first thing that comes to your mind? Yes, you might have heard about HTTP vs. HTTPS. In this article, we will know about these two useful ports and how to enable them on different operating systems. Before that lets start from beginning.
What is a Port?
Generally, Port is used to make the computer understand what type of data is received from or sent to a computer over the similar network connection. Each Port is assigned with different functionality and a port number like Port 80, 443, 21, 25, etc. Port is a virtual numbered address used as an endpoint for communication to the various Transport Layer Protocols.
Transport Layer protocols include Transfer Control Protocol (TCP) and User Datagram Protocol (UDP) and are used in data transmission over the Internet.
UDP is mostly used for large volumes of data transfer where security is not of much significance, while TCP is used where data security is of prime importance. When data transfer occurs, each data pack comes with a port number attached to it, and the protocol directs each data pack to the appropriate Port with accuracy. According to the SMB vulnerability report, 65% of attacks target the main three ports: SSH- 22/TCP, HTTPS-443/TCP and HTTP-80/TCP.
HTTP Port-80 is used for HTTP (Hyper Text Transfer Protocol) connection by default. It is a popular and widely used port across the globe. Port 80 was introduced by Tim Berners-Lee in 1991 in the HTTP 0.9 document. The document states that if there is no port assigned for HTTP connection, Port 80 is used by default. It connects you to the worldwide web (WWW). A user, with the help of this port, can connect to webpages available on the internet. It means unencoded data exchange takes place between the user’s browser and the server using this port. This port relates to TCP (Transfer Control Protocol- a protocol used in data transmission).
HTTPS (Hypertext Transfer Protocol Secure) is a secured HTTP version where all traffic is bind with strong encryption that passes through 443. This port is also connected with TCP protocol and creates a secure connection between the webpages and browser. HTTPS Port 443 was officially published in RFC 1700 and solicited by “Kipp E.B. Hickman”. The main difference between Port 80 and Port 443 is strong security. Port-443 allows data transmission over a secured network, while Port 80 enables data transmission in plain text. Users will get an insecure warning if he tries to access a non-HTTPS web page. Port 443 encrypts network data packets before data transmission takes place. The security over port 443 is used by the SSL protocol (secure socket layer).
Due to the much-needed awareness spread among internet users regarding the safety of their data shared with the websites, over 95% of accessed websites are done using a secure HTTPS connection over Port 443, according to Google’s research.
Enable Port 80 and 443 on Windows
A firewall restricts traffic and protects you from the threats coming from the internet and local applications. If you wish to allow restricted traffic on the firewall, you need to open a specific port. Below we have explained the process to enable Port 80 and 443 on Windows.
First, you need to browse the Control Panel and search for System and Security showing on the box’s left side. There you need to click on the Windows Firewall.
Now, go to the Advanced Settings option showing on the left side and click on it.
You will have a new window, “Windows Defender Firewall with Advanced Security”, where you need to the right click on ‘Inbound Rules’ and choose ‘New Rule’.
You will have a New Inbound Rule Wizard box where you need to checkmark against on ‘Port’ and click on the ‘Next’ button.
Choose UDP or TCP protocol and check mark against ‘Specific Local Port’ option. Here, you need to enter port and click on the ‘Next’ button.
Now, choose ‘Allow the connection’ and click on the ‘Next’ button.
Here, you should keep the name of a rule and click on the Finish button.
Enable Port 80 and 443 on Mac
It is essential to know that Mac OS X opens ports as per requests by individual applications or services instead of managing ports individually. Most users using the default OS X firewall should use the following steps to Allow incoming connections for Applications.
- Open System Preferences > Security & Privacy > Firewall > Firewall Options.
- Click Add.
- Choose an application from the Applications folder and click Add.
- Ensure that the option next to the application is set to Allow incoming connections.
- Click OK.
To open a specific port on OS X, you need to go with Terminal. You need to use the pfctl command for OS X 10.10. In the earlier version, the ipfw command was used to open a specific port.
- Open Terminal app.
- Enter Sudo pfctl -d command to stop the active packet filter.
- Use a nano text editor to open configuration file for packet filter:
sudo nano /etc/pf.conf
- You can create customize rule for any port, for example 80, and enter the command below default configurations. It means you are allowing TCP incoming traffic from any machine to your machine without any inspection.
pass in inet proto tcp from any to any port 80 no state
- Press Ctrl-x and exit from nano text editor then, press Y and It means you have saved the file with the same name.
- Now, reload the firewall’s configuration from the earlier edited file.
sudo pfctl -f /etc/pf.conf
- Finally, restart the firewall with the below command:
sudo pfctl -E
For opening the port at system startup, use sudo nano /etc/pf.conf and add the sudo pfctl -vnf /etc/pf.conf to this pf.conf file.
Enable Port 80 and 443 on Linux
To open a port on Linux, you first need to check open ports using netstat or ss command as showing below:
netstat -lntu OR
After testing opened ports, use the below commands to allow TCP connections. Here, we have taken port-80, for example.
netstat -na | grep :80
ss -na | grep :80
Enable Port 80 and 443 on Ubuntu
If you have an Ubuntu firewall named ufw, you should use the below command:
sudo ufw allow 80
Enable Port 80 and 443 on CentOS
For CentOS users, they should use the below command:
firewall-cmd --add-port=80/tcp –permanent
Note: The user can enable any port (80,443) with above commands.
However, Port 80 provides an HTTP connection under TCP protocol. This port provides an unencrypted connection between the web browser and the web servers, which leaves the sensitive user data exposed to cybercriminals and may lead to severe data misuse.
HTTPS Port 443 offers encrypted communication between the web browser and web server, making the data unreadable for any data breach. Hence, connecting through HTTPS Port 443 for web browsing certainly wins hands down over establishing an unsafe HTTP Port 80 connection for web surfing.