Cheatsheet for networking

1 - Overview of network technology and middleware

I've divided this networking overview into the following three parts:

(1) Communication technology used within a single network

This knowledge was already acquired in previous projects within my home network:

With the free WireShark software, I was able to study network traffic.

(2) Communication technology used between networks

The following technologies were studied for communication between the internet and my home network:

DHCP, NAT/PAT, Port Forwarding, and Firewall are already installed on a router (from the ISP provider),
but firewalls were also installed on host machines for additional security (e.g., Windows Defender, UFW on Ubuntu).

Installing a DDNS service makes it possible to link your changing public ip address to a fixed domain name.
Some good free DDNS Services are "Cloudflare", "Dynu" and "DuckDNS".

Installing a DNS server within the home network was considered to give hosts with private IP addresses a logical hostname.
Because the benefits are too limited, this additional installation was decided against.
There is an also other possibility. When you register a public domain name, you usually point it to a public IP address.
However you can also point it to a private IP address that will only be accessible in your local network.

For handling SSL, a reverse proxy can be used in the home network with DNS validation for our certificates.
We can use the Let's Encrypt's DNS Challenge to get a valid SSL certificate for all your applications (DNS Verification),
without making them public. As an added bonus, you don't have to run a custom DNS server.

(3) Additional middleware to support websites and web applications

The following software was studied:

I've already used Nginx to learn web technology (HTML, CSS, JavaScript).
Nginx is a free, very popular, and powerful web server and reverse proxy,

2 - Overview of internet access into home network

Goal: Access devices or services on your private network from anywhere
Challenge: Ensuring security, performance and ease of configuration

What options are used in practice to provide users with secure access to a web application hosted on my home network via the public internet?

3 - Communication security aspects

Conclusion:
Port forwarding with https is often secure enough for most communication use cases.