Linux - Netzwerk und Serveradminstration: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
 
(69 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
= Überblick =
== Thomas Will ==
*[[Thomas Will]]
* [[Thomas Will]]
*[[Zeiten]]
*[[Linux - Netzwerk und Serveradminstration Themen]]
*[[Linux Cheatsheet]]
*[[Linux - Netzwerk und Serveradminstration Lehrgangsziele|Lehrgangsziele]]
*[[Linux - Netzwerk und Serveradminstration Pläne|Pläne]]
*[[Linux - Netzwerk und Serveradminstration]]
*[[Linux - Netzwerk und Serveradminstration]]
*[[Linux - Netzwerk und Serveradminstration]]
*[[Linux - Netzwerk und Serveradminstration]]
*[[Linux - Netzwerk und Serveradminstration]]
*[[Linux - Netzwerk und Serveradminstration]]


= Servervorlage =
== Zeiten ==
* Für VMs als Server empfiehlt es sich eine Vorlage zu erstellen, die schon minimal konfiguriert ist
* [[Zeiten]]
* Der Nutzer ''root'' soll das Passwort ''radler'' haben
* Ein Benutzer ''kit'' mit dem Passwort ''kit'' soll angelegt werden
* die Vorlage soll '''keine''' graphische Oberfläche haben (Bei der Installation abwählen)
* Ein [[:Kategorie:SSH|SSH]]-Server soll aber für die Remoteverwaltung installiert werden
==Umsetzung==
* [[Debian Template]]
* [[Anpassen der Virtuellen Maschinen Netzwerk und Serveradministration]]


= Firewall =
== Themen ==
{{#drawio:5102-firewall-01}}
* [[Linux - Netzwerk und Serveradminstration Themen|Themen]]
* Die Firewall wird ist zugleich der Router in das Übungsnetzwerk
* Hardwareanpassungen:
** 4 GB RAM
** 4 CPUs
** 4 Netzwerkkarten
* Für den Anfang müssen wir das [[Debian Netzwerkkonfiguration|Netzwerk konfigurieren]]


= Fernzugriff per [[:Kategorie:SSH|SSH]] =
== Linux Cheatsheet ==
* Jeder Host soll über das [[SSH-Protokoll]] administrierbar sein
* [[Linux Cheatsheet]]
* hinterlegen Sie den öffentlichen Schlüssel für die Nutzer ''kit'' und ''root'' auf der Firewall
* Der SSH-Server sollte nach Sicherstellung des Zugriffs über autorisierte SSH-Schlüssel keine Passwort-Authentifizierung mehr zulassen: [[SSH-Server Hardening]]
* Am Ende sollte jeder Host über '''ssh ''user''@''ip.oder.host.name'' ''' erreichbar sein


= Client Konfiguration =
== Lehrgangsziele ==
* [[Client Anpassen der Virtuellen Maschinen Netzwerk und Serveradministration]]
* [[Linux - Netzwerk und Serveradminstration Lehrgangsziele|Lehrgangsziele]]


= Routing und Masquerading =
== Pläne ==
{{#drawio:5102-masquerade}}
* [[Linux - Netzwerk und Serveradminstration Pläne|Pläne]]
* Damit die Firewall als Internet-Router fungieren kann, muss die Quell-IP der Pakete umgeschrieben werden
* Dazu müssen Firewall-Regeln unter [[iptables]] oder [[nftables Masquerade|nftables]] erstellt werden
==Firewall Umsetzung==
*[[Firewall-Nat-Linux - Netzwerk und Serveradministration]]


= eigener DNS Server =
== TCP/IP ==
{{#drawio:5102-dns}}
* [[Tcp/ip kompakt]]


== Vorbereitungen ==
== Vorlagen ==
* VirtualBox Server-Vorlage mit neuen MAC-Adressen klonen
* [[Linux - Netzwerk und Serveradminstration Vorlagen|Vorlagen]]
* Der Host soll im ''DMZ''-Netzwerk liegen
==Systemd==
* IP-Adresse herausfinden über das DHCP-Log oder die Konsol
*[[Systemd Essentielles]]
* statische IP-Adresse nach dem Netzwerkplan setzen (''/etc/network/interfaces'')
* Hostname ändern zu ''ns''
* SSH-Server anpassen
* SSH-Schlüssel des Kit Hosts für User ''kit''  hinterlegen
===Daten===
*NET: DMZ
*IP 10.88.2XX.21/24
*GW 10.88.2XX.1
*NS 192.168.6.88 Vorläufig
*NA ns.it2XX.int
*Zu installieren apt install bind9 - Es könnte nun auch named
*[[Anpassen der Virtuellen Maschinen Netzwerk und Serveradministration DNS]]


== interne Namensauflösung ==
==Netzwerk-Tools==
* Durch das [[DNS|Domain Name System]] können wir Namen an IP-Adressen zuweisen und diese auflösen
*[[Netzwerk-Tools Linux - Netzwerk und Serveradminstration|Netzwerk-Tools]]
* Diese sollten einfacher zu merken sein, als IPv4- oder IPv6-Adressen
*[[tcpdump Linux - Netzwerk und Serveradminstration|tcpdump]]
* Jedes Labor soll eine eigene Domäne mit dem Schema '''netz''xx''.lab''' verwalten
* Erstellen Sie hierzu auch die jeweilige Reverse-Lookup-Zone '''0.''xx''.10.in-addr.arpa'''
* Der DHCP-Server muss auch angepasst werden, damit Clients den internen DNS-Server bekommen
* Für die Kommunikation zwischen den DNS-Servern müssen entweder die entsprechenden [[ip route|Routen]] gesetzt werden oder über [[DNAT|Firewall-Regeln]] Portforwarding aktiviert werden
==DNS Umsetzung==
*[[DNS Linux - Netzwerk und Serveradministration - Skript]]


==DNS Aufgabe Reverse Lookup Zone LAN & SERVERS==
== Firewall ==
* [[Linux - Netzwerk und Serveradminstration Firewall|Firewall]]
* [[Linux - Netzwerk und Serveradminstration Firewall Rocky|Firewall Rocky]]
 
== DNS ==
*[[Nameserver Basics]]
*[[Linux - Netzwerk und Serveradminstration DNS|DNS]]
*[[Linux - Netzwerk und Serveradminstration Weitere Domains|Weitere Domains]]
*[[DNS Linux - Netzwerk und Serveradministration - Reverse Aufgabe]]
*[[DNS Linux - Netzwerk und Serveradministration - Reverse Aufgabe]]
*[[DNS Secondary Nameserver]]


=Pseudo Top-Level-Domain=
== DHCP ==
{{#drawio:Pseudo Top-Level-Domain}}
* [[Linux - Netzwerk und Serveradminstration DHCP|DHCP]]
 
==OpenSSH Paket==
= Pseudo-Top-Level Domäne =
*[[OpenSSH Paket]]
* Um die Domänen der anderen Labore aufzulösen ist ein Forwarder nötig
==Der Webserver==
* Dieser zeigt auf den entsprechenden DNS-Server der Domäne, sodass die Zonen nur einmal definiert werden müssen
<!---
 
*[[Der einfache Webserver]]
 
--->
= [[:Kategorie:DHCP|DHCP]] - Automatische Netzwerkkonfiguration =
*[[Apache2 Webserver]]
{{#drawio:5102-01}}
 
== Vorbereitungen ==
* VirtualBox Server-Vorlage mit neuen MAC-Adressen klonen
* Der Host soll im ''LAN''-Netzwerk liegen
* statische IP-Adresse nach dem Netzwerkplan setzen (''/etc/network/interfaces'')
* Hostname ändern zu ''dhcp''
* SSH-Zugriff kann durch Benutzung der Firewall als Jump-Host ermöglicht werden
===Daten===
*NET: LAN
*IP 172.16.2XX.2/24
*GW 172.16.2XX.1
*NS 10.88.2XX.21
*NA dhcp.it2XX.int
*Zu installieren apt install isc-dhcp-server
*[[Anpassen der Virtuellen Maschinen Netzwerk und Serveradministration]]
 
== automatische Netzwerkkonfiguration ==
* Damit wir nicht das Netzwerk bei jedem Rechner manuell konfigurieren müssen setzen wir einen [[DHCP Grundlagen|DHCP]] Server auf.
* Dieser beantwortet Anfragen von Clients in seiner Broadcast-Domäne.
* Der DHCP-Server soll IP-Adressen im Bereich 172.16.''xx''.50 bis .100 vergeben
* Als Nameserver nehmen wir unseren eigenen 10.88.2XX.2
* Und wir nehmen die eigene Search Domain it2XX.int
* Für die Konfigration kann [[ISC DHCP|diese Seite]] befolgt werden
* Beobachten Sie den Verkehr mit [[Wireshark]] oder [[tcpdump]] auf UDP Port 67 mit und fahren Sie ''kali'' hoch
 
==ISC DHCP Umsetzung==
*[[ISC DHCP]]
*[[KEA DHCP - Netzwerk und Servreadministration]]
 
= Wichtiger Hinweis zu ISC DHCP =
 
* '''ISC DHCP ist End-of-Life (EOL) seit Ende 2022'''
* Kea DHCP bietet selbst keinen Relay-Agent
* '''Empfohlene moderne Alternative: dnsmasq als DHCP-Relay'''
* dnsmasq unterstützt sowohl DHCPv4 als auch DHCPv6 Relay
 
==Client==
*Erstellt einen Client aus der Vorlage
*Hängt ins LAN Netz
*Gebt ihm den Namen client.it2XX.int
*hostnamectl set-hostname client.it2XX.int
*In der /etc/hosts den Namen von debian-template in client ändern
*Und rebootet ihn noch mal
 
= DHCP-Relay-Server =
{{#drawio:5102-dhcp-relay-01}}
* Der DHCP-Server beantwortet nur Anfragen innerhalb seiner Broadcast-Domäne
* Damit die DHCP-Konfiguration zentral gehalten werden kann, können andere DHCP-Server als Relay für einen Master-DHCP-Server dienen
* In unserem Fall soll die Firewall die DHCP-Konfiguration an die DMZ- und Server-Netze weitergeben
* Von nun an können neue Server in diesen Netzwerken automatisch über die DHCP-IP erreicht werden
=DHCP-Relay-Server Umsetzung=
*[[DHCP-Relay-Server]]
*[[KEA DHCP-Relay-Server - Netzwerk und Serveradministration]]
 
= [[Samba|SMB]] Server =
{{#drawio:5102-smb-01}}
 
== Vorbereitungen ==
* VirtualBox Server-Vorlage mit neuen MAC-Adressen klonen
* Der Host soll im ''Server''-Netzwerk liegen
* statische IP-Adresse nach dem Netzwerkplan setzen (''/etc/network/interfaces'')
* Hostname ändern zu ''smb''
* SSH-Zugriff kann durch Benutzung der Firewall als Jump-Host ermöglicht werden
===Daten===
*NET: Server
*IP 10.2XX.1.2/24
*GW 10.2XX.1.1
*NS 10.88.2XX.21
*NA smb.it2XX.int
*Zu installieren apt install samba smbclient
*[[Anpassen der Virtuellen Maschinen Netzwerk und Serveradministration]]
 
== Netzwerkfreigaben einrichten ==
* Legen Sie eine Sicherheitskopie der Originalkonfigurationsdatei an
* '''cp -v ''/etc/samba/smb.conf''{,.orig}'''
* Diese ist wohl kommentiert und kann als Hilfe/Dokumentation dienen
* Erstellen Sie folgende Arten von Shares:
** [[Samba Public Share|öffentlich]] unter ''/srv/samba/pub'' namens '''public'''
** Ein Share namens '''share''' zugreifbar für ''kit'' unter ''/srv/samba/kit'': [[smb.conf.minimal]]
** die Heimatverzeichnisse der regulären Nutzer des SMB-Servers sollen zugreifbar sein nach einer Authentifizierung: [[smb.conf.home]]
** Ein Share namens '''admins''' zugreifbar für die Benutzer in der Gruppe ''sudo'' unter: ''/srv/samba/admin''
* Testen Sie den Zugriff auf die Shares mit einem Client aus dem LAN:
* '''apt install nemo'''
* Das Programm kann über SSH Forwarding auf dem KIT Host geöffnet werden
* '''ssh -Y ''ip.oder.hostname.client'' "dbus-run-session nemo"'''
* Schneiden Sie den Austausch mit Wireshark auf TCP Port 445 mit
 
= SFTP Server =
{{#drawio:5102-sftp-01}}
 
== Vorbereitungen ==
* VirtualBox Server-Vorlage mit neuen MAC-Adressen klonen
* Der Host soll im ''DMZ''-Netzwerk liegen
* IP-Adresse herausfinden über das DHCP-Log oder die Konsole
* statische IP-Adresse nach dem Netzwerkplan setzen
* Hostname ändern
* DNS-Eintrag vornehmen
* SSH-Server anpassen
===Daten===
*NET: DMZ
*IP 10.88.2XX.3/24
*GW 10.88.2XX.1
*NS 10.88.2XX.2
*NA sftp.it2XX.int
 
*[[Anpassen der Virtuellen Maschinen Netzwerk und Serveradministration]]
 
== sichere Datenübertragung ==
* SFTP benutzt das SSH-Protokoll, um die Daten zu verschlüsseln
* Daher muss nur die [[SFTP-Server|Konfiguration des SSH-Servers]] angepasst werden
* andere FTP-Arten sollten nicht mehr benutzt werden (FTP, TFTP, ...)
* Ein SFTP-Zugang für einen Gast-User soll unter ''/srv/sftp/gast'' angelegt werden
*[[ssh jump-host]]
==SFTP Umsetzung==
*[[SFTP-Server|Konfiguration des SSH-Servers]]
 
= [[:Kategorie:LDAP|LDAP]] Server =
{{#drawio:5102-ldap-01}}
 
== Vorbereitungen ==
* VirtualBox Server-Vorlage mit neuen MAC-Adressen klonen
* Der Host soll im ''Server''-Netzwerk liegen
* IP-Adresse herausfinden über das DHCP-Log oder die Konsole
* statische IP-Adresse nach dem Netzwerkplan setzen
* Hostname ändern
* DNS-Eintrag vornehmen
* SSH-Server anpassen
===Daten===
*NET: Server
*IP 10.2XX.1.3/24
*GW 10.2XX.1.1
*NS 10.88.2XX.21
*NA ldap.it2XX.int
 
*[[Anpassen der Virtuellen Maschinen Netzwerk und Serveradministration]]
 
== zentrale Benutzerverwaltung ==
* Benutzer sollen sich überall mit ihren eigenen Konto anmelden können ohne, dass dieses Konto jedes mal neu angelegt werden muss
* Linux kann für die Benutzerauthentifizierung verschiedene Quellen verwenden
* Neben der lokalen Datei ''/etc/passwd'' soll zusätzlich eine [[:Kategorie:LDAP|LDAP]]-Datenbank für zusätzliche Benutzerkonten befragt werden
*Konfiguration [[Openldap-linux-pam-nss]]
* Die Einträge zu bestimmten Systemkategorien können mit dem Befehl '''getent''' abgefragt werden
* '''getent passwd''' ''# sollte lokale und LDAP-Konten anzeigen''
*LDAP Server Verwaltung über [[ldapscripts]]
* Der LDAP-Server der Domäne soll automatisch über [[LDAP SRV Record|SRV-Einträge]] auf dem DNS Server gefunden werden können
* Alle Hosts aus dem VirtualBox-Labor sollen an den LDAP-Server gebunden werden
*[[LDAP Client SSSD - Netzwerk und Serveradministration]]
 
= [[Squid_from_the_scratch|Squid]] =
{{#drawio:5102-squid-01}}
 
== Vorbereitungen ==
* VirtualBox Server-Vorlage mit neuen MAC-Adressen klonen
* Der Host soll im ''DMZ''-Netzwerk liegen
* IP-Adresse herausfinden über das DHCP-Log oder die Konsole
* statische IP-Adresse nach dem Netzwerkplan setzen
* Hostname ändern
* DNS-Eintrag vornehmen
* SSH-Server anpassen
 
===Daten===
*NET: DMZ
*IP 10.88.2XX.5/24
*GW 10.88.2XX.1
*NS 10.88.2XX.21
*NA squid.it2XX.int
 
*[[Anpassen der Virtuellen Maschinen Netzwerk und Serveradministration]]
 
==Squid Konfiguration Hilfestellung==
*[[Squid_ACL_Basic]]
 
==Squid==
* Um Bandbreite zu sparen kann ein Caching Proxy wie Squid benutzt werden, um die Antworten von Webanfrangen zu speichern
* Zusätzlich können durch ACLs Webzugriffe kontrollieren
* Der Proxy soll auf der Firewall laufen, da dort die nötigen Hardwareressourcen sind
*[[Squid Aufgabe]]
*[[Squid Aufgabe2]]
 
==Proxy PAC über DHCP==
*[[KEA Proxy PAC - Netzkwerk und Serveradministration]]
 
= [[:Kategorie:NTP|NTP]] Server =
{{#drawio:5102-ntp-01}}
 
== Vorbereitungen ==
* VirtualBox Server-Vorlage mit neuen MAC-Adressen klonen
* Der Host soll im ''DMZ''-Netzwerk liegen
* IP-Adresse herausfinden über das DHCP-Log oder die Konsole
* statische IP-Adresse nach dem Netzwerkplan setzen
* Hostname ändern
* DNS-Eintrag vornehmen
* SSH-Server anpassen
 
===Daten===
*NET: DMZ
*IP 10.88.2XX.4/24
*GW 10.88.2XX.1
*NS 10.88.2XX.21
*NA ntp.it2XX.int
 
*[[Anpassen der Virtuellen Maschinen Netzwerk und Serveradministration]]
 
installieren ntp
*sudo apt install ntpsec
 
===NTP mit DHCP verteilen===
*[[KEA DHCP NTP-Konfiguration - Netzwerk und Serveradministration]]
 
=NGINX=
== Vorbereitungen ==
* VirtualBox Server-Vorlage mit neuen MAC-Adressen klonen
* Der Host soll im ''DMZ''-Netzwerk liegen
* IP-Adresse herausfinden über das DHCP-Log oder die Konsole
* statische IP-Adresse nach dem Netzwerkplan setzen
* Hostname ändern
* DNS-Eintrag vornehmen
* SSH-Server anpassen
===Daten===
*NET: DMZ
*IP 10.88.2XX.10/24
*GW 10.88.2XX.1
*NS 10.88.2XX.21
*NA www.it2XX.int
 
*[[Anpassen der Virtuellen Maschinen Netzwerk und Serveradministration]]
 
* sudo apt install nginx
 
==Webserver==
*[[Nginx]]
*[[Nginx https]]
*[[phpldapadmin nginx]]
 
=Exkrus HA Proxy=
== Vorbereitungen ==
* VirtualBox Server-Vorlage mit neuen MAC-Adressen klonen
* Der Host soll im ''DMZ''-Netzwerk liegen
* IP-Adresse herausfinden über das DHCP-Log oder die Konsole
* statische IP-Adresse nach dem Netzwerkplan setzen
* Hostname ändern
* DNS-Eintrag vornehmen
* SSH-Server anpassen
===Daten HAProxy===
*NET: DMZ
*IP 10.88.2XX.25/24
*GW 10.88.2XX.1
*NS 10.88.2XX.2
*NA www.it2XX.int
 
*[[Anpassen der Virtuellen Maschinen Netzwerk und Serveradministration]]
 
* sudo apt install haproxy
 
===Daten Webserver===
*NET: DMZ
*IP 10.88.2XX.15/24
*GW 10.88.2XX.1
*NS 10.88.2XX.2
*NA web2.it2XX.int
 
 


==Webserver==
== SAMBA ==
*[[HAProxy]]
* [[Linux - Netzwerk und Serveradminstration SAMBA|SAMBA]]
*[[HAProxy Umsetzung Linux - Netzwerk Serveradministration]]
* [[Linux - Netzwerk und Serveradminstration SAMBA Rocky|SAMBA Rocky]]
== SQUID ==
* [[Linux - Netzwerk und Serveradminstration SQUID|SQUID]]


=Exkrus checkmk=
== Exkurs Partionieren, Formatieren und Mounten ==
== Vorbereitungen ==
* [[Exkurs Partionieren, Formatieren und Mounten]]
* VirtualBox Server-Vorlage mit neuen MAC-Adressen klonen
== SFTP ==
* Der Host soll im ''Servers''-Netzwerk liegen
* [[Linux - Netzwerk und Serveradminstration SFTP|SFTP]]
* IP-Adresse herausfinden über das DHCP-Log oder die Konsole
* [[Linux - Netzwerk und Serveradminstration SFTP Rocky|SFTP Rocky]]
* statische IP-Adresse nach dem Netzwerkplan setzen
* Hostname ändern
* DNS-Eintrag vornehmen
* SSH-Server anpassen
===Daten checkmk===
*NET: Servers
*IP 10.2XX.1.25/24
*GW 10.2XX.1.1
*NS 10.88.2XX.21
*NA checkmk.it2XX.int


*[[Anpassen der Virtuellen Maschinen Netzwerk und Serveradministration]]
== LDAP ==
=== Docker ===
* [[Linux - Netzwerk und Serveradminstration LDAP|LDAP]]
*[[Anpassen der Virtuellen Maschinen Netzwerk und Serveradministration Docker]]
==Kleines Projekt==
*[[Apache2 Webserver Linux - Netzwerk und Serveradminstration|Apache2 Webserver]]


= Grundlegendes Firewall-Konzept =
== NTP ==
* Dienste sollen erreichbar bleiben
* [[Linux - Netzwerk und Serveradminstration NTP|NTP]]
* ungenutzte Ports sollen blockiert werden
* etablierte Verbindungen sollen über [[Connection Tracking]] freigeschaltet werden


=Linux - Netzwerk und Serveradministration=
== Firewallkonzepte ==
*[[Linux - Netzwerk und Serveradministration Probleme]]
* [[Linux - Netzwerk und Serveradminstration Firewallkonzepte|Firewallkonzepte]]
== Drucker Server ==
* [[Linux - Netzwerk und Serveradminstration Drucker Server|Drucker Server]]


== NFS Server==
* [[NFS Server Rocky]]


=Weiteres=
=Nicht Kursrelevante ADDONS=
*[[Linux - Netzwerk und Serveradminstration Misc]]
*[[Linux - Netzwerk und Serveradminstration Nicht Kursrelevante ADDONS|Nicht Kursrelevante ADDONS]]

Aktuelle Version vom 22. Juli 2026, 15:13 Uhr