Protocols

2 min read

These are the basic protocols used by computers to communicate properly. Knowing what they do and how they work is of vital importance to being successful in this career.

DNS

DNS is the white pages (if you are old enough to know what that is; it’s a global list of phone numbers if you don’t) for computers. Every computer has an IP address, but these are hard to remember and can change. DNS ties a FQDN (the hostname and domain, like www.google.com) to the IP address of that service that you’re requesting.

DHCP

This is how computers get IP addresses. Each network card has a MAC address that is used so that packets sent to an IP address go to the correct server’s network card.

HTTP/HTTPS

The website protocol being used by you right now to view this.

NFS

This is one of the ways that allows you to access (via a mount) a directory from Server A on Server B (and C, D, etc). It keeps these files stored in one central place; safe if one of the other servers crashes and needs to be rebuilt.

NTP

Keep your computers' clocks updated. A lot of cryptography relies on your servers having the same time as the others. This makes them check one clock to adjust their individual watches.

SMTP

Email protocol. Please don’t try to host your own public mailserver until you know exactly what you are doing, and then you’ll understand why it’s a bad idea to do so.

SSH

Used to remotely connect to another computer, usually with a command line interface. Commonly there will be a bastion host used to connect to servers on an internal network. Can also be used to create a VNC tunnel for a desktop session.

Ports

Every service talking to another server needs to know what port to send it to. There are standard ports, but many services allow you to change this. Most modern scanners are able to detect the actual services running on non-standard ports, but can help reduce bot/scanner traffic on publicly accessible servers.

This list is the port that server running the service will use. Other computers connecting to it will use ephemeral ports.

  • SSH - 22/tcp
  • SMTP - 25/tcp
  • DNS - 53/tcp, 53/udp
  • HTTP - 80/tcp
  • NTP - 123/udp
  • HTTPS - 443/tcp
  • NFS - 2049/tcp
Previous Programming
Next Advanced