Support Learning

DNS + Nameserver

DNS + Nameserver

DNS (Domain Name System)

Was ist ein DNS?

DNS oder auch "Domain Name System" ist wie das Telefonbuch des Internets. Jedes Gerät, dass mit dem Internet verbunden ist, hat eine eindeutige IP-Adresse. (z. B. 10.12.15.257) 

Web-Browser benutzen die IP-Adressen zur Interaktion. Damit man die IP-Adressen nicht jedes mal eingeben muss, um auf eine Website zu gelangen, übersetzt DNS die Domain-Namen um, damit die Ressourcen im Browser geladen werden können. 

Wie funktioniert DNS?

Um eine DNS aufzulösen, benötigt man einen Hostnamen (z. B. alexandergreub.ch) damit der Computer die Domain in eine verständliche IP-Adresse umwandeln kann.

Jedes Gerät, dass sich mit dem Internet verbindet, erhält eine IP-Adresse, damit das Gerät gefunden werden kann, wie z. B. eine Postanschrift bei einem Haus.



Es gibt 2 Verschieden Arten von IP-Adressen:

04_adresse_kuerzen_w640_h400.pngIP_Adresse Aufbau-01.png

Hilfreiche Ressourcen:

https://www.cloudflare.com/de-de/learning/dns/what-is-dns/

DNS + Nameserver

Die 3 Server zum Laden einer Webseite

Damit eine Webseite geladen werden kann, braucht es noch 3 Schritte. 


Ablauf einer DNS-Anfrage

Zur Repetition beschreibe ich kurz die einzelnen Schritte einer DNS-Abfrage für www.alexandergreub.ch, um darauf aufbauen zu können:

DNS + Nameserver

DNS-Zone

Erklärung der DNS-Zoneneinträge
A
IPv4 Adresse
AAAA
IPv6 Adresse
MX
Mail-Server
SRV Gibt einen Host und einen Port für bestimmte Dienste an (z.B. Instant Messaging, Kalender, VoIP)
NS Autoritative Nameserver
TXT Texteintrag (z. B. zur Unterbindung von Spam)
CNAME
Kanonischer Name (z. B. Verweis von einer Domain, wenn ein Alias besteht)

Zonen-File im System Configurator

2023-07-19 14_39_10-WEBLAND.CH - System Configurator.png

Zonen-Editor im WLCM

2023-07-19 14_41_31-WLCM (Webland Customer Management).png

2023-07-19 14_41_04-Window.png

DNS + Nameserver

DNSSEC

DNSSEC steht für "Domain Name System Security Extension" die das DNS mit verschiedenen Sicherheitsmöglichkeiten erweitert.

Bei der DNS Abfrage wird der ein gesamter Durchlauf durchgeführt, d.h. Der Länder-Nameserver, der Root Server und der Autoritative Nameserver wird angesprochen. Bei allen Server müssen die DNSSEC Daten vorhanden sein, damit die Abfrage erfolgreich ist.

Auflistung der DNSSEC Abfrage: DNSSEC

Einträge
RRSIG
Enthält eine kryptographische Signatur
DNSKEY Enthält einen Public Key
DS
Enthält den Hash eines DNSKEY Eintrags
NSEC und NSEC3
Für die explizite Anerkennung eines Nicht-Existenten DNS Eintrags
CDNSKEY und CDS
Für die untergeordnete Zone zur Anfrage von Aktualisierungen eines DNS Eintrags in der Übergeordneten Zone

RRset.png

Definition eines RRset

Beim RRset werden Einträge mit dem gleichen Namen und Typ gebündelt.

ZSK (Zone Signing Key)

RRSIG.png

Definition des RRSIG Eintrags

Im RRSIG Eintrag befinden sich die Daten des Private Key und werden beim Zonenbetreiber im Nameserver hinterlegt.

Schema ZSK.png

Schema des ZSK

KSK (Key Signing Key)

Der KSK siginert zusätzlich den öffentlichen ZSK, der im DNSKEY Eintrag gespeichert ist und erstellt einen neuen RRSIG für den DNSKEY. 

Schema KSK.png

Schema des KSK

Ablauf einer DNSSEC Abfrage

DNSSEC Ablauf.png

  1. Wenn ein Client die www.agreub.ch eintippt, wird die Anfrage zum autoritativen Nameserver geschickt. Wenn der Nameserver nun DNSSEC aktiviert hat, kann die Abfrage weiter erfolgen, ansonsten wird die Abfrage nicht weitergeführt.
  2. Der Nameserver hat DNSSEC aktiviert und sendet als Antwort den A-Record und eine verschlüsselte Signatur zurück.
  3. Der Resolver benötigt diese kryptographischen Signaturen und holt beim Nameserver den Public und den Private Key.
  4. Der Nameserver sendet die Keys und die Signaturen an den Resolver, damit die Verifizierung erfolgreich durchgeführt werden kann.
  5. Der Resolver fragt den TLD Nameserver an, ob dort die benötigten Daten hinterlegt sind.
  6. Die zu verifizierenden Informationen werden vom TLD Nameserver an den Resolver weitergeleitet.
    Wenn die Informationen übereinstimmen, ist die Domain validiert.
  7. Eigentlich wäre der Prozess hier beendet, jedoch ist hier ein Angriff immer noch möglich und deshalb wird der Root-Nameserver von .ch angefragt.
    Der Resolver fragt den TLD Nameserver nach den kryptographischen Keys, um die Informationen zu verifizieren.
  8. Der TLD Nameserver erhält die gewünschten Informationen (Keys und Signaturen).
  9. Der Resolver fragt den Root-Server für die zu verifizierenden Informationen, die beim TLD Nameserver hinterlegt sind.
  10. Der Root-Server sendet die zu verifizierenden Informationen zurück und der Resolver verifiziert die Informationen des TLD Nameservers.
  11. Der Resolver fragt den Root-Server nach den Kryptographischen Keys um die Informationen vom Resolver zu verifizieren.
  12. Der Root-Server sendet die Keys, damit die Informationen vom TLD Nameserver verifiziert werden können.
Die Kette des Vertrauens

Wie kann man sicherstellen, das der Root-Nameserver sicher ist? Jeder Verifizierende Resolver hat nur einer Entität zu vertrauen und zwar dem Root-Server. 

Der Resolver hat bereits die benötigten Schlüssel des Root-Server im Verzeichnis. Das heisst, nach Punkt 12 wird verglichen ob die Informationen des Resolvers und des Root-Server übereinstimmen. Man kann somit der TLD .ch und der Domain vertrauen.

Linux

Linux

Linux Befehle

Rechtesystem unter Linux
Typ User (u) Group (g) Other (o)
Die Vergaben gelten nur als Beispiel. Man kann z. B. für alle Typen die gleichen Rechte vergeben! read = 4

write = 2


read = 4

write = 2

ex = 1
Standardrechte (Nummerisch)
644 Wird verwendet bei Dateien
755 Wird verwendet bei Verzeichnissen
007 Nicht zu empfehlen!!!
777 Wird für Debugging verwendet
Benutzerrechte erstellen
Befehl Bedeutung
chmod Dateirechte verändern
chown Besitzer wechseln
chgroup Gruppe wechseln
w Schreibberechtigung
r Leseberechtigung
x Ausführungsberechtigung
+ Berechtigung erteilen
- Berechtigung entziehen
Weitere Linux Befehle
Befehl Bedeutung
ls

Verzeichnis anzeigen

cd
Verzeichnis öffnen 
mv Datei oder Verzeichnis verschieben oder umbenennen
cp
Datei oder Verzeichnis in ein anderes Verzeichnis kopieren
rm
Datei löschen
rmdir
Verzeichnis löschen
mkdir Verzeichnis erstellen
grep
Suche innerhalb einer Datei
find
Suche innerhalb eines Verzeichnis
echo
Gibt einen nachfolgenden Text aus
wc
Wortzähler





 
Spezielle Zeichen
Befehl Bedeutung
> Dieses Zeichen nennt man Pipe und überschreibt eine Ausgabe von z. B. ls in eine Datei
>> Hier wird die Ausgabe in einer Datei angehängt
<<ENDE In Kombination mit grep kann man hier Verschiedene Begriffe auflisten und spezifisch gesucht werden
*
Platzhalter für 0.1 bis unendlich Zeichen
? Platzhalter für genau 1 Zeichen
!
Ein Ausrufezeichen in Klammern bedeutet, dass alle Zeichen ausser das definierte zulässig sind. (z. B. [!Aa])
[] Innerhalbe der Klammern werden Buchstaben, Zeichen und Zahlen definiert, um Bereiche zu definieren. (z. B. [a-z])
|
;

Das Semikolon wird verwendet, um mehrere Befehle hintereinander zu verketten.

(Nachteil: Auch wenn der erste Befehl fehlschlägt, wird der nächste trotzdem ausgeführt)

&&

Logisches Und: Wenn z. B. der erste Befehl der Verkettung fehlschlägt, wird der nächste nicht Automatisch ausgeführt



Linux

Linux

Im Remote Desktop Manager hat jeder Mitarbeitende eine Root-Berechtigung auf den Linux-Servern. 

Linux

Linux Befehlaufbau

Befehl: grep [Optionen] Pfad [Datei]
grep -v  Alle Zeilen heraussuchen, die das angegebene Textmuster nicht enthalten.
grep -w Nur Zeilen heraussuchen, in denen das Suchmuster als ganzes Wort enthalten ist.
grep -n Die Zeilennummern, in denen der Text enthalten ist, ausgeben.
grep -H Den Dateinamen aller Dateien ausgeben, die den angegebenen Text enthalten.







 

Mail-Dienste

Mail-Dienste

Mail-Protokolle

SMTP (Simple Message Transfer Protocol) Postausgangsserver (Das Simple Mail Transfer Protocol ist ein Protokoll der Internetprotokollfamilie, das zum Austausch von E-Mails in Computernetzen dient. Es wird dabei vorrangig zum Einspeisen und zum Weiterleiten von E-Mails verwendet.)
IMAP (Internet Message Access Protocol) Posteingangsserver (Mit IMAP-Konten werden Nachrichten auf einem Remoteserver gespeichert. Benutzer können sich über verschiedenen E-Mail-Clients auf Computern oder mobilen Geräten anmelden und die gleiche Nachricht lesen.)
POP3 (Post Office Protocol) Posteingangsserver (Mit POP3 (Post Office Protocol) holt ein E-Mail-Programm die E-Mails vollständig vom Server. Die Dateien sind danach nicht mehr am Server, sondern nur noch in Ihrem E-Mail-Programm gespeichert.)

 Unterschied zwischen IMAP und POP3

Mail-Dienste

Abwehr vor Spam

SPF (Sender Policy Framework)


Der SPF Eintrag soll das Versenden von gefälschten und nicht vertrauenswürdigen Absendern verhindern. Dieses Verfahren dient somit der Spam-Abwehr. Der SPF wird in der DNS-Zone festgelegt.
DKIM (Domain Key Identified Mail)

DKIM ist ein Protokoll, das eine Nachricht verifiziert, um vor unerwünschtem Spam und Pishing-Mails zu schützen.

Es gibt einen Public und einen Private Key. Der Private Key befindet sich beim Benutzer und sendet Nachrichten Verschlüsselt.

Der Public Key befindet sich in der DNS-Zone.

DMARC (Domain-based Message Authentication, Reporting and Conformance)

DMARC baut auf dem selben System auf wie SPF und DKIM.

Der unterschied besteht darin, das dem DMARC Funktionen zugewiesen werden können, wie bei Situation gehandelt werden soll. z. .B können so Berichte wie LOGS an den Empfänger geschickt werden.

SPF Verfahren   

DKIM Verfahren


DMARC Verfahren

Greylisting

Beim Greylisting handelt es sich um ein Verfahren zur Abwehr vor Spam und weist E-Mails zunächst ab. Nach der Abweisung wird eine Sperre von meistens 90 Sekunden verhängt bevor man eine neue E-Mail schicken kann.

Blacklisting

Beim Blacklisting werden bestimmte Absender und Ausdrücke permanent gesperrt. Es gibt viele Anbieter, die Listen zur Verfügung stellen, in denen Bekannte Absender und Ausdrücke schon erfasst sind.

Man kann aber auch eine eigene Blacklist über verschiedene Mailprogramme erstellen.  

Aufbau des DKIM Eintrags
Name Typ Inhalt
[selector]._domainkey.[domain] TXT v=DKIM1; p=76E629F05F709EF665853333EEC3F5ADE69A2362BECE40

Der DKIM Eintrag in der DNS Zone definiert den Public Key.

DKIM Header

Beispiel für einen DKIM-Header:

v=1; a=rsa-sha256; d=example.com; s=big-email; h=from:to:subject; bh=uMixy0BsCqhbru4fqPZQdeZY5Pq865sNAnOAxNgUS0s=; b=LiIvJeRyqMo0gngiCygwpiKphJjYezb5kXBKCNj8DqRVcCk7obK6OUg4o+EufEbB tRYQfQhgIkx5m70IqA6dP+DBZUcsJyS9C+vm2xRK7qyHi2hUFpYS5pkeiNVoQk/Wk4w ZG4tu/g+OA49mS7VX+64FXr79MPwOMRRmJ3lNwJU=

Eintrag Beschreibung
v=1 Version des DKIM
d=example.com
Domainname des Absenders
s=big-email
Selector des Absenders
h=from:to:subject
Auflistung der Header-Felder die zur Erstellung der digitalen Signatur benötigt werden.
bh=uMixy0BsCqhbru4fqPZQdeZY5Pq865sNAnOAxNgUS0s=; Hash des E-Mail Text. Dies ist eine Mathematische Funktion, die für die Berechnung der digitalen Signatur für den Empfangenden Mail-Server
b=LiIvJeRyqMo0gngiCygwpiKphJjYezb5kXBKCNj8DqRVcCk7obK6OUg4o+EufEbB tRYQfQhgIkx5m70IqA6dP+DBZUcsJyS9C+vm2xRK7qyHi2hUFpYS5pkeiNVoQk/Wk4w ZG4tu/g+OA49mS7VX+64FXr79MPwOMRRmJ3lNwJU=
Digitale Signatur, die aus h und bh erzeugt und mit dem privaten Schlüssel signiert wurde.

Nützliche Links:

SPF

DKIM

DMARC

SSL Zertifikate

SSL Zertifikate

Typen

 Single - Domains (kostenpflichtig)

 

Single - Domain DV Domain-Validation: Hier wird nur die Identität über die Domain Validiert. Geeignet für Private  
Single - Domain OV Organisations-Validation: Hier wird zusätzlich der Antragsteller und die Organisation geprüft. Geeignet für Organisationen und KMU.
Single - Domain EV Extended-Validation: Dies ist noch eine Erweiterung der OV. Hier wird der Antragssteller und die Organisation sehr genau geprüft. Sieht man oft bei Banken oder Regierungen.

Für Unternehmen die zusätzlich verschiedene Sub-Domains besitzen, können auch sogenannte "Wildcards" kaufen, bei denen auch alle Sub-Domains zertifiziert werden.

2023-07-19 12_47_09-Window.png

Beispiel kostenpflichtiges Zertifikat

Kostenlose SSL-Zertifikate

Bei kostenlosen Zertifikaten (z. B. Let`s Encrypt) wird nur die Domain validiert.

 

2023-07-19 12_46_23-Window.png

Beispiel kostenloses Zertifikat

Netzwerk

Netzwerk

Ports

Die wichtigsten Ports
Port TCP UDP Beschreibung
20 + - FTP-Datenübertragung
21 + + FTP-Verbindungsaufbau und Steuerung
22 + + Secure Shell (SSH) für die verschlüsselte Dateiübertragung und für getunnelte Portweiterleitung (scp und sftp)
25 + - SMTP (Simple Mail Transfer Protokoll) Übertragung
587 +
SMTP E-Mail Message Submission (Webland Standard) (unverschlüsselt)
118 + + SQL (Structured Query Language) Dienste
443 + - HTTPS (Secure Hypertext Transfer Protokoll) SSL
443 - + Kommt auch in HTTP/3 vor
993 + - IMAPS über TLS/SSL
143 + +  IMAP (Internet Message Access Protokoll) (unverschlüsselt)
995 + - POP3 über TLS/SSL
110

POP3 (unverschlüsselt)
465

SMTP (Verschlüsselt)

Hier sind alle standardisierten Ports aufgelistet: Standard Ports

Netzwerk

HTTP-Statuscodes

Die wichtigsten Statuscodes
Code Nachricht Bedeutung
400 Bad Request Die Anfrage war fehlerhaft
401 Unauthorized Die Anfrage kann nicht ohne gültige Authentifizierung durchgeführt werden.
403 Forbidden Die Anfrage wurde mangels Berechtigung des Clients nicht durchgeführt, bspw. weil der authentifizierte Benutzer nicht berechtigt ist oder ein als HTTPS konfigurierter URL nur mit HTTP aufgerufen wurde.
404 Not Found Die Website wurde nicht gefunden.
500 Internal Server Error Dies ist ein „Sammel-Statuscode“ für unerwartete Serverfehler.
Statusbereich des Codes
Bereich Bedeutung
1xx Informationen
2xx Erfolgreiche Operationen
3xx Umleitung
4xx Client-Fehler
5xx Server-Fehler
9xx Proprietäre Fehler (Softwarespezifische Fehler)

Alle HTTP Statuscodes: Statuscodes und Bereiche

Informationsspeicherung

Informationsspeicherung

Bits und Bytes

ASCII und Unicode

Datenbanken

Arten von Datenbanken

Einzeltabelledatenbanken

Dienen zur einfachen Verwaltung von Informationen eines bestimmten Typs

(z. B. Anschriften)

Relationelle Datenbanken Man kann mehrere Einzeltabellen miteinander verknüpfen um die Daten konsistent zu halten
Objektorientierte Datenbanken Grundlage von Klassen und Objekten, die komplexe und Nicht Lineare Beziehungen zulassen
MySQL 

SQL (Structured Query Language)

Apache Webserver

Apache Webserver

Erstellen eines Virtual Hosts