Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
54ce7d87ae | ||
|
|
76836197b5 | ||
|
|
70a3cd2d28 | ||
|
|
86c0ab4f65 | ||
|
|
08459d8c99 | ||
|
|
1de38b9b7a | ||
|
|
4611974494 | ||
|
|
7d171f149d | ||
|
|
052419dd43 | ||
|
|
31d7779f45 | ||
|
|
5fbf1ac4de | ||
|
|
adb93a722f | ||
|
|
6181ec4bd7 |
@@ -1,6 +1,7 @@
|
||||
node_modules/
|
||||
.next/
|
||||
out/
|
||||
build/
|
||||
next-env.d.ts
|
||||
*.tsbuildinfo
|
||||
|
||||
|
||||
+132
@@ -26,6 +26,138 @@ Vor `npm version` wandert der Abschnitt „Unveröffentlicht" unter eine neue
|
||||
|
||||
## [Unveröffentlicht]
|
||||
|
||||
## [1.0.5] – 2026-10-05
|
||||
|
||||
Das zweite Vierteljahr beginnt, mit Blick auf Teil 1 der Abschlussprüfung.
|
||||
Dazu eine Anleitung für den Betrieb auf Proxmox.
|
||||
|
||||
### Hinzugefügt
|
||||
|
||||
- **Woche 13 · Linux-Grundlagen** – Handouts S6 (Dateisystem und Befehle), S7
|
||||
(Benutzer, Gruppen, Dateirechte), S8 (Pakete, systemd, SSH), Praxisaufgabe
|
||||
13.1 (Linux-Server einrichten und absichern), Checkliste „Linux-Server
|
||||
grundlegend einrichten", Lernzielkontrolle
|
||||
- **Woche 14 · Betrieb und Überwachung** – Handouts S9 (Überwachung und
|
||||
Schwellwerte), S10 (Protokolle und Zeitsynchronisation), S11
|
||||
(Patch-Management), Praxisaufgabe 14.1 (Überwachung für drei Systeme)
|
||||
- **Woche 15 · Serviceanfragen bearbeiten** – Handouts A10 (Störung,
|
||||
Serviceanfrage, Problem, Änderung), A11 (Priorisieren und eskalieren), A12
|
||||
(Wissensartikel), Praxisaufgabe 15.1 (eine Woche im ersten Level), Checkliste
|
||||
„Änderung planen und durchführen", Lernzielkontrolle
|
||||
- **Woche 16 · Vorbereitung auf Teil 1** – Handouts H4 (Ergonomie), H5 (Energie
|
||||
rechnen, nachhaltig beschaffen und entsorgen), P4 (Pseudocode, Struktogramm,
|
||||
Schreibtischtest), Praxisaufgabe 16.1 (Arbeitsplätze bewerten), Checkliste
|
||||
„Bildschirmarbeitsplatz prüfen" und eine **Probeprüfung Teil 1** – 90
|
||||
Minuten, 100 Punkte, durchgehende Fallsituation
|
||||
- 18 Glossareinträge, 36 Merkkarten
|
||||
- **`docs/BETRIEB-PROXMOX.md`** – von der leeren VM über Docker, Caddy mit
|
||||
HTTPS, erstes Konto und Sicherung bis zur Abnahme vor dem Echtbetrieb
|
||||
- Die README weist darauf hin, dass HTTPS Pflicht ist: Über `http://` nimmt der
|
||||
Browser das Anmeldecookie nicht an, und die Anmeldung scheitert ohne
|
||||
Fehlermeldung
|
||||
|
||||
## [1.0.4] – 2026-10-04
|
||||
|
||||
Vier weitere Wochen Lehrgang – damit steht das erste Vierteljahr.
|
||||
|
||||
### Hinzugefügt
|
||||
|
||||
- **Woche 9 · Virtualisierung** – Handouts V1 (Hypervisor, Überbuchung,
|
||||
Container), V2 (Snapshots, virtuelle Switches, Thin Provisioning), V3 (eine
|
||||
VM planen), Praxisaufgabe 9.1 (Testserver als VM), Checkliste „Virtuelle
|
||||
Maschine bereitstellen", Lernzielkontrolle
|
||||
- **Woche 10 · Verzeichnisdienst und Serverdienste** – Handouts V4 (Active
|
||||
Directory, OUs, AGDLP), V5 (Gruppenrichtlinien, LSDOU, gpresult), V6 (Datei-
|
||||
und Druckdienste), Praxisaufgabe 10.1 (Abteilung im Verzeichnis abbilden),
|
||||
Checkliste „Neuen Mitarbeiter einrichten"
|
||||
- **Woche 11 · Netze trennen und verbinden** – Handouts N5 (VLANs und Trunks),
|
||||
N6 (Routing und Firewallregeln), N7 (WLAN im Betrieb), Praxisaufgabe 11.1
|
||||
(Gästenetz im Testaufbau), Lernzielkontrolle
|
||||
- **Woche 12 · Kundenauftrag** – Handouts A7 (Lastenheft und Pflichtenheft),
|
||||
A8 (Bezugskalkulation), A9 (Vertragsarten, Abnahme, Gewährleistung),
|
||||
Praxisaufgabe 12.1 (Angebot für neue Arbeitsplätze), Checkliste „Auftrag
|
||||
übergeben und abnehmen lassen"
|
||||
- Themenblock „Server und Virtualisierung" (V), 23 Glossareinträge,
|
||||
36 Merkkarten
|
||||
|
||||
### Behoben
|
||||
|
||||
- **Glossarverweise konnten das HTML eines Handouts aufbrechen.** Nach dem
|
||||
Setzen eines Verweises durchsuchten die folgenden Begriffe auch dessen
|
||||
title-Attribut. Enthielt die Erklärung einen weiteren Glossarbegriff – etwa
|
||||
„OU" in der Erklärung von „Gruppenrichtlinie" –, entstand mitten im Attribut
|
||||
ein zweiter Verweis, und im Text stand plötzlich `– was zuletzt kommt,
|
||||
gewinnt.">Gruppenrichtlinie`. Gesetzte Verweise werden jetzt aus dem
|
||||
weiteren Durchsuchen herausgenommen; ein Test prüft alle Handouts gegen das
|
||||
echte Glossar
|
||||
|
||||
## [1.0.3] – 2026-10-04
|
||||
|
||||
Vier neue Wochen Lehrgang. Damit ist jede Position des Ausbildungsrahmenplans
|
||||
von mindestens einem Inhalt berührt.
|
||||
|
||||
### Hinzugefügt
|
||||
|
||||
- **Woche 5 · Ausbildung, Betrieb und Zusammenarbeit** – Handouts A4 (Rechte
|
||||
und Pflichten, Aufbau der Abschlussprüfung), A5 (Aufbau- und
|
||||
Ablauforganisation, Mitbestimmung), A6 (Kanalwahl, Ablage, Besprechungen),
|
||||
Praxisaufgabe 5.1 (den Betrieb aus Sicht der IT kartieren),
|
||||
Lernzielkontrolle. Schließt C1, C2 und C5
|
||||
- **Woche 6 · IT-Sicherheit und Datenschutz** – Handouts I1 (Schutzziele und
|
||||
Schutzbedarf nach BSI-Standard 200-2), I2 (Passwörter, zweiter Faktor,
|
||||
Phishing), I3 (DSGVO in der Administration), Praxisaufgabe 6.1
|
||||
(Schutzbedarfsfeststellung), Checkliste „Sicherheit eines Arbeitsplatzes
|
||||
prüfen"
|
||||
- **Woche 7 · Skripting mit PowerShell** – Handouts P1 (Pipeline und
|
||||
Objekte), P2 (Variablen, Bedingungen, Schleifen), P3 (Skripte, die man
|
||||
betreuen kann), Praxisaufgabe 7.1 (Inventarskript), Lernzielkontrolle.
|
||||
Schließt A4 und A10
|
||||
- **Woche 8 · Datensicherung und Speicher** – Handouts S3 (Sicherungsarten,
|
||||
3-2-1, RPO und RTO), S4 (Wiederherstellung testen), S5 (RAID, NAS, SAN),
|
||||
Praxisaufgabe 8.1 (Sicherung eines Bereichs prüfen und zurückspielen),
|
||||
Checkliste „Wiederherstellung testen"
|
||||
- Themenblöcke „IT-Sicherheit und Datenschutz" (I) und „Skripting und
|
||||
Automatisierung" (P)
|
||||
- 22 Glossareinträge, 38 Merkkarten
|
||||
|
||||
Bestehende Installationen: Die neuen Wochen erscheinen im Wochenplan unter
|
||||
„noch nicht eingeplant" und werden dort einmal eingeplant.
|
||||
|
||||
## [1.0.2] – 2026-10-04
|
||||
|
||||
### Hinzugefügt
|
||||
|
||||
- **Bremse gegen Passwortraten.** Nach fünf Fehlversuchen wird eine
|
||||
E-Mail-Adresse gesperrt, erst eine Minute, dann doppelt so lang, höchstens
|
||||
15 Minuten. Das gilt auch für Adressen, die es nicht gibt – die Sperre
|
||||
verrät also nicht, welche Konten existieren. Während der Sperre kommt auch
|
||||
das richtige Passwort nicht durch. Ausgesperrt? Ein Neustart des Containers
|
||||
setzt die Zähler zurück. Siehe E42
|
||||
- Die Containerabnahme prüft die Sperre im laufenden Abbild
|
||||
|
||||
## [1.0.1] – 2026-10-03
|
||||
|
||||
Das Docker-Abbild ist jetzt aus dem Nichts aufsetzbar.
|
||||
|
||||
### Behoben
|
||||
|
||||
- **Im Docker-Abbild ließ sich kein erstes Konto anlegen.** Die README nannte
|
||||
`node werkzeuge/konto.js`, das Abbild enthielt aber nur die Sicherungsskripte,
|
||||
und `tsx` gibt es dort nicht. Ein frisch aufgesetzter Server stand vor einer
|
||||
Anmeldeseite ohne Konto. Das Kontowerkzeug wird jetzt beim Bau mit esbuild zu
|
||||
einer Datei gebündelt (`npm run werkzeuge:bauen`) und liegt unter
|
||||
`/app/werkzeuge/konto.js`
|
||||
- **Windows-Pfade in Dateinamen von Anhängen** wurden unter Linux nicht
|
||||
abgetrennt – aus `C:\Users\x\foto.jpg` wurde `C:Usersxfoto.jpg`. Nur die
|
||||
Anzeige war betroffen, gespeichert wird unter der UUID. Der Test dazu war
|
||||
unter Windows grün und unter Linux rot
|
||||
|
||||
### Hinzugefügt
|
||||
|
||||
- `npm run abnahme:container` – Abnahmelauf gegen das gebaute Docker-Abbild:
|
||||
Lebenszeichen, Betrieb ohne root, erstes Konto, Anmeldung, Passwort neu
|
||||
setzen, Sicherung im Volume
|
||||
|
||||
## [1.0.0] – 2026-09-11
|
||||
|
||||
Die erste abnahmefähige Fassung. Alle zehn Bausteine sind fertig, die
|
||||
|
||||
+5
-1
@@ -24,6 +24,9 @@ ENV NEXT_TELEMETRY_DISABLED=1
|
||||
COPY --from=abhaengigkeiten /app/node_modules ./node_modules
|
||||
COPY . .
|
||||
RUN npm run build
|
||||
# Das Kontowerkzeug als eine einzige JS-Datei – im Abbild gibt es kein tsx.
|
||||
# Die nativen Module bleiben draußen, sie bringt die Standalone-Ausgabe mit.
|
||||
RUN npm run werkzeuge:bauen
|
||||
|
||||
# --- Laufzeit -------------------------------------------------------------
|
||||
FROM node:${NODE_VERSION} AS laufzeit
|
||||
@@ -51,8 +54,9 @@ COPY --from=bau /app/public ./public
|
||||
COPY --from=bau /app/content ./content
|
||||
COPY --from=bau /app/src/lib/db/migrationen ./migrationen
|
||||
|
||||
# Werkzeuge für Sicherung und Wiederherstellung im Container.
|
||||
# Werkzeuge für Sicherung, Wiederherstellung und das erste Konto.
|
||||
COPY --from=bau /app/scripts/im-container ./werkzeuge
|
||||
COPY --from=bau /app/build/werkzeuge/konto.js ./werkzeuge/konto.js
|
||||
RUN chmod +x ./werkzeuge/*.sh
|
||||
|
||||
RUN mkdir -p /daten && chown -R node:node /daten /app
|
||||
|
||||
@@ -471,3 +471,25 @@ Der Grund ist banal und war ein echter Fehler: Wer die dunkle Fassung
|
||||
eingestellt hatte, druckte schwarze Flächen. Eine einzelne Regel für `body`
|
||||
genügt nicht, weil die Karten, Ränder und Marken ihre Farben aus Merkmalen
|
||||
beziehen.
|
||||
|
||||
## E42 · Bremse gegen Passwortraten im Speicher, je E-Mail-Adresse
|
||||
|
||||
Nach fünf Fehlversuchen wird eine Adresse gesperrt, erst eine Minute, dann
|
||||
jeweils doppelt so lang, höchstens 15 Minuten. Eine Stunde ohne Fehlversuch
|
||||
oder eine erfolgreiche Anmeldung setzt den Zähler zurück.
|
||||
|
||||
- **Je Adresse, nicht je Konto.** Auch eine Adresse, die es nicht gibt, wird
|
||||
gesperrt. Sonst verriete die Sperre, welche Konten existieren (E6).
|
||||
- **Nicht je IP-Adresse.** Hinter dem Reverse Proxy käme die Adresse aus
|
||||
`X-Forwarded-For`, und darauf ist nur Verlass, wenn der Proxy richtig
|
||||
eingestellt ist. Bei einer Handvoll Konten lohnt das Durchprobieren vieler
|
||||
Konten mit wenigen Passwörtern ohnehin nicht.
|
||||
- **Obergrenze 15 Minuten.** Wer die Adresse des Ausbilders kennt, soll ihn
|
||||
nicht für Stunden aussperren können.
|
||||
- **Im Speicher, nicht in der Datenbank.** Es läuft genau ein Prozess. Ein
|
||||
Neustart setzt die Zähler zurück – das kann ein Angreifer nicht auslösen,
|
||||
der Betreiber aber schon, wenn er sich selbst ausgesperrt hat
|
||||
(`docker compose restart lernbar`).
|
||||
- **Gezählt wird vor der Prüfung.** Jeder Versuch gilt sofort als Fehlversuch
|
||||
und wird bei Erfolg zurückgenommen. Zwischen Sperrprüfung und Zählen liegt
|
||||
so kein `await`; sonst kämen gleichzeitige Anfragen alle an der Sperre vorbei.
|
||||
|
||||
@@ -12,6 +12,7 @@ Lernplattform-Baukasten, keine Mandanten, keine Cloud.
|
||||
> **Stand:** Alle zehn Bausteine sind fertig – Fassung 1.0.0.
|
||||
>
|
||||
> - [**Anleitung mit Bildschirmfotos**](docs/ANLEITUNG.md) – wie man damit arbeitet
|
||||
> - [**Betrieb auf Proxmox**](docs/BETRIEB-PROXMOX.md) – von der leeren VM bis zum Echtbetrieb
|
||||
> - [Abnahmeprotokoll](docs/ABNAHME.md) – die Abnahmekriterien, einzeln durchgespielt
|
||||
> - [Änderungsprotokoll](CHANGELOG.md) · [Fahrplan](ROADMAP.md) ·
|
||||
> [Entscheidungen](ENTSCHEIDUNGEN.md)
|
||||
@@ -25,7 +26,9 @@ Lernplattform-Baukasten, keine Mandanten, keine Cloud.
|
||||
- **Betrieb:** Docker mit Compose-Erweiterung (Docker 24 oder neuer)
|
||||
- **Entwicklung:** Node.js 22 oder neuer, Git
|
||||
- Ein Reverse Proxy, der TLS beendet (nginx, Caddy, Traefik) – die Anwendung
|
||||
selbst spricht nur HTTP und lauscht nur auf der Schleife
|
||||
selbst spricht nur HTTP und lauscht nur auf der Schleife. **HTTPS ist Pflicht:**
|
||||
Das Anmeldecookie ist im Betrieb als `Secure` gesetzt, über `http://` scheitert
|
||||
die Anmeldung ohne Fehlermeldung
|
||||
|
||||
### Betrieb mit Docker
|
||||
|
||||
@@ -39,14 +42,13 @@ Die Anwendung lauscht danach auf `127.0.0.1:3000`. Erstes Ausbilderkonto
|
||||
anlegen:
|
||||
|
||||
```bash
|
||||
docker compose exec lernbar node -e "1" >/dev/null # Container erreichbar?
|
||||
docker compose exec lernbar sh -c \
|
||||
'node werkzeuge/konto.js --name "Vorname Nachname" --email ausbilder@betrieb.de --rolle ausbilder'
|
||||
docker compose exec lernbar node werkzeuge/konto.js \
|
||||
--name "Vorname Nachname" --email ausbilder@betrieb.de --rolle ausbilder
|
||||
```
|
||||
|
||||
> Solange das Konto-Werkzeug im Abbild noch nicht liegt, geht es vom
|
||||
> Entwicklungsrechner aus:
|
||||
> `npm run konto:anlegen -- --name "…" --email … --rolle ausbilder`
|
||||
Ohne `--passwort` wird eines erzeugt und ausgegeben. Gibt es die Adresse
|
||||
schon, setzt derselbe Aufruf das Passwort neu – das ist zugleich der Weg, wenn
|
||||
das einzige Ausbilderkonto sein Passwort vergessen hat.
|
||||
|
||||
Danach im Browser anmelden, unter **Verwaltung** das Azubikonto anlegen und
|
||||
das Ausbildungsverhältnis mit Beginndatum einrichten.
|
||||
@@ -244,6 +246,7 @@ npm run typecheck # TypeScript
|
||||
npm run lint # ESLint
|
||||
npm run test # Vitest – Logik, die wehtut (315 Tests)
|
||||
npm run abnahme # der Abnahmelauf, siehe unten
|
||||
npm run abnahme:container # derselbe Weg gegen das Docker-Abbild
|
||||
```
|
||||
|
||||
### Der Abnahmelauf
|
||||
@@ -269,6 +272,17 @@ Voraussetzung: `npm run build` ist gelaufen, und Port 3399 ist frei – sonst
|
||||
bricht der Lauf mit einer Meldung ab, statt gegen einen fremden Datenbestand zu
|
||||
prüfen.
|
||||
|
||||
### Der Containerlauf
|
||||
|
||||
`npm run abnahme` prüft über `next start`, betrieben wird aber der Container.
|
||||
`npm run abnahme:container` baut deshalb das Abbild, startet es mit leerem
|
||||
Volume und geht den Weg aus dieser README: Lebenszeichen, erstes Konto über
|
||||
`werkzeuge/konto.js`, Anmeldung, Passwort neu setzen, Sperre nach
|
||||
Fehlversuchen, Sicherung im Container.
|
||||
Danach werden Container, Volume und Abbild wieder entfernt.
|
||||
|
||||
Voraussetzung: Docker läuft, Port 3398 ist frei (`LERNBAR_CONTAINER_PORT`).
|
||||
|
||||
### Einzelne Zusagen
|
||||
|
||||
```bash
|
||||
|
||||
@@ -0,0 +1,53 @@
|
||||
---
|
||||
id: "10.1"
|
||||
titel: Eine Abteilung im Verzeichnisdienst abbilden
|
||||
woche: 10
|
||||
block: server
|
||||
ziel: Du bildest auf dem Testserver eine Abteilung mit OU, Gruppen nach AGDLP, Freigabe, Laufwerkszuordnung und Druckerzuordnung ab und weist mit zwei Testkonten nach, dass jede Rolle genau die vorgesehenen Rechte hat.
|
||||
zeitrahmen: 8 Stunden, verteilt auf zwei Tage
|
||||
rahmenplan: [B3, A6, B1, A5]
|
||||
lernfeld: LF10
|
||||
material:
|
||||
- Testserver aus Praxisaufgabe 9.1 mit Domänencontroller-Rolle oder Zugang zur Testdomäne
|
||||
- Ein Testclient, der Mitglied der Testdomäne ist
|
||||
- Abteilungsübersicht aus Praxisaufgabe 5.1
|
||||
- Checkliste „Neuen Mitarbeiter einrichten"
|
||||
kriterien:
|
||||
- Ein Plan mit OU-Struktur, Gruppen und Rechten lag vor der Umsetzung vor
|
||||
- Die Gruppen folgen AGDLP und der Namensregel
|
||||
- Berechtigungen sind ausschließlich an domänenlokale Gruppen vergeben, nicht an Konten
|
||||
- Laufwerk und Drucker werden per Gruppenrichtlinie zugeordnet, gefiltert auf die Gruppe
|
||||
- Zwei Testkonten mit unterschiedlicher Rolle haben genau die vorgesehenen Rechte – nachgewiesen durch Anmeldung, nicht durch Ansicht der Einstellungen
|
||||
- gpresult wurde am Client geprüft und das Ergebnis dokumentiert
|
||||
- Ein Abteilungswechsel eines Testkontos wurde durchgespielt, nur durch Änderung der Gruppenzugehörigkeit
|
||||
---
|
||||
|
||||
## Auftrag
|
||||
|
||||
Nimm eine Abteilung aus deiner Übersicht aus Aufgabe 5.1 – etwa den Einkauf – und bilde sie
|
||||
in der Testdomäne vollständig ab.
|
||||
|
||||
1. **Planen:** OU für die Abteilung, globale Gruppen nach Rolle (Mitarbeitende,
|
||||
Abteilungsleitung), domänenlokale Gruppen nach Recht (Ablage ändern, Ablage lesen).
|
||||
Schreib auf, welche Rolle welches Recht bekommt.
|
||||
2. **Ablage:** Ordner auf dem Testserver anlegen, freigeben, NTFS-Rechte an die
|
||||
domänenlokalen Gruppen vergeben.
|
||||
3. **Konten:** Zwei Testkonten nach der Checkliste anlegen, eines je Rolle.
|
||||
4. **Richtlinien:** Laufwerkszuordnung und Druckerzuordnung per Gruppenrichtlinie, gefiltert
|
||||
auf die Gruppe der Abteilung.
|
||||
5. **Nachweisen:** Mit beiden Testkonten am Testclient anmelden, Zugriff prüfen – auch, was
|
||||
**nicht** gehen darf. `gpresult /r` ausführen und festhalten.
|
||||
6. **Wechsel durchspielen:** Ein Testkonto wechselt in eine andere Abteilung. Ändere nur die
|
||||
Gruppenzugehörigkeit und prüfe erneut.
|
||||
|
||||
## Worauf es ankommt
|
||||
|
||||
Der Nachweis per Anmeldung ist der Teil, der zählt. Eine Berechtigung, die im Dialog richtig
|
||||
aussieht, aber beim Anmelden nicht wirkt – etwa weil die Freigabe enger ist als NTFS oder
|
||||
die Richtlinie herausgefiltert wird –, fällt sonst erst dem Mitarbeiter am ersten Arbeitstag
|
||||
auf.
|
||||
|
||||
## Zeit
|
||||
|
||||
Zwei Tage. Plane am ersten Tag und setze die Ablage um, am zweiten Tag Konten, Richtlinien
|
||||
und Nachweis.
|
||||
@@ -0,0 +1,54 @@
|
||||
---
|
||||
id: "11.1"
|
||||
titel: Ein Gästenetz im Testaufbau einrichten
|
||||
woche: 11
|
||||
block: netzwerk
|
||||
ziel: Du richtest im Testaufbau ein Gästenetz mit eigenem VLAN, Subnetz, DHCP, Firewallregeln und Funknetz ein und weist nach, dass Gäste ins Internet kommen, aber kein internes Netz erreichen.
|
||||
zeitrahmen: 7 Stunden
|
||||
rahmenplan: [B2, A6, A5, B1]
|
||||
lernfeld: LF9
|
||||
material:
|
||||
- Testswitch mit VLAN-Unterstützung
|
||||
- Testfirewall (z. B. OPNsense oder pfSense, auch als VM) mit Internetzugang
|
||||
- Ein Access Point, der mehrere Funknetze mit VLAN-Zuordnung kann
|
||||
- Zwei Testgeräte, eines davon ein Smartphone oder Notebook mit WLAN
|
||||
- Netzplan und VLAN-Übersicht des Testaufbaus
|
||||
kriterien:
|
||||
- Ein Plan mit VLAN-ID, Subnetz, Gateway, DHCP-Bereich und Firewallregeln lag vor der Umsetzung vor
|
||||
- Switchports sind nach Plan als Access- bzw. Trunk-Port konfiguriert, auf dem Trunk sind nur die benötigten VLANs zugelassen
|
||||
- Ein Gastgerät erhält per DHCP eine Adresse aus dem Gästenetz
|
||||
- Ein Gastgerät erreicht Internetseiten über den Namen
|
||||
- Ein Gastgerät erreicht weder ein internes Netz noch die Verwaltungsoberfläche von Firewall, Switch oder Access Point – nachgewiesen mit Ping und Browser
|
||||
- Zwei Gastgeräte erreichen sich nicht gegenseitig
|
||||
- Jede Firewallregel hat eine Beschreibung mit Zweck
|
||||
- Netzplan und VLAN-Übersicht sind aktualisiert
|
||||
---
|
||||
|
||||
## Auftrag
|
||||
|
||||
Für Besucher und Lieferanten soll es ein Funknetz geben, das ins Internet führt und sonst
|
||||
nirgendwohin. Du baust es im Testaufbau.
|
||||
|
||||
1. **Planen:** VLAN-ID, Subnetz, Gateway auf der Firewall, DHCP-Bereich, DNS. Schreib die
|
||||
Firewallregeln in der Reihenfolge auf, in der sie stehen sollen – siehe Handout N6.
|
||||
2. **Switch:** VLAN anlegen, Port zur Firewall und Port zum Access Point als Trunk mit den
|
||||
benötigten VLANs.
|
||||
3. **Firewall:** Schnittstelle für das VLAN, Gateway-Adresse, DHCP, Regeln.
|
||||
4. **Access Point:** Funknetz „Gast" mit WPA2/WPA3-Personal, Zuordnung zu VLAN 90, Isolation
|
||||
der Endgeräte.
|
||||
5. **Nachweisen:** Mit einem Gastgerät Adresse prüfen, Internetseite öffnen, interne Adressen
|
||||
und die Verwaltungsoberflächen anpingen und im Browser aufrufen – das muss scheitern. Mit
|
||||
zwei Gastgeräten prüfen, dass sie sich nicht erreichen.
|
||||
6. **Dokumentieren:** Plan mit den tatsächlichen Werten, Netzplan und VLAN-Übersicht
|
||||
aktualisieren.
|
||||
|
||||
## Worauf es ankommt
|
||||
|
||||
Der Nachweis, was **nicht** geht, ist wichtiger als der, was geht. Dass ein Gast ins Internet
|
||||
kommt, merkt jeder. Dass er auch die Verwaltungsoberfläche der Firewall aufrufen kann, merkt
|
||||
man erst, wenn es jemand ausprobiert – und dann besser du.
|
||||
|
||||
## Zeit
|
||||
|
||||
Sieben Stunden. Teste nach jedem Schritt, nicht erst am Ende – ein falsch eingestellter
|
||||
Trunk ist nach dem Einrichten der Firewall nur noch schwer zu finden.
|
||||
@@ -0,0 +1,51 @@
|
||||
---
|
||||
id: "12.1"
|
||||
titel: Ein Angebot für neue Arbeitsplätze ausarbeiten
|
||||
woche: 12
|
||||
block: arbeitsalltag
|
||||
ziel: Du nimmst die Anforderungen für vier neue Arbeitsplätze auf, holst drei vergleichbare Angebote ein, rechnest und bewertest sie und legst eine begründete Empfehlung samt Pflichtenheft vor.
|
||||
zeitrahmen: 10 Stunden, verteilt auf drei Tage
|
||||
rahmenplan: [A2, A3, A1, A7]
|
||||
lernfeld: LF2
|
||||
material:
|
||||
- Gesprächstermin mit dem „Kunden" (Ausbilder oder eine Führungskraft mit echtem Bedarf)
|
||||
- Zugang zu Händlerportalen bzw. Ansprechpartner bei zwei Lieferanten des Betriebs
|
||||
- Vorlage für Nutzwertanalyse (aus Praxisaufgabe 2.2)
|
||||
kriterien:
|
||||
- Ein Lastenheft mit prüfbaren Muss-, Soll- und Kann-Anforderungen liegt vor und ist vom Kunden bestätigt
|
||||
- Drei Angebote liegen vor, eingeholt mit derselben Anfrage
|
||||
- Für jedes Angebot ist der Bezugspreis nach Schema berechnet, netto
|
||||
- Die Nutzwertanalyse enthält neben dem Preis mindestens drei weitere gewichtete Kriterien
|
||||
- Die Empfehlung begründet die Wahl und nennt, was gegen die anderen Angebote spricht
|
||||
- Das Pflichtenheft beschreibt Geräte, Einrichtung, Zeitplan und Abnahmekriterien
|
||||
- Die Empfehlung wurde dem Kunden in höchstens zehn Minuten vorgestellt
|
||||
---
|
||||
|
||||
## Auftrag
|
||||
|
||||
Eine Abteilung bekommt vier neue Arbeitsplätze. Du bereitest die Entscheidung so vor, dass
|
||||
der Kunde sie in einer Besprechung treffen kann.
|
||||
|
||||
1. **Anforderungen aufnehmen:** Gespräch mit dem Kunden nach Handout A7. Schreib das
|
||||
Lastenheft und lass es bestätigen. Jede Anforderung muss prüfbar sein.
|
||||
2. **Anfrage stellen:** Eine einheitliche Anfrage an drei Anbieter – Menge, Anforderungen,
|
||||
Liefertermin, gewünschte Garantie.
|
||||
3. **Rechnen:** Bezugskalkulation je Angebot nach Handout A8.
|
||||
4. **Bewerten:** Nutzwertanalyse nach Handout H3 mit Preis, Lieferzeit, Garantie und Service
|
||||
und den Kriterien, die sich aus dem Lastenheft ergeben.
|
||||
5. **Pflichtenheft:** Welche Geräte, wie eingerichtet, bis wann, und woran der Kunde bei der
|
||||
Abnahme prüft, ob alles erfüllt ist.
|
||||
6. **Vorstellen:** Höchstens zehn Minuten, eine Seite Handzettel, Empfehlung am Anfang, nicht
|
||||
am Ende.
|
||||
|
||||
## Worauf es ankommt
|
||||
|
||||
Der Kunde will eine Entscheidung treffen, keine Datenblätter lesen. Eine gute Vorstellung
|
||||
beginnt mit der Empfehlung, begründet sie mit zwei, drei Punkten und zeigt die Rechnung nur
|
||||
auf Nachfrage. Und: Die Abnahmekriterien im Pflichtenheft sind die Absicherung für den Tag,
|
||||
an dem jemand sagt, so habe man sich das nicht vorgestellt.
|
||||
|
||||
## Zeit
|
||||
|
||||
Drei Tage, davon ein Tag Wartezeit auf Angebote. In dieser Zeit schreibst du das
|
||||
Pflichtenheft vor.
|
||||
@@ -0,0 +1,49 @@
|
||||
---
|
||||
id: "13.1"
|
||||
titel: Einen Linux-Server grundlegend einrichten und absichern
|
||||
woche: 13
|
||||
block: system
|
||||
ziel: Du richtest auf dem Testhost einen Linux-Server ein, sicherst den Fernzugang ab, stellst einen Webserver als Dienst bereit und weist nach, dass nur erreichbar ist, was erreichbar sein soll.
|
||||
zeitrahmen: 6 Stunden
|
||||
rahmenplan: [B3, A6, B1, A5]
|
||||
lernfeld: LF9
|
||||
material:
|
||||
- Testhost aus Praxisaufgabe 9.1 und ein Installationsabbild von Debian oder Ubuntu Server
|
||||
- Ein eigener Rechner mit SSH-Client
|
||||
- Checkliste „Linux-Server grundlegend einrichten"
|
||||
kriterien:
|
||||
- Die VM ist nach Handout V3 geplant und dokumentiert
|
||||
- Es gibt einen persönlichen Benutzer mit sudo-Recht, gearbeitet wird nicht als root
|
||||
- Die Anmeldung per SSH geht nur mit Schlüssel, root kann sich nicht direkt anmelden – nachgewiesen durch einen fehlschlagenden Versuch
|
||||
- Automatische Sicherheitsupdates sind eingerichtet
|
||||
- Die Firewall lässt nur SSH und HTTP zu, ss -tlnp bestätigt, dass nichts Unerwartetes lauscht
|
||||
- nginx läuft als Dienst, startet nach einem Neustart von selbst und liefert eine eigene Testseite aus
|
||||
- Ein absichtlich herbeigeführter Fehler in der nginx-Konfiguration wurde mit journalctl gefunden und behoben
|
||||
---
|
||||
|
||||
## Auftrag
|
||||
|
||||
1. **Planen und installieren:** VM nach Handout V3 planen, Debian oder Ubuntu Server
|
||||
installieren, nur das Grundsystem und den SSH-Server auswählen.
|
||||
2. **Benutzer:** persönlichen Benutzer anlegen und in die Gruppe `sudo` aufnehmen.
|
||||
3. **Schlüssel:** Schlüsselpaar auf deinem Rechner erzeugen, öffentlichen Schlüssel
|
||||
hinterlegen, Anmeldung testen.
|
||||
4. **SSH absichern:** root-Anmeldung und Passwort-Anmeldung abschalten. Zweite Sitzung offen
|
||||
lassen und testen, bevor du die erste schließt.
|
||||
5. **Aktualisieren:** alle Updates einspielen, automatische Sicherheitsupdates einrichten.
|
||||
6. **Firewall:** nur SSH und HTTP freigeben, mit `ss -tlnp` gegenprüfen.
|
||||
7. **Webserver:** nginx installieren, eine eigene Testseite unter `/var/www/html` ablegen,
|
||||
Neustart des Servers, prüfen, ob die Seite wieder da ist.
|
||||
8. **Fehlersuche üben:** Baue einen Tippfehler in die nginx-Konfiguration ein, starte nginx neu,
|
||||
finde die Ursache mit `systemctl status` und `journalctl`, behebe sie. Halte die Meldung fest.
|
||||
|
||||
## Worauf es ankommt
|
||||
|
||||
Der Nachweis, dass die root-Anmeldung und die Anmeldung per Passwort **scheitern**, gehört
|
||||
dazu. Eine Einstellung in der Konfigurationsdatei ist erst dann wirksam, wenn der Dienst sie
|
||||
geladen hat – und das zeigt nur der Versuch.
|
||||
|
||||
## Zeit
|
||||
|
||||
Sechs Stunden. Wenn du dich ausgesperrt hast, kommst du über die Konsole des Hypervisors
|
||||
wieder hinein – genau dafür gibt es sie.
|
||||
@@ -0,0 +1,48 @@
|
||||
---
|
||||
id: "14.1"
|
||||
titel: Eine Überwachung für drei Systeme einrichten
|
||||
woche: 14
|
||||
block: system
|
||||
ziel: Du richtest für drei Systeme der Testumgebung eine Überwachung mit begründeten Schwellwerten ein, legst fest, wer bei welchem Alarm was tut, und weist mit einem absichtlich herbeigeführten Ausfall nach, dass der Alarm ankommt.
|
||||
zeitrahmen: 6 Stunden
|
||||
rahmenplan: [A8, A5, B3]
|
||||
lernfeld: LF11
|
||||
material:
|
||||
- Zugang zum Überwachungssystem des Betriebs oder eine Test-Installation (z. B. Checkmk, Zabbix oder Uptime Kuma)
|
||||
- Testserver aus den Praxisaufgaben 9.1 und 13.1 sowie ein Testclient
|
||||
- Ein Postfach oder Kanal, an den Alarme gehen dürfen
|
||||
kriterien:
|
||||
- Für jedes System sind mindestens vier Prüfungen eingerichtet, darunter Erreichbarkeit und Plattenplatz
|
||||
- Jede Prüfung hat Schwellen für Warnung und kritisch, mit Begründung
|
||||
- Für jeden kritischen Alarm ist eine Handlung und ein Empfänger festgelegt
|
||||
- Ein absichtlicher Ausfall (Dienst gestoppt) hat einen Alarm ausgelöst, die Zeit bis zum Eingang ist gemessen
|
||||
- Nach Behebung meldet die Überwachung die Entwarnung
|
||||
- Es ist beschrieben, wie auffällt, dass die Überwachung selbst ausgefallen ist
|
||||
- Die Einrichtung ist dokumentiert
|
||||
---
|
||||
|
||||
## Auftrag
|
||||
|
||||
1. **Auswählen:** Nimm den Windows-Testserver, den Linux-Server und einen Testclient.
|
||||
2. **Prüfungen festlegen:** Was muss je System überwacht werden? Nutze die Übersicht aus Handout
|
||||
S9 als Ausgangspunkt, aber übernimm sie nicht blind – ein Client braucht anderes als ein
|
||||
Server.
|
||||
3. **Schwellen begründen:** Schreib zu jeder Schwelle einen Satz, warum sie dort liegt.
|
||||
4. **Handlungen festlegen:** Wer bekommt welchen Alarm, und was tut er dann? Ein Alarm ohne
|
||||
Handlung ist keiner.
|
||||
5. **Einrichten** im Überwachungssystem.
|
||||
6. **Testen:** Stoppe einen überwachten Dienst. Miss die Zeit, bis der Alarm ankommt. Starte den
|
||||
Dienst wieder und prüfe die Entwarnung.
|
||||
7. **Die Überwachung überwachen:** Beschreibe, woran ihr merkt, dass das Überwachungssystem
|
||||
selbst ausgefallen ist.
|
||||
|
||||
## Worauf es ankommt
|
||||
|
||||
Weniger ist mehr. Zwanzig Prüfungen je System sehen gründlich aus und erzeugen nach einer
|
||||
Woche so viele Meldungen, dass niemand mehr hinschaut. Gesucht sind die Prüfungen, bei denen
|
||||
ein Alarm tatsächlich bedeutet: Jetzt muss jemand etwas tun.
|
||||
|
||||
## Zeit
|
||||
|
||||
Sechs Stunden. Vor dem Test kurz ankündigen, dass gleich ein Alarm kommt – sonst sucht jemand
|
||||
anderes die Ursache.
|
||||
@@ -0,0 +1,47 @@
|
||||
---
|
||||
id: "15.1"
|
||||
titel: Eine Woche im ersten Level
|
||||
woche: 15
|
||||
block: arbeitsalltag
|
||||
ziel: Du übernimmst unter Aufsicht den ersten Level im Ticketsystem, ordnest jedes Ticket nach Art und Priorität ein, erkennst ein wiederkehrendes Problem und schreibst zwei Wissensartikel.
|
||||
zeitrahmen: Montag bis Donnerstag, jeweils vormittags
|
||||
rahmenplan: [A1, A2, A5, A7]
|
||||
lernfeld: LF6
|
||||
material:
|
||||
- Zugang zum Ticketsystem mit Bearbeitungsrecht im ersten Level
|
||||
- Prioritätenmatrix und Zielzeiten des Betriebs (oder die aus Handout A11)
|
||||
- Zugang zur Wissensdatenbank
|
||||
kriterien:
|
||||
- Mindestens 15 Tickets sind nach Art (Störung, Serviceanfrage) und Priorität eingeordnet, jeweils mit einem Satz Begründung
|
||||
- Die Einordnungen sind mit dem Ausbilder abgeglichen, Abweichungen besprochen
|
||||
- Jede Eskalation an den zweiten Level enthält alle Angaben, sodass keine Rückfrage nötig war
|
||||
- Die Nutzer wurden bei längerer Bearbeitung von sich aus über den Stand informiert
|
||||
- Mindestens ein wiederkehrendes Muster ist als Problem mit verknüpften Tickets angelegt
|
||||
- Zwei Wissensartikel nach dem Aufbau aus Handout A12 liegen in der Wissensdatenbank
|
||||
---
|
||||
|
||||
## Auftrag
|
||||
|
||||
An vier Vormittagen bist du der erste Ansprechpartner für neue Tickets – der Ausbilder oder ein
|
||||
Kollege aus dem zweiten Level sitzt daneben oder ist erreichbar.
|
||||
|
||||
1. **Annehmen:** Jedes neue Ticket lesen, bei Bedarf beim Melder nachfragen, bis die Angaben
|
||||
aus Handout A1 vollständig sind.
|
||||
2. **Einordnen:** Art und Priorität festlegen und in einem Satz begründen.
|
||||
3. **Lösen oder eskalieren:** Was du lösen kannst, löst du. Was nicht, gibst du vollständig an
|
||||
den zweiten Level weiter.
|
||||
4. **Informieren:** Melde dich bei Nutzern, deren Ticket länger dauert, bevor sie nachfragen.
|
||||
5. **Muster erkennen:** Sammle Tickets, die sich ähneln. Lege für ein Muster ein Problem an.
|
||||
6. **Aufschreiben:** Für zwei Lösungen, die du in dieser Woche gebraucht hast, schreibst du einen
|
||||
Wissensartikel.
|
||||
7. **Abgleichen:** Am Ende jedes Vormittags gehst du deine Einordnungen mit dem Ausbilder durch.
|
||||
|
||||
## Worauf es ankommt
|
||||
|
||||
Die Begründung der Priorität ist wichtiger als die Priorität selbst. Wer begründen kann, warum
|
||||
der Bildschirm der Geschäftsführung nach dem Lagerdrucker kommt, hat das Prinzip verstanden – und
|
||||
kann es dem Geschäftsführer auch erklären.
|
||||
|
||||
## Zeit
|
||||
|
||||
Vier Vormittage. Nachmittags laufen die übrigen Inhalte der Woche.
|
||||
@@ -0,0 +1,47 @@
|
||||
---
|
||||
id: "16.1"
|
||||
titel: Drei Arbeitsplätze nach Ergonomie und Energie bewerten
|
||||
woche: 16
|
||||
block: hardware
|
||||
ziel: Du prüfst drei Bildschirmarbeitsplätze auf ergonomische Mängel, misst ihren Stromverbrauch, rechnest die Jahreskosten hoch und legst eine begründete Empfehlung mit Kosten vor.
|
||||
zeitrahmen: 5 Stunden
|
||||
rahmenplan: [C3, C4, A3, A2]
|
||||
lernfeld: LF2
|
||||
material:
|
||||
- Checkliste „Bildschirmarbeitsplatz prüfen"
|
||||
- Eine Energiemessgerät-Steckdose
|
||||
- Maßband
|
||||
- Aktueller Strompreis des Betriebs (bei der Buchhaltung erfragen)
|
||||
kriterien:
|
||||
- An drei Arbeitsplätzen ist die Checkliste vollständig abgearbeitet, Mängel sind mit Foto oder Maß belegt
|
||||
- Die Nutzer wurden nach Beschwerden gefragt, ihre Antworten sind festgehalten
|
||||
- Der Verbrauch ist im Betrieb und im Leerlauf gemessen, nicht aus dem Datenblatt übernommen
|
||||
- Die Jahreskosten sind nach der Formel aus Handout H5 nachvollziehbar berechnet
|
||||
- Für jeden Mangel ist eine Maßnahme mit Kosten oder Aufwand vorgeschlagen
|
||||
- Sofort behebbare Mängel (Bildschirmhöhe, Ausrichtung, Energiesparplan) sind mit Einverständnis der Nutzer behoben
|
||||
---
|
||||
|
||||
## Auftrag
|
||||
|
||||
1. **Auswählen:** Drei Arbeitsplätze in verschiedenen Abteilungen, mit dem Einverständnis der
|
||||
Personen, die dort arbeiten.
|
||||
2. **Prüfen:** Checkliste abarbeiten, Maße nehmen, Mängel fotografieren.
|
||||
3. **Fragen:** Haben die Nutzer Beschwerden – Nacken, Augen, Rücken, Handgelenke?
|
||||
4. **Messen:** Mit der Messsteckdose Rechner und Bildschirme im Betrieb und im Leerlauf messen,
|
||||
außerdem nach Feierabend, falls sie nicht ausgeschaltet werden.
|
||||
5. **Rechnen:** Jahreskosten je Arbeitsplatz und hochgerechnet auf alle gleichartigen
|
||||
Arbeitsplätze im Betrieb.
|
||||
6. **Beheben, was sofort geht:** Bildschirm einstellen, Arbeitsplatz drehen, Energiesparplan
|
||||
setzen.
|
||||
7. **Empfehlen:** Was bleibt, mit Maßnahme, Kosten und Nutzen – auf einer Seite.
|
||||
|
||||
## Worauf es ankommt
|
||||
|
||||
Die Messung zählt, nicht das Datenblatt. Ein Rechner, der laut Hersteller 15 Watt im Leerlauf
|
||||
braucht, kann mit einem schlecht eingestellten Energiesparplan das Dreifache aufnehmen. Und:
|
||||
Die Aufgabe ist eine gute Übung für Teil 1 der Abschlussprüfung, in dem Ergonomie und
|
||||
Energiekosten regelmäßig vorkommen.
|
||||
|
||||
## Zeit
|
||||
|
||||
Fünf Stunden. Die Messung nach Feierabend kann über Nacht laufen.
|
||||
@@ -0,0 +1,49 @@
|
||||
---
|
||||
id: "5.1"
|
||||
titel: Den Betrieb aus Sicht der IT kartieren
|
||||
woche: 5
|
||||
block: arbeitsalltag
|
||||
ziel: Du erstellst eine Übersicht aller Abteilungen mit Ansprechpartner, wichtigsten Anwendungen und kritischen Zeiten und legst sie so ab, dass das ganze IT-Team damit arbeiten kann.
|
||||
zeitrahmen: 6 Stunden, verteilt auf zwei Tage
|
||||
rahmenplan: [C2, C5, A1]
|
||||
lernfeld: LF1
|
||||
material:
|
||||
- Aktuelles Organigramm (bei der Personalabteilung oder im Intranet)
|
||||
- Geräteliste und Ticketsystem (lesend)
|
||||
- Zugang zur gemeinsamen Dokumentation der IT
|
||||
kriterien:
|
||||
- Jede Abteilung aus dem Organigramm ist erfasst, keine fehlt
|
||||
- Je Abteilung sind Ansprechpartner, die drei wichtigsten Anwendungen und die kritischen Zeiten benannt
|
||||
- Die Angaben stammen aus Gesprächen mit den Abteilungen, nicht nur aus vorhandenen Unterlagen
|
||||
- Abhängigkeiten zwischen Abteilungen (Datenaustausch, gemeinsame Anwendungen) sind eingezeichnet
|
||||
- Die Übersicht liegt am vereinbarten Ort in der IT-Dokumentation, mit Datum und Verfasser
|
||||
- Mindestens drei Verbesserungsvorschläge aus den Gesprächen sind als Tickets angelegt
|
||||
---
|
||||
|
||||
## Auftrag
|
||||
|
||||
Die IT kennt die Rechner, aber nicht immer die Arbeit, die darauf läuft. Diese Lücke
|
||||
schließt du.
|
||||
|
||||
1. Besorge dir das aktuelle Organigramm und lege für jede Abteilung einen Abschnitt an.
|
||||
2. Vereinbare mit jeder Abteilung ein Gespräch von höchstens 15 Minuten. Stell die Fragen aus
|
||||
der Übersicht im Handout A5 – nicht mehr, sonst wird es ein Verhör.
|
||||
3. Halte fest: Ansprechpartner, die drei wichtigsten Anwendungen, Zeiten, in denen nichts
|
||||
ausfallen darf, und mit wem die Abteilung Daten austauscht.
|
||||
4. Zeichne die Abhängigkeiten ein: Welche Abteilung bekommt Daten von welcher, über welche
|
||||
Anwendung?
|
||||
5. Lege das Ergebnis in der IT-Dokumentation ab. Benenne die Datei nach der Regel aus
|
||||
Handout A6.
|
||||
6. Was dir in den Gesprächen an Beschwerden und Wünschen begegnet, legst du als Ticket an.
|
||||
|
||||
## Worauf es ankommt
|
||||
|
||||
Die Gespräche sind der eigentliche Wert dieser Aufgabe. Eine Übersicht, die nur aus
|
||||
vorhandenen Listen abgeschrieben ist, enthält genau die Fehler, die schon in den Listen
|
||||
stehen. Und: Nach dieser Woche kennen dich die Abteilungen. Das spart dir in drei Jahren
|
||||
Ausbildung viele Erklärungen.
|
||||
|
||||
## Zeit
|
||||
|
||||
Zwei halbe Tage. Wenn eine Abteilung keine Zeit hat, notiere das und frag nach einem
|
||||
Termin in der nächsten Woche – die Aufgabe kann trotzdem zur Abnahme.
|
||||
@@ -0,0 +1,51 @@
|
||||
---
|
||||
id: "6.1"
|
||||
titel: Den Schutzbedarf eines Arbeitsbereichs feststellen
|
||||
woche: 6
|
||||
block: sicherheit
|
||||
ziel: Du stellst für einen Arbeitsbereich des Betriebs den Schutzbedarf der Informationen, Anwendungen und IT-Systeme fest, begründest jede Einstufung und leitest daraus drei konkrete Maßnahmen ab.
|
||||
zeitrahmen: 5 Stunden
|
||||
rahmenplan: [A6, A5, B1]
|
||||
lernfeld: LF4
|
||||
material:
|
||||
- Übersicht der Abteilungen aus Praxisaufgabe 5.1
|
||||
- Geräteliste und Netzplan
|
||||
- Vorlage für die Schutzbedarfsfeststellung (Tabelle beim Ausbilder)
|
||||
- Gesprächstermin mit der Leitung des gewählten Bereichs
|
||||
kriterien:
|
||||
- Die wichtigsten Informationen und Geschäftsabläufe des Bereichs sind erfasst
|
||||
- Für jede Anwendung ist der Schutzbedarf je Schutzziel eingestuft
|
||||
- Jede Einstufung ist mit einem konkreten Schadensszenario begründet
|
||||
- Der Schutzbedarf der IT-Systeme ist nachvollziehbar aus den Anwendungen abgeleitet (Maximumprinzip, ggf. Kumulations- oder Verteilungseffekt)
|
||||
- Drei Maßnahmen sind vorgeschlagen, jeweils mit dem Schutzziel, dem sie dienen
|
||||
- Die Einstufung ist mit der Leitung des Bereichs abgestimmt
|
||||
---
|
||||
|
||||
## Auftrag
|
||||
|
||||
Wähle mit dem Ausbilder einen Arbeitsbereich aus, etwa Personal, Buchhaltung, Lager oder
|
||||
Vertrieb.
|
||||
|
||||
1. **Informationen und Abläufe:** Welche Informationen werden dort verarbeitet, und für
|
||||
welche Abläufe? Nutze dafür deine Gesprächsnotizen aus Aufgabe 5.1.
|
||||
2. **Anwendungen:** Welche Programme und Dienste verarbeiten diese Informationen?
|
||||
3. **Schutzbedarf der Anwendungen:** Stufe jede Anwendung für Vertraulichkeit, Integrität
|
||||
und Verfügbarkeit ein – normal, hoch oder sehr hoch. Begründe mit einem der sechs
|
||||
Schadensszenarien aus Handout I1.
|
||||
4. **IT-Systeme:** Auf welchen Servern, Clients und Verbindungen laufen die Anwendungen?
|
||||
Leite den Schutzbedarf ab und schreib dazu, welches Prinzip du angewandt hast.
|
||||
5. **Abstimmung:** Leg die Einstufung der Leitung des Bereichs vor. Sie kennt die Folgen
|
||||
eines Ausfalls besser als die IT.
|
||||
6. **Maßnahmen:** Schlage drei Maßnahmen vor, die dort ansetzen, wo der Bedarf hoch ist und
|
||||
der Schutz heute nicht reicht.
|
||||
|
||||
## Worauf es ankommt
|
||||
|
||||
Die Begründung ist wichtiger als die Einstufung. „Sehr hoch" ohne Szenario ist wertlos;
|
||||
„hoch, weil ein Ausfall von mehr als einem Tag die Lohnabrechnung verzögert und damit gegen
|
||||
Arbeitsverträge verstößt" ist eine Aussage, mit der man arbeiten kann.
|
||||
|
||||
## Zeit
|
||||
|
||||
Fünf Stunden einschließlich Abstimmungsgespräch. Den Bereich lieber klein wählen und
|
||||
gründlich bearbeiten als groß und oberflächlich.
|
||||
@@ -0,0 +1,50 @@
|
||||
---
|
||||
id: "7.1"
|
||||
titel: Ein Inventarskript schreiben
|
||||
woche: 7
|
||||
block: programmierung
|
||||
ziel: Du schreibst ein PowerShell-Skript, das die wichtigsten Angaben eines Rechners erfasst und an eine gemeinsame CSV-Datei anhängt, und weist an drei Rechnern nach, dass es zuverlässig funktioniert.
|
||||
zeitrahmen: 8 Stunden, verteilt auf zwei Tage
|
||||
rahmenplan: [A10, A4, B3, A5]
|
||||
lernfeld: LF5
|
||||
material:
|
||||
- Drei Testrechner mit Windows, darunter ein Notebook
|
||||
- Eine Netzwerkfreigabe mit Schreibrecht für die CSV-Datei
|
||||
- Zugang zum Git-Repository der IT
|
||||
kriterien:
|
||||
- Das Skript erfasst Rechnername, Hersteller, Modell, Seriennummer, Betriebssystem mit Version, Arbeitsspeicher in GB, freien Platz auf C in GB und den Zeitpunkt des letzten Starts
|
||||
- Der Zielpfad der CSV-Datei ist ein Parameter, kein fester Wert im Code
|
||||
- Ein zweiter Lauf auf demselben Rechner erzeugt keine doppelte Zeile, sondern aktualisiert sie
|
||||
- Ist die Freigabe nicht erreichbar, bricht das Skript mit einer verständlichen Meldung ab
|
||||
- Das Skript hat einen Hilfeblock mit Beschreibung und Beispielaufruf
|
||||
- Die Ergebnisse von drei Rechnern liegen in der CSV-Datei und lassen sich in Excel öffnen
|
||||
- Das Skript liegt mit mindestens drei sinnvoll beschriebenen Commits im Repository
|
||||
---
|
||||
|
||||
## Auftrag
|
||||
|
||||
Die Geräteliste der IT wird von Hand gepflegt und ist deshalb nie ganz aktuell. Dein Skript
|
||||
soll das ändern.
|
||||
|
||||
1. **Angaben finden:** Ermittle mit `Get-CimInstance`, wo die Angaben stecken. Hilfreich
|
||||
sind die Klassen `Win32_ComputerSystem`, `Win32_BIOS`, `Win32_OperatingSystem` und
|
||||
`Win32_LogicalDisk`. Nutze `Get-Member`, um die Eigenschaften zu finden.
|
||||
2. **Ein Objekt bauen:** Fasse alles in einem `[PSCustomObject]` zusammen. Rechne Bytes in
|
||||
Gigabyte um und runde auf eine Nachkommastelle.
|
||||
3. **Ablegen:** Lies die vorhandene CSV-Datei ein, ersetze die Zeile des eigenen Rechners
|
||||
oder hänge eine neue an, und schreib die Datei zurück.
|
||||
4. **Absichern:** Zielpfad als Parameter, Prüfung mit `Test-Path`, Fehlerbehandlung mit
|
||||
`try`/`catch`.
|
||||
5. **Dokumentieren:** Hilfeblock oben im Skript, Commits im Repository.
|
||||
6. **Nachweisen:** Lauf auf drei Rechnern, darunter ein zweiter Lauf auf demselben Rechner.
|
||||
|
||||
## Worauf es ankommt
|
||||
|
||||
Das Aktualisieren statt Anhängen ist der Teil, an dem die meisten hängen bleiben – und genau
|
||||
der Teil, der das Skript im Alltag brauchbar macht. Überleg dir vorher, woran du einen
|
||||
Rechner eindeutig erkennst. Der Rechnername ist es nicht immer; die Seriennummer schon eher.
|
||||
|
||||
## Zeit
|
||||
|
||||
Zwei Tage. Wenn du nach zwei Stunden nicht weißt, wo eine Angabe steckt, frag nach – das
|
||||
Suchen in den Klassen gehört zur Übung, das Verzweifeln daran nicht.
|
||||
@@ -0,0 +1,53 @@
|
||||
---
|
||||
id: "8.1"
|
||||
titel: Die Sicherung eines Bereichs prüfen und zurückspielen
|
||||
woche: 8
|
||||
block: system
|
||||
ziel: Du prüfst, ob die bestehende Datensicherung zum Schutzbedarf eines Arbeitsbereichs passt, spielst eine Sicherung auf eine Testumgebung zurück und vergleichst die gemessene Zeit mit dem, was der Bereich verkraftet.
|
||||
zeitrahmen: 6 Stunden
|
||||
rahmenplan: [A9, A5, A4, A8]
|
||||
lernfeld: LF4
|
||||
material:
|
||||
- Ergebnis der Schutzbedarfsfeststellung aus Praxisaufgabe 6.1
|
||||
- Lesender Zugang zur Sicherungssoftware und ihren Protokollen
|
||||
- Ein Testserver oder eine virtuelle Maschine als Ziel der Wiederherstellung
|
||||
- Checkliste „Wiederherstellung testen"
|
||||
kriterien:
|
||||
- RPO und RTO des Bereichs sind mit der Leitung abgestimmt und schriftlich festgehalten
|
||||
- Die bestehende Sicherung ist beschrieben – Art, Häufigkeit, Aufbewahrung, Speicherorte
|
||||
- Der Abgleich mit der 3-2-1-Regel und mit RPO und RTO ist vollständig, Lücken sind benannt
|
||||
- Die Wiederherstellung wurde auf die Testumgebung durchgeführt, nicht auf das laufende System
|
||||
- Die gemessene Dauer ist dokumentiert und dem RTO gegenübergestellt
|
||||
- Das Ergebnis wurde inhaltlich geprüft, nicht nur die Erfolgsmeldung der Software
|
||||
- Die Testumgebung ist anschließend bereinigt
|
||||
- Für jede gefundene Lücke liegt ein konkreter Verbesserungsvorschlag vor
|
||||
---
|
||||
|
||||
## Auftrag
|
||||
|
||||
Nimm den Bereich, den du in Aufgabe 6.1 untersucht hast. Du kennst seinen Schutzbedarf –
|
||||
jetzt prüfst du, ob die Sicherung dazu passt.
|
||||
|
||||
1. **Anforderungen festhalten:** Wie viel Datenverlust (RPO) und wie viel Ausfallzeit (RTO)
|
||||
verkraftet der Bereich? Stimme beides mit der Leitung ab.
|
||||
2. **Bestand aufnehmen:** Was wird gesichert, wie oft, wie lange aufbewahrt, wohin? Lies dazu
|
||||
Einstellungen und Protokolle der Sicherungssoftware.
|
||||
3. **Abgleichen:** Erfüllt die Sicherung die 3-2-1-Regel? Gibt es eine Kopie, die offline oder
|
||||
unveränderlich ist? Reicht die Häufigkeit für das RPO?
|
||||
4. **Zurückspielen:** Stelle nach der Checkliste die Daten des Bereichs auf der
|
||||
Testumgebung wieder her. Miss die Zeit vom Entschluss bis zur Arbeitsfähigkeit.
|
||||
5. **Prüfen:** Öffne Dateien, starte die Anwendung, vergleiche den Stand mit dem
|
||||
Sicherungszeitpunkt.
|
||||
6. **Bewerten und vorschlagen:** Wo liegen Lücken? Was schlägst du vor?
|
||||
|
||||
## Worauf es ankommt
|
||||
|
||||
Die gemessene Zeit ist das wichtigste Ergebnis. Fast jeder Betrieb schätzt die Dauer einer
|
||||
Wiederherstellung zu niedrig ein, weil er die Suche nach dem richtigen Sicherungsstand, das
|
||||
Bereitstellen der Umgebung und das Prüfen nicht mitrechnet. Wenn deine Messung über dem RTO
|
||||
liegt, ist das kein Misserfolg der Aufgabe – sondern genau der Befund, für den sie da ist.
|
||||
|
||||
## Zeit
|
||||
|
||||
Sechs Stunden. Arbeite in der Testumgebung, und frag vor dem Zurückspielen den Ausbilder,
|
||||
ob Ziel und Umfang stimmen.
|
||||
@@ -0,0 +1,53 @@
|
||||
---
|
||||
id: "9.1"
|
||||
titel: Einen Testserver als virtuelle Maschine bereitstellen
|
||||
woche: 9
|
||||
block: server
|
||||
ziel: Du planst eine virtuelle Maschine für einen Testserver, stellst sie auf dem Testhost bereit, nimmst sie in Sicherung und Dokumentation auf und weist mit einem Snapshot nach, dass du eine Änderung sauber zurücknehmen kannst.
|
||||
zeitrahmen: 6 Stunden
|
||||
rahmenplan: [B1, B3, A5, A8]
|
||||
lernfeld: LF9
|
||||
material:
|
||||
- Zugang zum Testhost (Proxmox VE, Hyper-V oder vergleichbar)
|
||||
- Installationsabbild eines Server-Betriebssystems
|
||||
- Freie IP-Adresse im Testnetz und Zugang zum DNS
|
||||
- Checkliste „Virtuelle Maschine bereitstellen"
|
||||
kriterien:
|
||||
- Ein Planungsblatt mit Zweck, Ressourcen, Festplatten, Netz, Sicherung und Verantwortlichem lag vor dem Anlegen vor
|
||||
- Die zugewiesenen Ressourcen sind begründet und passen zu dem, was der Host hergibt
|
||||
- System und Daten liegen auf getrennten virtuellen Festplatten
|
||||
- Die VM hat eine feste Adresse, einen DNS-Eintrag und einen Namen nach der Namensregel
|
||||
- Gasterweiterungen sind installiert, die VM fährt über den Hypervisor sauber herunter
|
||||
- Die VM ist in die Sicherung aufgenommen, ein erster Sicherungslauf ist erfolgreich
|
||||
- Ein Snapshot wurde vor einer Änderung angelegt, die Änderung zurückgenommen und der Snapshot anschließend gelöscht
|
||||
- Die Dokumentation liegt in der IT-Dokumentation
|
||||
---
|
||||
|
||||
## Auftrag
|
||||
|
||||
Die Ausbildung braucht einen eigenen Testserver, auf dem in den nächsten Wochen
|
||||
Verzeichnisdienst und Freigaben geübt werden. Du stellst ihn bereit.
|
||||
|
||||
1. **Planen:** Fülle das Planungsblatt nach Handout V3 aus und lass es dir vom Ausbilder
|
||||
freigeben, bevor du etwas anlegst.
|
||||
2. **Prüfen:** Hat der Testhost genug freien Arbeitsspeicher und Speicherplatz?
|
||||
3. **Anlegen und installieren:** VM nach Plan anlegen, Betriebssystem installieren,
|
||||
Gasterweiterungen und Updates einspielen.
|
||||
4. **Einbinden:** feste Adresse, DNS-Eintrag, Name nach Regel.
|
||||
5. **Absichern:** VM in die Sicherung aufnehmen und einen ersten Lauf abwarten.
|
||||
6. **Rückweg üben:** Snapshot anlegen, eine Änderung vornehmen (etwa eine Rolle
|
||||
installieren), auf den Snapshot zurücksetzen, prüfen, dass die Änderung weg ist, und den
|
||||
Snapshot löschen.
|
||||
7. **Dokumentieren:** Planungsblatt mit den tatsächlichen Werten in der IT-Dokumentation
|
||||
ablegen.
|
||||
|
||||
## Worauf es ankommt
|
||||
|
||||
Das Planungsblatt vor dem Anlegen ist kein Formular, sondern der Kern der Aufgabe. Eine VM
|
||||
ohne Plan funktioniert genauso – bis jemand in einem Jahr fragt, wofür sie da ist und ob man
|
||||
sie abschalten kann.
|
||||
|
||||
## Zeit
|
||||
|
||||
Sechs Stunden einschließlich Installation. Die Wartezeiten bei Installation und Updates
|
||||
nutzt du für die Dokumentation.
|
||||
@@ -0,0 +1,54 @@
|
||||
id: 05-arbeitsplatz-sicherheit-pruefen
|
||||
titel: Sicherheit eines Arbeitsplatzes prüfen
|
||||
block: sicherheit
|
||||
worum: >-
|
||||
Ein Rundgang mit der Liste in der Hand findet mehr als jede Richtlinie. Geprüft
|
||||
wird, was tatsächlich eingestellt ist – nicht, was eingestellt sein sollte.
|
||||
rahmenplan: [A6, A5]
|
||||
lernfeld: LF4
|
||||
mit_ticket: false
|
||||
|
||||
gruppen:
|
||||
- id: vorbereiten
|
||||
titel: Vorbereiten
|
||||
schritte:
|
||||
- id: v1
|
||||
text: Arbeitsplatz und Nutzer mit Termin angekündigt, Zweck der Prüfung erklärt
|
||||
- id: v2
|
||||
text: Gerät in der Geräteliste nachgeschlagen, Soll-Zustand (Betriebssystem, Verschlüsselung, Schutzsoftware) notiert
|
||||
|
||||
- id: durchfuehren
|
||||
titel: Durchführen
|
||||
schritte:
|
||||
- id: d1
|
||||
text: Bildschirmsperre greift nach spätestens 10 Minuten, Sperren mit Windows-Taste + L ist bekannt
|
||||
- id: d2
|
||||
text: Betriebssystem und Anwendungen auf aktuellem Stand, keine ausstehenden Neustarts für Updates
|
||||
- id: d3
|
||||
text: Schutzsoftware aktiv, Signaturen aktuell, letzte vollständige Prüfung ohne Befund
|
||||
- id: d4
|
||||
text: Festplattenverschlüsselung aktiv (bei Notebooks Pflicht), Wiederherstellungsschlüssel zentral hinterlegt
|
||||
- id: d5
|
||||
text: Der Nutzer arbeitet ohne lokale Administratorrechte
|
||||
- id: d6
|
||||
text: Keine Passwörter auf Zetteln, unter der Tastatur oder in Textdateien auf dem Desktop
|
||||
- id: d7
|
||||
text: Zweiter Faktor für E-Mail und Fernzugang eingerichtet
|
||||
- id: d8
|
||||
text: Keine vertraulichen Ausdrucke offen am Platz oder im Drucker liegen gelassen
|
||||
|
||||
- id: pruefen
|
||||
titel: Prüfen
|
||||
schritte:
|
||||
- id: p1
|
||||
text: Abweichungen vom Soll-Zustand vollständig notiert, je mit Befund und Risiko
|
||||
- id: p2
|
||||
text: Mit dem Nutzer kurz besprochen, was gefunden wurde – ohne Vorwurf
|
||||
|
||||
- id: abschliessen
|
||||
titel: Abschließen
|
||||
schritte:
|
||||
- id: a1
|
||||
text: Für jede Abweichung ein Ticket angelegt oder die Abweichung sofort behoben und dokumentiert
|
||||
- id: a2
|
||||
text: Wiederkehrende Abweichungen an den Ausbilder gemeldet – sie deuten auf eine fehlende Regel hin
|
||||
@@ -0,0 +1,60 @@
|
||||
id: 06-wiederherstellung-testen
|
||||
titel: Wiederherstellung testen
|
||||
block: system
|
||||
worum: >-
|
||||
Der Test findet auf einer Testumgebung statt, wird gemessen und inhaltlich
|
||||
geprüft. Die Erfolgsmeldung der Sicherungssoftware ist kein Ergebnis.
|
||||
rahmenplan: [A9, A5]
|
||||
lernfeld: LF4
|
||||
mit_ticket: true
|
||||
|
||||
gruppen:
|
||||
- id: vorbereiten
|
||||
titel: Vorbereiten
|
||||
schritte:
|
||||
- id: v1
|
||||
text: Umfang des Tests festgelegt (Datei, Ordner, Anwendung oder ganzes System)
|
||||
- id: v2
|
||||
text: RPO und RTO des betroffenen Bereichs nachgeschlagen
|
||||
- id: v3
|
||||
text: Testumgebung bereitgestellt und vom Produktivnetz getrennt
|
||||
- id: v4
|
||||
text: Sicherungsstand gewählt und notiert (Datum, Uhrzeit, Art der Sicherung)
|
||||
|
||||
- id: durchfuehren
|
||||
titel: Durchführen
|
||||
schritte:
|
||||
- id: d1
|
||||
text: Startzeit notiert
|
||||
- id: d2
|
||||
text: Wiederherstellung auf die Testumgebung gestartet – nicht auf das laufende System
|
||||
- id: d3
|
||||
text: Auftretende Meldungen und Wartezeiten mitgeschrieben
|
||||
- id: d4
|
||||
text: Endzeit notiert, sobald mit den Daten gearbeitet werden kann
|
||||
|
||||
- id: pruefen
|
||||
titel: Prüfen
|
||||
schritte:
|
||||
- id: p1
|
||||
text: Stichprobe von mindestens fünf Dateien geöffnet, Inhalt lesbar
|
||||
- id: p2
|
||||
text: Stand entspricht dem gewählten Sicherungszeitpunkt
|
||||
- id: p3
|
||||
text: Berechtigungen sind mit zurückgekommen
|
||||
- id: p4
|
||||
text: Anwendung startet und arbeitet mit den zurückgespielten Daten (falls Teil des Tests)
|
||||
- id: p5
|
||||
text: Gemessene Dauer dem RTO gegenübergestellt
|
||||
|
||||
- id: abschliessen
|
||||
titel: Abschließen
|
||||
schritte:
|
||||
- id: a1
|
||||
text: Testprotokoll mit Datum, Umfang, Sicherungsstand, Dauer und Ergebnis abgelegt
|
||||
- id: a2
|
||||
text: Testumgebung bereinigt, zurückgespielte Daten gelöscht
|
||||
- id: a3
|
||||
text: Abweichungen und Auffälligkeiten als Tickets angelegt
|
||||
- id: a4
|
||||
text: Datum des nächsten Tests festgelegt
|
||||
@@ -0,0 +1,60 @@
|
||||
id: 07-vm-bereitstellen
|
||||
titel: Virtuelle Maschine bereitstellen
|
||||
block: server
|
||||
worum: >-
|
||||
Vom Planungsblatt bis zur VM in Sicherung und Überwachung. Die Schritte nach
|
||||
der Installation sind die, die sonst fehlen.
|
||||
rahmenplan: [B1, B3, A5]
|
||||
lernfeld: LF9
|
||||
mit_ticket: true
|
||||
|
||||
gruppen:
|
||||
- id: vorbereiten
|
||||
titel: Vorbereiten
|
||||
schritte:
|
||||
- id: v1
|
||||
text: Zweck und Verantwortlicher der VM schriftlich festgehalten
|
||||
- id: v2
|
||||
text: Ressourcen, Festplatten, Netz bzw. VLAN und IP-Adresse geplant
|
||||
- id: v3
|
||||
text: Geprüft, dass der Host Arbeitsspeicher und Speicherplatz hergibt
|
||||
- id: v4
|
||||
text: Name nach Namensregel vergeben, IP-Adresse reserviert
|
||||
|
||||
- id: durchfuehren
|
||||
titel: Durchführen
|
||||
schritte:
|
||||
- id: d1
|
||||
text: VM angelegt, System- und Datenfestplatte getrennt
|
||||
- id: d2
|
||||
text: Betriebssystem installiert, Gasterweiterungen eingerichtet
|
||||
- id: d3
|
||||
text: Alle verfügbaren Updates eingespielt
|
||||
- id: d4
|
||||
text: Feste IP-Adresse gesetzt, DNS-Eintrag angelegt
|
||||
- id: d5
|
||||
text: Lokales Administratorkennwort nach Vorgabe gesetzt und im Passwortmanager abgelegt
|
||||
|
||||
- id: pruefen
|
||||
titel: Prüfen
|
||||
schritte:
|
||||
- id: p1
|
||||
text: VM über den Namen erreichbar
|
||||
- id: p2
|
||||
text: Herunterfahren über den Hypervisor funktioniert sauber
|
||||
- id: p3
|
||||
text: VM in die Sicherung aufgenommen, erster Lauf erfolgreich
|
||||
- id: p4
|
||||
text: VM in die Überwachung aufgenommen (Erreichbarkeit, Speicherplatz)
|
||||
- id: p5
|
||||
text: Keine Snapshots aus der Einrichtung übrig geblieben
|
||||
|
||||
- id: abschliessen
|
||||
titel: Abschließen
|
||||
schritte:
|
||||
- id: a1
|
||||
text: Planungsblatt mit den tatsächlichen Werten in der IT-Dokumentation abgelegt
|
||||
- id: a2
|
||||
text: VM an den Verantwortlichen übergeben
|
||||
- id: a3
|
||||
text: Ticket geschlossen mit Name, Adresse und tatsächlichem Aufwand
|
||||
@@ -0,0 +1,56 @@
|
||||
id: 08-mitarbeiter-einrichten
|
||||
titel: Neuen Mitarbeiter einrichten
|
||||
block: server
|
||||
worum: >-
|
||||
Rechte kommen aus der Rolle, nicht aus dem Konto eines Kollegen. Und das
|
||||
Erstpasswort wird persönlich übergeben, nie per Mail an den Vorgesetzten.
|
||||
rahmenplan: [B3, A6, A7]
|
||||
lernfeld: LF10
|
||||
mit_ticket: true
|
||||
|
||||
gruppen:
|
||||
- id: vorbereiten
|
||||
titel: Vorbereiten
|
||||
schritte:
|
||||
- id: v1
|
||||
text: Meldung der Personalabteilung liegt vor – Name, Eintrittsdatum, Abteilung, Funktion
|
||||
- id: v2
|
||||
text: Benötigte Rollen und Zugänge von der Führungskraft schriftlich angefordert
|
||||
- id: v3
|
||||
text: Gerät reserviert und nach Checkliste vorbereitet
|
||||
|
||||
- id: durchfuehren
|
||||
titel: Durchführen
|
||||
schritte:
|
||||
- id: d1
|
||||
text: Konto nach Namensregel in der OU der Abteilung angelegt – nicht von einem Kollegen kopiert
|
||||
- id: d2
|
||||
text: Konto in die globalen Gruppen der Rolle aufgenommen, keine Einzelberechtigungen
|
||||
- id: d3
|
||||
text: Postfach und Verteilerlisten eingerichtet
|
||||
- id: d4
|
||||
text: Fachanwendungen freigeschaltet, soweit angefordert
|
||||
- id: d5
|
||||
text: Erstpasswort gesetzt, Änderung bei der ersten Anmeldung erzwungen
|
||||
- id: d6
|
||||
text: Gerät in der Geräteliste der Person zugeordnet
|
||||
|
||||
- id: pruefen
|
||||
titel: Prüfen
|
||||
schritte:
|
||||
- id: p1
|
||||
text: Anmeldung am vorgesehenen Gerät funktioniert
|
||||
- id: p2
|
||||
text: Laufwerke und Drucker der Abteilung kommen per Richtlinie an
|
||||
- id: p3
|
||||
text: Zugriff auf eine Ablage, die nicht zur Rolle gehört, wird abgewiesen
|
||||
|
||||
- id: abschliessen
|
||||
titel: Abschließen
|
||||
schritte:
|
||||
- id: a1
|
||||
text: Erstpasswort persönlich übergeben, zweiten Faktor gemeinsam eingerichtet
|
||||
- id: a2
|
||||
text: Kurze Einweisung – Anmelden, Sperren, Ablage, Drucken, wie man ein Ticket aufgibt
|
||||
- id: a3
|
||||
text: Ticket geschlossen mit Gruppen, Gerät und tatsächlichem Aufwand
|
||||
@@ -0,0 +1,54 @@
|
||||
id: 09-auftrag-abnehmen-lassen
|
||||
titel: Auftrag übergeben und abnehmen lassen
|
||||
block: arbeitsalltag
|
||||
worum: >-
|
||||
Die Abnahme ist der Moment, in dem aus „fertig" ein nachweisbares „erledigt"
|
||||
wird. Was hier nicht im Protokoll steht, ist später Verhandlungssache.
|
||||
rahmenplan: [A7, A5, A2]
|
||||
lernfeld: LF6
|
||||
mit_ticket: true
|
||||
|
||||
gruppen:
|
||||
- id: vorbereiten
|
||||
titel: Vorbereiten
|
||||
schritte:
|
||||
- id: v1
|
||||
text: Alle Anforderungen aus dem Pflichtenheft einzeln selbst geprüft und abgehakt
|
||||
- id: v2
|
||||
text: Dokumentation für den Kunden fertig – Zugangsdaten getrennt übergeben
|
||||
- id: v3
|
||||
text: Termin mit der Person vereinbart, die abnehmen darf
|
||||
- id: v4
|
||||
text: Abnahmeprotokoll mit den Abnahmekriterien aus dem Pflichtenheft vorbereitet
|
||||
|
||||
- id: durchfuehren
|
||||
titel: Durchführen
|
||||
schritte:
|
||||
- id: d1
|
||||
text: Jedes Abnahmekriterium gemeinsam mit dem Kunden vorgeführt und geprüft
|
||||
- id: d2
|
||||
text: Gefundene Mängel mit Beschreibung und vereinbarter Frist ins Protokoll eingetragen
|
||||
- id: d3
|
||||
text: Kunde bzw. Anwender eingewiesen
|
||||
- id: d4
|
||||
text: Dokumentation übergeben
|
||||
|
||||
- id: pruefen
|
||||
titel: Prüfen
|
||||
schritte:
|
||||
- id: p1
|
||||
text: Protokoll vollständig – Datum, Teilnehmer, Ergebnis je Kriterium, Restmängel
|
||||
- id: p2
|
||||
text: Protokoll von beiden Seiten unterschrieben
|
||||
|
||||
- id: abschliessen
|
||||
titel: Abschließen
|
||||
schritte:
|
||||
- id: a1
|
||||
text: Leistungsnachweis mit tatsächlichem Aufwand an die Abrechnung gegeben
|
||||
- id: a2
|
||||
text: Restmängel als Tickets mit Frist angelegt
|
||||
- id: a3
|
||||
text: Abnahmeprotokoll beim Auftrag abgelegt
|
||||
- id: a4
|
||||
text: Rückmeldung des Kunden eingeholt und notiert
|
||||
@@ -0,0 +1,60 @@
|
||||
id: 10-linux-server-einrichten
|
||||
titel: Linux-Server grundlegend einrichten
|
||||
block: system
|
||||
worum: >-
|
||||
Die Reihenfolge schützt vor dem Aussperren: erst der Benutzer, dann der
|
||||
Schlüssel, dann testen, dann erst die Passwort-Anmeldung abschalten.
|
||||
rahmenplan: [B3, A6]
|
||||
lernfeld: LF9
|
||||
mit_ticket: true
|
||||
|
||||
gruppen:
|
||||
- id: vorbereiten
|
||||
titel: Vorbereiten
|
||||
schritte:
|
||||
- id: v1
|
||||
text: Zweck, Name, IP-Adresse und Verantwortlicher festgelegt
|
||||
- id: v2
|
||||
text: Konsolenzugang über den Hypervisor geprüft – der Notausgang, falls SSH nicht mehr geht
|
||||
|
||||
- id: durchfuehren
|
||||
titel: Durchführen
|
||||
schritte:
|
||||
- id: d1
|
||||
text: Grundsystem mit SSH-Server installiert, nichts Unnötiges ausgewählt
|
||||
- id: d2
|
||||
text: Alle Updates eingespielt, automatische Sicherheitsupdates eingerichtet
|
||||
- id: d3
|
||||
text: Persönlicher Benutzer angelegt und in die Gruppe sudo aufgenommen
|
||||
- id: d4
|
||||
text: Öffentlicher SSH-Schlüssel hinterlegt, Anmeldung mit Schlüssel getestet
|
||||
- id: d5
|
||||
text: In sshd_config root-Anmeldung und Passwort-Anmeldung abgeschaltet, Dienst neu geladen
|
||||
- id: d6
|
||||
text: In einer zweiten Sitzung erfolgreich angemeldet, bevor die erste geschlossen wurde
|
||||
- id: d7
|
||||
text: Firewall eingerichtet, nur benötigte Dienste freigegeben
|
||||
- id: d8
|
||||
text: Zeitzone und Zeitsynchronisation geprüft
|
||||
|
||||
- id: pruefen
|
||||
titel: Prüfen
|
||||
schritte:
|
||||
- id: p1
|
||||
text: Anmeldung als root per SSH schlägt fehl
|
||||
- id: p2
|
||||
text: Anmeldung per Passwort schlägt fehl
|
||||
- id: p3
|
||||
text: ss -tlnp zeigt nur die erwarteten Dienste
|
||||
- id: p4
|
||||
text: Nach einem Neustart laufen alle Dienste wieder
|
||||
|
||||
- id: abschliessen
|
||||
titel: Abschließen
|
||||
schritte:
|
||||
- id: a1
|
||||
text: Server in Sicherung und Überwachung aufgenommen
|
||||
- id: a2
|
||||
text: Dokumentation mit Name, Adresse, Diensten und Zugängen abgelegt
|
||||
- id: a3
|
||||
text: Ticket geschlossen mit tatsächlichem Aufwand
|
||||
@@ -0,0 +1,57 @@
|
||||
id: 11-aenderung-durchfuehren
|
||||
titel: Änderung planen und durchführen
|
||||
block: arbeitsalltag
|
||||
worum: >-
|
||||
Jede Änderung an einem laufenden System ist ein Risiko. Die Liste sorgt
|
||||
dafür, dass vorher feststeht, wie man zurückkommt – nicht erst, wenn es
|
||||
nötig wird.
|
||||
rahmenplan: [A5, A8, A1]
|
||||
lernfeld: LF6
|
||||
mit_ticket: true
|
||||
|
||||
gruppen:
|
||||
- id: vorbereiten
|
||||
titel: Vorbereiten
|
||||
schritte:
|
||||
- id: v1
|
||||
text: Änderung beschrieben – was, warum, welche Systeme und Nutzer betroffen sind
|
||||
- id: v2
|
||||
text: Risiko eingeschätzt und Art der Änderung festgelegt (Standard, normal, Notfall)
|
||||
- id: v3
|
||||
text: Rückweg geplant und, wo möglich, vorher getestet
|
||||
- id: v4
|
||||
text: Aktuelle Sicherung oder Snapshot der betroffenen Systeme vorhanden
|
||||
- id: v5
|
||||
text: Freigabe durch die zuständige Person eingeholt
|
||||
- id: v6
|
||||
text: Zeitpunkt festgelegt und den Betroffenen angekündigt
|
||||
|
||||
- id: durchfuehren
|
||||
titel: Durchführen
|
||||
schritte:
|
||||
- id: d1
|
||||
text: Änderung nach Plan umgesetzt, Abweichungen sofort notiert
|
||||
- id: d2
|
||||
text: Bei unerwartetem Verhalten nach festgelegter Zeit abgebrochen und Rückweg genutzt
|
||||
|
||||
- id: pruefen
|
||||
titel: Prüfen
|
||||
schritte:
|
||||
- id: p1
|
||||
text: Ziel der Änderung erreicht und nachgewiesen
|
||||
- id: p2
|
||||
text: Betroffene Dienste funktionieren, Stichprobe bei einem Nutzer
|
||||
- id: p3
|
||||
text: Überwachung zeigt keine neuen Auffälligkeiten
|
||||
|
||||
- id: abschliessen
|
||||
titel: Abschließen
|
||||
schritte:
|
||||
- id: a1
|
||||
text: Dokumentation und Netzplan bzw. Konfigurationsübersicht aktualisiert
|
||||
- id: a2
|
||||
text: Snapshots aus der Änderung entfernt
|
||||
- id: a3
|
||||
text: Abschluss den Betroffenen mitgeteilt
|
||||
- id: a4
|
||||
text: Ticket geschlossen mit Ergebnis, Abweichungen und tatsächlichem Aufwand
|
||||
@@ -0,0 +1,61 @@
|
||||
id: 12-bildschirmarbeitsplatz-pruefen
|
||||
titel: Bildschirmarbeitsplatz prüfen
|
||||
block: hardware
|
||||
worum: >-
|
||||
Gemessen wird an der Person, die dort arbeitet, nicht am Möbelkatalog. Erst
|
||||
einstellen lassen, dann prüfen – viele Mängel sind nur falsch eingestellte
|
||||
Möbel.
|
||||
rahmenplan: [C3, C4]
|
||||
lernfeld: LF2
|
||||
mit_ticket: false
|
||||
|
||||
gruppen:
|
||||
- id: vorbereiten
|
||||
titel: Vorbereiten
|
||||
schritte:
|
||||
- id: v1
|
||||
text: Termin mit der Person vereinbart, die dort arbeitet, und Zweck erklärt
|
||||
- id: v2
|
||||
text: Nach Beschwerden gefragt – Nacken, Augen, Rücken, Handgelenke
|
||||
|
||||
- id: durchfuehren
|
||||
titel: Durchführen
|
||||
schritte:
|
||||
- id: d1
|
||||
text: Oberste Bildschirmzeile auf oder knapp unter Augenhöhe
|
||||
- id: d2
|
||||
text: Abstand zum Bildschirm etwa eine Armlänge
|
||||
- id: d3
|
||||
text: Blickrichtung parallel zum Fenster, keine Spiegelungen oder Blendung
|
||||
- id: d4
|
||||
text: Hauptbildschirm direkt vor dem Körper, zwei Bildschirme gleich hoch
|
||||
- id: d5
|
||||
text: Füße flach auf dem Boden, Oberschenkel etwa waagerecht
|
||||
- id: d6
|
||||
text: Unterarme bei lockeren Schultern etwa waagerecht auf Tischhöhe
|
||||
- id: d7
|
||||
text: Tastatur und Maus vor dem Körper, Maus direkt neben der Tastatur
|
||||
- id: d8
|
||||
text: Notebook nur mit externem Bildschirm, Tastatur und Maus im Dauerbetrieb
|
||||
- id: d9
|
||||
text: Energiesparplan aktiv, Bildschirm schaltet bei Abwesenheit ab
|
||||
- id: d10
|
||||
text: Kabel geordnet, keine Stolperfallen, keine Mehrfachsteckdosen hintereinander
|
||||
|
||||
- id: pruefen
|
||||
titel: Prüfen
|
||||
schritte:
|
||||
- id: p1
|
||||
text: Mängel mit Foto oder Maß belegt
|
||||
- id: p2
|
||||
text: Mit der Person besprochen, ob die Einstellungen nach der Änderung angenehm sind
|
||||
|
||||
- id: abschliessen
|
||||
titel: Abschließen
|
||||
schritte:
|
||||
- id: a1
|
||||
text: Sofort behebbare Mängel behoben
|
||||
- id: a2
|
||||
text: Bleibende Mängel mit Vorschlag an die zuständige Stelle gemeldet
|
||||
- id: a3
|
||||
text: Auf die Angebotsvorsorge für die Augen hingewiesen, falls Beschwerden bestehen
|
||||
@@ -182,3 +182,496 @@
|
||||
SSDs durch Schreibvorgänge – die Kennzahlen für den Zustand sind deshalb
|
||||
unterschiedlich.
|
||||
siehe_auch: [SMART]
|
||||
|
||||
# --- Woche 5: Ausbildung, Betrieb, Zusammenarbeit -------------------------
|
||||
|
||||
- begriff: Probezeit
|
||||
erklaerung: >-
|
||||
Der erste Abschnitt der Ausbildung, mindestens einen und höchstens vier
|
||||
Monate lang. In dieser Zeit können beide Seiten jederzeit ohne Frist und ohne
|
||||
Angabe von Gründen kündigen, schriftlich.
|
||||
|
||||
- begriff: Ausbildungsnachweis
|
||||
formen: [Berichtsheft, Ausbildungsnachweise, Ausbildungsnachweises]
|
||||
erklaerung: >-
|
||||
Die schriftliche oder elektronische Aufzeichnung dessen, was in der
|
||||
Ausbildung tatsächlich gelernt und getan wurde. Ein ordnungsgemäß geführter
|
||||
Nachweis ist Voraussetzung für die Zulassung zur Abschlussprüfung.
|
||||
|
||||
- begriff: Organigramm
|
||||
erklaerung: >-
|
||||
Die zeichnerische Darstellung der Aufbauorganisation eines Betriebs:
|
||||
Abteilungen, Stellen und wer wem gegenüber weisungsbefugt ist.
|
||||
|
||||
- begriff: Betriebsrat
|
||||
erklaerung: >-
|
||||
Die gewählte Vertretung der Beschäftigten. Er hat unter anderem ein
|
||||
Mitbestimmungsrecht, wenn technische Einrichtungen eingeführt werden, die
|
||||
Verhalten oder Leistung überwachen können – also bei vielen IT-Projekten.
|
||||
siehe_auch: [Jugend- und Auszubildendenvertretung]
|
||||
|
||||
- begriff: Jugend- und Auszubildendenvertretung
|
||||
steht_fuer: JAV
|
||||
formen: [JAV]
|
||||
erklaerung: >-
|
||||
Die Interessenvertretung der Beschäftigten unter 18 und der Auszubildenden
|
||||
unter 25. Sie kann gewählt werden, wo es einen Betriebsrat und in der Regel
|
||||
mindestens fünf solcher Beschäftigten gibt.
|
||||
siehe_auch: [Betriebsrat]
|
||||
|
||||
# --- Woche 6: IT-Sicherheit und Datenschutz -------------------------------
|
||||
|
||||
- begriff: Schutzziele
|
||||
formen: [Schutzziel, Schutzzielen]
|
||||
erklaerung: >-
|
||||
Die drei Grundwerte der Informationssicherheit: Vertraulichkeit (nur Befugte
|
||||
sehen die Daten), Integrität (die Daten sind unverfälscht) und Verfügbarkeit
|
||||
(sie stehen bereit, wenn sie gebraucht werden).
|
||||
siehe_auch: [Schutzbedarf]
|
||||
|
||||
- begriff: Schutzbedarf
|
||||
formen: [Schutzbedarfs, Schutzbedarfsfeststellung]
|
||||
erklaerung: >-
|
||||
Wie viel Schutz eine Information oder ein System braucht – gemessen am
|
||||
Schaden, der entstünde, wenn ein Schutzziel verletzt würde. Der
|
||||
IT-Grundschutz des BSI unterscheidet normal, hoch und sehr hoch.
|
||||
siehe_auch: [Schutzziele, Maximumprinzip]
|
||||
|
||||
- begriff: Maximumprinzip
|
||||
erklaerung: >-
|
||||
Ein IT-System übernimmt den höchsten Schutzbedarf aller Anwendungen, die auf
|
||||
ihm laufen. Eine einzige Anwendung mit sehr hohem Bedarf hebt also das ganze
|
||||
System an.
|
||||
siehe_auch: [Schutzbedarf]
|
||||
|
||||
- begriff: Phishing
|
||||
formen: [Phishing-Mail, Phishing-Mails]
|
||||
erklaerung: >-
|
||||
Gefälschte Nachrichten oder Webseiten, die zur Eingabe von Zugangsdaten oder
|
||||
zu einer Zahlung verleiten sollen. Erkennungszeichen sind Zeitdruck, ein
|
||||
unpassender Absender und ein Link, dessen Ziel nicht zum Absender passt.
|
||||
|
||||
- begriff: Zwei-Faktor-Authentifizierung
|
||||
steht_fuer: 2FA
|
||||
formen: [2FA, MFA, zweiter Faktor, zweiten Faktor]
|
||||
erklaerung: >-
|
||||
Eine Anmeldung, die neben dem Passwort einen zweiten, unabhängigen Nachweis
|
||||
verlangt – etwa einen Code aus einer App oder einen Sicherheitsschlüssel. Ein
|
||||
gestohlenes Passwort allein genügt dann nicht mehr.
|
||||
|
||||
- begriff: DSGVO
|
||||
steht_fuer: Datenschutz-Grundverordnung
|
||||
formen: [Datenschutz-Grundverordnung]
|
||||
erklaerung: >-
|
||||
Die europäische Verordnung, die regelt, wie personenbezogene Daten erhoben,
|
||||
verarbeitet und geschützt werden müssen. Sie gilt unmittelbar in allen
|
||||
Mitgliedstaaten.
|
||||
siehe_auch: [personenbezogene Daten]
|
||||
|
||||
- begriff: personenbezogene Daten
|
||||
formen: [personenbezogener Daten, personenbezogenen Daten]
|
||||
erklaerung: >-
|
||||
Alle Angaben, die sich einer bestimmten oder bestimmbaren Person zuordnen
|
||||
lassen – Name, E-Mail-Adresse, Personalnummer, aber auch eine IP-Adresse oder
|
||||
ein Foto.
|
||||
siehe_auch: [DSGVO]
|
||||
|
||||
# --- Woche 7: Skripting mit PowerShell ------------------------------------
|
||||
|
||||
- begriff: Cmdlet
|
||||
formen: [Cmdlets]
|
||||
erklaerung: >-
|
||||
Ein eingebauter PowerShell-Befehl. Cmdlets heißen immer nach dem Muster
|
||||
Verb-Substantiv, etwa Get-Service, und liefern Objekte statt Text.
|
||||
siehe_auch: [Pipeline]
|
||||
|
||||
- begriff: Pipeline
|
||||
erklaerung: >-
|
||||
Die Verkettung von Befehlen mit dem senkrechten Strich. In PowerShell wandern
|
||||
dabei Objekte von Befehl zu Befehl, die sich nach ihren Eigenschaften filtern,
|
||||
sortieren und auswählen lassen.
|
||||
siehe_auch: [Cmdlet]
|
||||
|
||||
# --- Woche 8: Datensicherung und Speicher ---------------------------------
|
||||
|
||||
- begriff: Vollsicherung
|
||||
formen: [Vollsicherungen]
|
||||
erklaerung: >-
|
||||
Eine Sicherung aller ausgewählten Daten, unabhängig davon, ob sie sich
|
||||
geändert haben. Grundlage für inkrementelle und differenzielle Sicherungen.
|
||||
siehe_auch: [inkrementelle Sicherung, differenzielle Sicherung]
|
||||
|
||||
- begriff: inkrementelle Sicherung
|
||||
formen: [inkrementellen Sicherung, inkrementellen Sicherungen, inkrementell]
|
||||
erklaerung: >-
|
||||
Sichert nur, was sich seit der letzten Sicherung gleich welcher Art geändert
|
||||
hat. Schnell und platzsparend; zum Zurückspielen braucht man die
|
||||
Vollsicherung und alle inkrementellen Sicherungen seitdem.
|
||||
siehe_auch: [Vollsicherung, differenzielle Sicherung]
|
||||
|
||||
- begriff: differenzielle Sicherung
|
||||
formen: [differenziellen Sicherung, differenziellen Sicherungen, differenziell]
|
||||
erklaerung: >-
|
||||
Sichert alles, was sich seit der letzten Vollsicherung geändert hat. Wächst
|
||||
bis zur nächsten Vollsicherung; zum Zurückspielen genügen die Vollsicherung
|
||||
und die letzte differenzielle Sicherung.
|
||||
siehe_auch: [Vollsicherung, inkrementelle Sicherung]
|
||||
|
||||
- begriff: RPO
|
||||
steht_fuer: Recovery Point Objective
|
||||
erklaerung: >-
|
||||
Der größte Datenverlust, den ein Bereich verkraftet, gemessen in Zeit. Ein
|
||||
RPO von vier Stunden heißt: Es muss mindestens alle vier Stunden gesichert
|
||||
werden.
|
||||
siehe_auch: [RTO]
|
||||
|
||||
- begriff: RTO
|
||||
steht_fuer: Recovery Time Objective
|
||||
erklaerung: >-
|
||||
Die größte Ausfallzeit, die ein Bereich verkraftet, bis nach einem Schaden
|
||||
wieder gearbeitet werden kann. Ob sie eingehalten wird, zeigt nur ein
|
||||
gemessener Wiederherstellungstest.
|
||||
siehe_auch: [RPO]
|
||||
|
||||
- begriff: RAID
|
||||
steht_fuer: Redundant Array of Independent Disks
|
||||
erklaerung: >-
|
||||
Ein Verbund mehrerer Festplatten, der je nach Stufe schneller ist oder den
|
||||
Ausfall einzelner Platten übersteht. Ein RAID schützt nicht vor Löschen,
|
||||
Verschlüsselung oder Beschädigung von Dateien – es ist keine Datensicherung.
|
||||
|
||||
- begriff: NAS
|
||||
steht_fuer: Network Attached Storage
|
||||
erklaerung: >-
|
||||
Ein Speichergerät im Netzwerk, das Dateien über Freigaben bereitstellt, etwa
|
||||
per SMB oder NFS.
|
||||
siehe_auch: [SAN, RAID]
|
||||
|
||||
- begriff: SAN
|
||||
steht_fuer: Storage Area Network
|
||||
erklaerung: >-
|
||||
Ein Speichernetz, das Servern Speicherblöcke bereitstellt, etwa per iSCSI.
|
||||
Der Server sieht eine Festplatte und legt selbst ein Dateisystem darauf an.
|
||||
siehe_auch: [NAS]
|
||||
|
||||
# --- Woche 9: Virtualisierung ----------------------------------------------
|
||||
|
||||
- begriff: Hypervisor
|
||||
formen: [Hypervisoren, Hypervisors]
|
||||
erklaerung: >-
|
||||
Die Software, die einen physischen Rechner in mehrere virtuelle Maschinen
|
||||
aufteilt. Typ 1 läuft direkt auf der Hardware (für Server), Typ 2 als
|
||||
Programm auf einem Betriebssystem (für Tests am Arbeitsplatz).
|
||||
siehe_auch: [virtuelle Maschine]
|
||||
|
||||
- begriff: virtuelle Maschine
|
||||
steht_fuer: VM
|
||||
formen: [virtuellen Maschine, virtuelle Maschinen, virtuellen Maschinen, VM, VMs]
|
||||
erklaerung: >-
|
||||
Ein vollständiger Rechner mit eigenem Betriebssystem, der nicht auf eigener
|
||||
Hardware läuft, sondern sich die Ressourcen eines Hosts mit anderen VMs teilt.
|
||||
siehe_auch: [Hypervisor, Snapshot]
|
||||
|
||||
- begriff: Snapshot
|
||||
formen: [Snapshots]
|
||||
erklaerung: >-
|
||||
Ein eingefrorener Zustand einer virtuellen Maschine, zu dem man zurückkehren
|
||||
kann. Gut als Rückweg für Stunden vor einer Änderung, aber keine
|
||||
Datensicherung – er liegt auf demselben Speicher und wird mit der Zeit groß
|
||||
und langsam.
|
||||
siehe_auch: [virtuelle Maschine, Vollsicherung]
|
||||
|
||||
- begriff: Thin Provisioning
|
||||
erklaerung: >-
|
||||
Eine virtuelle Festplatte belegt nur den tatsächlich beschriebenen Platz und
|
||||
wächst bei Bedarf. Spart Speicher, kann ihn aber unbemerkt volllaufen lassen,
|
||||
wenn mehr zugesagt ist, als vorhanden ist.
|
||||
|
||||
- begriff: Container
|
||||
erklaerung: >-
|
||||
Eine abgeschlossene Laufzeitumgebung für eine Anwendung, die sich den Kern
|
||||
des Host-Betriebssystems teilt. Leichter und schneller als eine virtuelle
|
||||
Maschine, aber weniger stark von anderen getrennt.
|
||||
siehe_auch: [virtuelle Maschine]
|
||||
|
||||
# --- Woche 10: Verzeichnisdienst und Serverdienste -------------------------
|
||||
|
||||
- begriff: Active Directory
|
||||
steht_fuer: AD
|
||||
erklaerung: >-
|
||||
Der Verzeichnisdienst von Microsoft. Er verwaltet Benutzer, Computer, Gruppen
|
||||
und Richtlinien einer Domäne zentral und prüft Anmeldungen.
|
||||
siehe_auch: [Domänencontroller, Organisationseinheit, Gruppenrichtlinie]
|
||||
|
||||
- begriff: Domänencontroller
|
||||
formen: [Domänencontrollern, Domänencontrollers]
|
||||
erklaerung: >-
|
||||
Ein Server, der das Verzeichnis einer Domäne hält und Anmeldungen prüft. Man
|
||||
betreibt mindestens zwei, damit ein Ausfall niemanden aussperrt.
|
||||
siehe_auch: [Active Directory, DNS]
|
||||
|
||||
- begriff: Organisationseinheit
|
||||
steht_fuer: OU (Organizational Unit)
|
||||
formen: [Organisationseinheiten, OU, OUs]
|
||||
erklaerung: >-
|
||||
Ein Ordner im Active Directory, der Konten und Computer ordnet. An
|
||||
Organisationseinheiten werden Gruppenrichtlinien verknüpft und
|
||||
Verwaltungsrechte delegiert – Berechtigungen auf Dateien vergibt man dagegen
|
||||
an Gruppen.
|
||||
siehe_auch: [Active Directory, Gruppenrichtlinie, AGDLP]
|
||||
|
||||
- begriff: AGDLP
|
||||
erklaerung: >-
|
||||
Die Regel für Gruppen im Active Directory: Accounts in Global groups, Global
|
||||
groups in Domain Local groups, Permissions an die Domain Local groups. Die
|
||||
globale Gruppe beschreibt die Rolle, die domänenlokale das Recht.
|
||||
siehe_auch: [Prinzip der geringsten Rechte, NTFS-Berechtigung]
|
||||
|
||||
- begriff: Gruppenrichtlinie
|
||||
steht_fuer: GPO (Group Policy Object)
|
||||
formen: [Gruppenrichtlinien, GPO, GPOs]
|
||||
erklaerung: >-
|
||||
Ein Bündel zentraler Einstellungen für Computer oder Benutzer, das an einen
|
||||
Standort, die Domäne oder eine Organisationseinheit verknüpft wird.
|
||||
Angewendet in der Reihenfolge lokal, Standort, Domäne, OU – was zuletzt
|
||||
kommt, gewinnt.
|
||||
siehe_auch: [Organisationseinheit, Active Directory]
|
||||
|
||||
- begriff: Schattenkopie
|
||||
formen: [Schattenkopien]
|
||||
erklaerung: >-
|
||||
Eine Zeitpunktkopie eines Laufwerks auf dem Dateiserver, über die Benutzer
|
||||
frühere Fassungen einer Datei selbst zurückholen können. Liegt auf demselben
|
||||
Laufwerk und ersetzt deshalb keine Datensicherung.
|
||||
siehe_auch: [Vollsicherung]
|
||||
|
||||
# --- Woche 11: Netze trennen und verbinden ---------------------------------
|
||||
|
||||
- begriff: Trunk
|
||||
formen: [Trunks, Trunk-Port, Trunk-Ports]
|
||||
erklaerung: >-
|
||||
Eine Switchverbindung, die mehrere VLANs gleichzeitig überträgt und jeden
|
||||
Rahmen mit seiner VLAN-ID markiert (IEEE 802.1Q). Verbindet Switches
|
||||
untereinander und mit Routern, Firewalls und Access Points.
|
||||
siehe_auch: [VLAN, Switch]
|
||||
|
||||
- begriff: Standardroute
|
||||
formen: [Standardrouten, Default-Route]
|
||||
erklaerung: >-
|
||||
Der Eintrag 0.0.0.0/0 in einer Routingtabelle. Er greift für alle Ziele, für
|
||||
die es keine genauere Route gibt – meist der Weg ins Internet.
|
||||
siehe_auch: [Router, Gateway]
|
||||
|
||||
- begriff: 802.1X
|
||||
erklaerung: >-
|
||||
Ein Verfahren, bei dem sich Geräte oder Benutzer vor dem Zugang zum Netz
|
||||
anmelden müssen – im WLAN als WPA2/WPA3-Enterprise, auch an Switchports. Die
|
||||
Prüfung übernimmt meist ein RADIUS-Server.
|
||||
siehe_auch: [RADIUS]
|
||||
|
||||
- begriff: RADIUS
|
||||
steht_fuer: Remote Authentication Dial-In User Service
|
||||
erklaerung: >-
|
||||
Ein Dienst, der Anmeldungen am Netz zentral prüft, etwa gegen die
|
||||
Benutzerkonten im Verzeichnisdienst. Wird für WLAN-Zugänge mit eigenen
|
||||
Zugangsdaten je Person gebraucht.
|
||||
siehe_auch: [802.1X]
|
||||
|
||||
# --- Woche 12: Kundenauftrag -----------------------------------------------
|
||||
|
||||
- begriff: Lastenheft
|
||||
formen: [Lastenhefts, Lastenhefte]
|
||||
erklaerung: >-
|
||||
Die Beschreibung des Auftraggebers, was er braucht und wofür. Die Grundlage,
|
||||
auf die der Auftragnehmer mit dem Pflichtenheft antwortet.
|
||||
siehe_auch: [Pflichtenheft]
|
||||
|
||||
- begriff: Pflichtenheft
|
||||
formen: [Pflichtenhefts, Pflichtenhefte]
|
||||
erklaerung: >-
|
||||
Die Beschreibung des Auftragnehmers, wie und womit er die Anforderungen aus
|
||||
dem Lastenheft umsetzt – einschließlich der Kriterien, an denen bei der
|
||||
Abnahme geprüft wird.
|
||||
siehe_auch: [Lastenheft]
|
||||
|
||||
- begriff: Bezugspreis
|
||||
formen: [Bezugspreise, Bezugskalkulation]
|
||||
erklaerung: >-
|
||||
Der Preis, den der Betrieb für eine Ware tatsächlich zahlt: Listenpreis minus
|
||||
Rabatt minus Skonto plus Bezugskosten wie Versand und Verpackung.
|
||||
siehe_auch: [Skonto]
|
||||
|
||||
- begriff: Skonto
|
||||
erklaerung: >-
|
||||
Ein Preisnachlass für Zahlung innerhalb einer kurzen Frist, etwa 2 Prozent
|
||||
bei Zahlung binnen zehn Tagen. Wird vom Zieleinkaufspreis berechnet, also
|
||||
nach Abzug des Rabatts.
|
||||
siehe_auch: [Bezugspreis]
|
||||
|
||||
- begriff: Werkvertrag
|
||||
formen: [Werkvertrags, Werkverträge]
|
||||
erklaerung: >-
|
||||
Ein Vertrag, bei dem ein Erfolg geschuldet wird, etwa ein funktionierendes
|
||||
Netzwerk. Bezahlt wird nach der Abnahme.
|
||||
siehe_auch: [Dienstvertrag, Gewährleistung]
|
||||
|
||||
- begriff: Dienstvertrag
|
||||
formen: [Dienstvertrags, Dienstverträge]
|
||||
erklaerung: >-
|
||||
Ein Vertrag, bei dem eine Tätigkeit geschuldet wird, nicht ein Erfolg – etwa
|
||||
Support nach Stunden oder eine Schulung.
|
||||
siehe_auch: [Werkvertrag]
|
||||
|
||||
- begriff: Gewährleistung
|
||||
formen: [Mängelhaftung]
|
||||
erklaerung: >-
|
||||
Die gesetzliche Haftung des Verkäufers für Mängel, die bei Übergabe vorhanden
|
||||
waren – bei neuen Sachen in der Regel zwei Jahre. Anders als die Garantie ist
|
||||
sie nicht freiwillig.
|
||||
siehe_auch: [Werkvertrag]
|
||||
|
||||
- begriff: SLA
|
||||
steht_fuer: Service Level Agreement
|
||||
formen: [SLAs]
|
||||
erklaerung: >-
|
||||
Eine Vereinbarung über messbare Leistungswerte eines Dienstes, etwa
|
||||
Reaktionszeit, Wiederherstellungszeit und Verfügbarkeit. 99,9 Prozent
|
||||
Verfügbarkeit erlauben knapp neun Stunden Ausfall im Jahr.
|
||||
siehe_auch: [RTO]
|
||||
|
||||
# --- Woche 13: Linux-Grundlagen --------------------------------------------
|
||||
|
||||
- begriff: SSH
|
||||
steht_fuer: Secure Shell
|
||||
erklaerung: >-
|
||||
Ein verschlüsselter Fernzugang zur Kommandozeile eines Rechners, üblich für
|
||||
Linux-Server und Netzwerkgeräte. Sicher betrieben wird er mit Schlüsseln statt
|
||||
Passwörtern.
|
||||
|
||||
- begriff: sudo
|
||||
erklaerung: >-
|
||||
Ein Befehl, mit dem ein berechtigter Benutzer unter Linux einen einzelnen
|
||||
Befehl mit Administratorrechten ausführt. Jeder Aufruf wird protokolliert.
|
||||
|
||||
- begriff: systemd
|
||||
formen: [systemctl, journalctl]
|
||||
erklaerung: >-
|
||||
Der Dienst, der auf den meisten Linux-Systemen alle anderen Dienste startet und
|
||||
verwaltet. Mit systemctl steuert man Dienste, mit journalctl liest man ihre
|
||||
Protokolle.
|
||||
|
||||
# --- Woche 14: Betrieb und Überwachung -------------------------------------
|
||||
|
||||
- begriff: NTP
|
||||
steht_fuer: Network Time Protocol
|
||||
erklaerung: >-
|
||||
Das Verfahren, mit dem Rechner ihre Uhrzeit über das Netz abgleichen. Ohne
|
||||
übereinstimmende Uhren lassen sich Protokolle nicht vergleichen, und die
|
||||
Anmeldung im Active Directory scheitert.
|
||||
siehe_auch: [Kerberos]
|
||||
|
||||
- begriff: Kerberos
|
||||
erklaerung: >-
|
||||
Das Anmeldeverfahren im Active Directory. Es arbeitet mit zeitlich begrenzten
|
||||
Tickets und lässt nur eine kleine Abweichung der Uhren zu, standardmäßig fünf
|
||||
Minuten.
|
||||
siehe_auch: [NTP, Active Directory]
|
||||
|
||||
- begriff: Patchday
|
||||
erklaerung: >-
|
||||
Der feste Termin, an dem Microsoft Sicherheitsupdates veröffentlicht – der
|
||||
zweite Dienstag jedes Monats. Viele Betriebe richten ihren Update-Takt danach
|
||||
aus.
|
||||
siehe_auch: [End of Life]
|
||||
|
||||
- begriff: End of Life
|
||||
formen: [End-of-Life, EOL]
|
||||
erklaerung: >-
|
||||
Der Zeitpunkt, ab dem ein Hersteller für ein Produkt keine Sicherheitsupdates
|
||||
mehr liefert. Neue Lücken bleiben danach offen, das Produkt muss ersetzt werden.
|
||||
siehe_auch: [Patchday]
|
||||
|
||||
# --- Woche 15: Serviceanfragen ---------------------------------------------
|
||||
|
||||
- begriff: ITIL
|
||||
erklaerung: >-
|
||||
Das verbreitetste Rahmenwerk für IT-Servicemanagement. Es beschreibt unter
|
||||
anderem, wie Störungen, Serviceanfragen, Probleme und Änderungen
|
||||
unterschieden und bearbeitet werden.
|
||||
|
||||
- begriff: Serviceanfrage
|
||||
formen: [Serviceanfragen, Service Request]
|
||||
erklaerung: >-
|
||||
Die Bitte um eine vorgesehene Standardleistung, ohne dass etwas kaputt ist –
|
||||
etwa ein neues Konto, eine Software aus dem Katalog oder ein Zugriffsrecht.
|
||||
siehe_auch: [ITIL, Workaround]
|
||||
|
||||
- begriff: Workaround
|
||||
formen: [Workarounds, Umgehungslösung]
|
||||
erklaerung: >-
|
||||
Eine Umgehung, mit der Nutzer weiterarbeiten können, obwohl die eigentliche
|
||||
Ursache einer Störung noch nicht beseitigt ist.
|
||||
siehe_auch: [ITIL]
|
||||
|
||||
- begriff: Eskalation
|
||||
formen: [eskalieren, eskaliert]
|
||||
erklaerung: >-
|
||||
Die Weitergabe eines Tickets – funktional an eine Stelle mit mehr Fachwissen
|
||||
oder hierarchisch an die Führungsebene, wenn Fristen oder Entscheidungen es
|
||||
verlangen.
|
||||
siehe_auch: [SLA]
|
||||
|
||||
# --- Woche 16: Vorbereitung auf Teil 1 -------------------------------------
|
||||
|
||||
- begriff: Arbeitsstättenverordnung
|
||||
steht_fuer: ArbStättV
|
||||
formen: [ArbStättV]
|
||||
erklaerung: >-
|
||||
Die Verordnung, die Anforderungen an Arbeitsstätten festlegt. Ihr Anhang Nr. 6
|
||||
regelt die Bildschirmarbeitsplätze und hat 2016 die Bildschirmarbeitsverordnung
|
||||
abgelöst.
|
||||
siehe_auch: [Gefährdungsbeurteilung]
|
||||
|
||||
- begriff: Gefährdungsbeurteilung
|
||||
formen: [Gefährdungsbeurteilungen]
|
||||
erklaerung: >-
|
||||
Die Pflicht des Arbeitgebers nach dem Arbeitsschutzgesetz, die Gefährdungen
|
||||
an jedem Arbeitsplatz zu ermitteln und Maßnahmen dagegen festzulegen – auch
|
||||
für Bildschirmarbeit.
|
||||
siehe_auch: [Arbeitsstättenverordnung]
|
||||
|
||||
- begriff: DIN 66399
|
||||
erklaerung: >-
|
||||
Die Norm für die Vernichtung von Datenträgern. Sie unterscheidet drei
|
||||
Schutzklassen und sieben Sicherheitsstufen; für personenbezogene Daten wird in
|
||||
der Regel mindestens Stufe 3 angesetzt.
|
||||
siehe_auch: [ElektroG, personenbezogene Daten]
|
||||
|
||||
- begriff: ElektroG
|
||||
steht_fuer: Elektro- und Elektronikgerätegesetz
|
||||
erklaerung: >-
|
||||
Das Gesetz, das Rücknahme und Verwertung von Elektrogeräten regelt. Alte
|
||||
Rechner, Bildschirme und Drucker gehören über Rücknahmestellen oder
|
||||
zertifizierte Entsorger in die Verwertung, nicht in den Restmüll.
|
||||
siehe_auch: [DIN 66399]
|
||||
|
||||
- begriff: Pseudocode
|
||||
erklaerung: >-
|
||||
Die Beschreibung eines Ablaufs in strukturierter Umgangssprache mit festen
|
||||
Schlüsselwörtern wie WENN, SOLANGE und FÜR. Er ist an keine Programmiersprache
|
||||
gebunden.
|
||||
siehe_auch: [Struktogramm, Schreibtischtest]
|
||||
|
||||
- begriff: Struktogramm
|
||||
formen: [Struktogramme, Nassi-Shneiderman-Diagramm]
|
||||
erklaerung: >-
|
||||
Die zeichnerische Darstellung eines Ablaufs als ineinander geschachtelte
|
||||
Kästen für Folge, Verzweigung und Schleife, nach Nassi und Shneiderman.
|
||||
siehe_auch: [Pseudocode]
|
||||
|
||||
- begriff: Schreibtischtest
|
||||
formen: [Schreibtischtests]
|
||||
erklaerung: >-
|
||||
Das Durchspielen eines Algorithmus von Hand mit Beispielwerten, wobei nach jedem
|
||||
Schritt die Werte aller Variablen in einer Tabelle festgehalten werden.
|
||||
siehe_auch: [Pseudocode]
|
||||
|
||||
@@ -0,0 +1,65 @@
|
||||
---
|
||||
id: A10
|
||||
titel: Störung, Anfrage, Problem, Änderung – vier Arten von Tickets
|
||||
block: arbeitsalltag
|
||||
woche: 15
|
||||
worum: Nicht jedes Ticket ist eine Störung. Wer Störung, Serviceanfrage, Problem und Änderung auseinanderhält, löst schneller und lernt aus Wiederholungen.
|
||||
rahmenplan: [A1, A5, A8]
|
||||
lernfeld: LF6
|
||||
merksatz: Die Störung wird behoben, das Problem wird gelöst. Jede Änderung wird geplant, freigegeben und hat einen Rückweg.
|
||||
karten:
|
||||
- frage: Was ist der Unterschied zwischen einer Störung (Incident) und einem Problem?
|
||||
antwort: Eine Störung ist eine einzelne ungeplante Unterbrechung oder Beeinträchtigung – Ziel ist, den Nutzer schnell wieder arbeiten zu lassen. Ein Problem ist die Ursache hinter einer oder mehreren Störungen – Ziel ist, sie dauerhaft zu beseitigen.
|
||||
- frage: Was ist eine Serviceanfrage (Service Request)?
|
||||
antwort: Eine Bitte um eine vorgesehene Standardleistung, ohne dass etwas kaputt ist – etwa ein neues Konto, eine Softwareinstallation aus dem Katalog oder ein zurückgesetztes Passwort.
|
||||
- frage: Was ist ein Workaround?
|
||||
antwort: Eine Umgehungslösung, mit der der Nutzer weiterarbeiten kann, obwohl die eigentliche Ursache noch nicht beseitigt ist – etwa ein anderer Drucker, solange der Treiberfehler besteht.
|
||||
- frage: Welche drei Arten von Änderungen unterscheidet man?
|
||||
antwort: Standardänderungen sind vorab genehmigt, risikoarm und laufen nach festem Ablauf. Normale Änderungen werden einzeln geprüft und freigegeben. Notfalländerungen sind eilig und werden mit verkürzter Freigabe umgesetzt und nachträglich dokumentiert.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Störung (Incident):** Etwas funktioniert nicht oder schlechter als vorgesehen. Ziel ist,
|
||||
den Betrieb **schnell** wiederherzustellen – notfalls mit einem Workaround.
|
||||
- **Serviceanfrage (Service Request):** Nichts ist kaputt, jemand braucht eine vorgesehene
|
||||
Leistung: neues Konto, Software, Zugriff, Gerät. Solche Anfragen laufen nach festen Abläufen
|
||||
und lassen sich oft vorab genehmigen.
|
||||
- **Problem:** die Ursache hinter einer oder mehreren Störungen. Drei Tickets mit „Outlook hängt
|
||||
morgens" sind drei Störungen und vermutlich ein Problem. Ziel ist, die Ursache **dauerhaft**
|
||||
zu beseitigen.
|
||||
- **Bekannter Fehler (Known Error):** ein Problem mit bekannter Ursache und dokumentiertem
|
||||
Workaround, dessen endgültige Lösung noch aussteht. Gehört in die Wissensdatenbank.
|
||||
- **Änderung (Change):** alles, was an Systemen verändert wird. Jede Änderung hat ein Risiko –
|
||||
deshalb wird sie beschrieben, bewertet, freigegeben, angekündigt und hat einen Rückweg.
|
||||
- **Drei Arten von Änderungen:** Standard (vorab genehmigt, festgelegter Ablauf, etwa Arbeitsplatz
|
||||
einrichten), normal (einzeln prüfen und freigeben), Notfall (sofort, Freigabe verkürzt,
|
||||
Dokumentation danach).
|
||||
- **Die Störung schließt man, wenn der Nutzer wieder arbeiten kann** – nicht erst, wenn die
|
||||
Ursache gefunden ist. Die Ursache verfolgt man im Problem weiter.
|
||||
- **Begriffe nach ITIL**, dem verbreitetsten Rahmenwerk für IT-Servicemanagement. Man muss es
|
||||
nicht vollständig einführen, um von seinen Begriffen zu profitieren.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Ticket | Art | Ziel |
|
||||
|---|---|---|
|
||||
| „Ich kann nicht drucken" | Störung | Nutzer wieder arbeitsfähig machen |
|
||||
| „Ich brauche Zugriff auf die Ablage Einkauf" | Serviceanfrage | Leistung nach festem Ablauf erbringen |
|
||||
| Zum fünften Mal diese Woche hängt der Druckserver | Problem | Ursache finden und beseitigen |
|
||||
| Druckserver bekommt neuen Treiber | Änderung | geplant, freigegeben, mit Rückweg umsetzen |
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Im Laufe einer Woche gehen sieben Tickets ein, dass die Verbindung zum
|
||||
Warenwirtschaftssystem morgens zwischen 8 und 9 Uhr abbricht. Beschreiben Sie, wie Sie mit
|
||||
diesen Tickets umgehen.
|
||||
|
||||
**Antwort:** Jedes Ticket ist zunächst eine Störung, die möglichst schnell behoben wird – etwa
|
||||
durch einen Neustart der Anwendung oder einen Workaround wie das Arbeiten über eine andere
|
||||
Verbindung. Weil sich die Störungen zur selben Zeit wiederholen, wird ein Problem angelegt und
|
||||
mit den sieben Störungen verknüpft. Im Problem wird die Ursache gesucht, z. B. ein zeitgesteuerter
|
||||
Vorgang wie eine Sicherung oder Anmeldespitzen am Morgen. Bis zur Lösung wird der Workaround als
|
||||
bekannter Fehler in der Wissensdatenbank dokumentiert, damit der Support weitere Meldungen
|
||||
schnell bedienen kann. Die endgültige Behebung – etwa die Verlegung der Sicherung – wird als
|
||||
Änderung geplant, freigegeben und umgesetzt; danach wird das Problem geschlossen.
|
||||
@@ -0,0 +1,63 @@
|
||||
---
|
||||
id: A11
|
||||
titel: Priorisieren und eskalieren – was zuerst, und wer übernimmt
|
||||
block: arbeitsalltag
|
||||
woche: 15
|
||||
worum: Wer immer das lauteste Ticket zuerst bearbeitet, lässt die wichtigen liegen. Die Priorität ergibt sich aus Auswirkung und Dringlichkeit – nicht aus der Lautstärke.
|
||||
rahmenplan: [A1, A2, A7]
|
||||
lernfeld: LF6
|
||||
merksatz: Priorität = Auswirkung × Dringlichkeit. Eskalieren ist keine Niederlage, sondern ein vereinbarter Weg.
|
||||
karten:
|
||||
- frage: Woraus ergibt sich die Priorität eines Tickets?
|
||||
antwort: Aus der Auswirkung (wie viele Nutzer, wie wichtige Abläufe sind betroffen) und der Dringlichkeit (wie schnell entsteht Schaden, gibt es eine Umgehung). Beides wird eingestuft und in einer Matrix zur Priorität verknüpft.
|
||||
- frage: Was ist der Unterschied zwischen funktionaler und hierarchischer Eskalation?
|
||||
antwort: Funktional wird ein Ticket an eine Stelle mit mehr Fachwissen weitergegeben, etwa vom ersten an den zweiten Level. Hierarchisch wird die Führungsebene einbezogen, etwa wenn eine Frist zu reißen droht oder Ressourcen fehlen.
|
||||
- frage: Was unterscheidet die Reaktionszeit von der Lösungszeit in einem SLA?
|
||||
antwort: Die Reaktionszeit ist die Zeit bis zur ersten qualifizierten Rückmeldung an den Nutzer, die Lösungszeit die Zeit bis zur Wiederherstellung des Betriebs.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Auswirkung:** Wie viele sind betroffen, und wie wichtig ist, was nicht geht? Ein einzelner
|
||||
Nutzer ist gering, eine Abteilung mittel, der ganze Betrieb oder ein Kernprozess hoch.
|
||||
- **Dringlichkeit:** Wie schnell entsteht Schaden? Kann gar nicht gearbeitet werden, nur
|
||||
eingeschränkt, oder gibt es eine Umgehung?
|
||||
- **Priorität aus beidem**, nicht aus Gefühl, Lautstärke oder Rang des Anrufers. Der Drucker der
|
||||
Geschäftsführung ist eine Störung mit geringer Auswirkung; die Kasse im Lager, an der zwanzig
|
||||
Lieferungen hängen, nicht.
|
||||
- **Prioritäten dürfen sich ändern.** Kommt heraus, dass mehr Nutzer betroffen sind, wird
|
||||
hochgestuft – und das im Ticket vermerkt.
|
||||
- **Level:** Der erste Level nimmt an, erfasst, löst Bekanntes. Der zweite Level bearbeitet, was
|
||||
Fachwissen braucht. Der dritte Level sind Spezialisten oder der Hersteller.
|
||||
- **Funktional eskalieren**, wenn das eigene Wissen nicht reicht – rechtzeitig, mit vollständigem
|
||||
Ticket. **Hierarchisch eskalieren**, wenn eine Frist zu reißen droht oder Entscheidungen
|
||||
nötig sind, die man selbst nicht treffen darf.
|
||||
- **SLA:** Vereinbarte Reaktions- und Lösungszeiten je Priorität. Die Uhr läuft ab Eingang, nicht
|
||||
ab dem Moment, in dem man das Ticket öffnet.
|
||||
- **Den Nutzer informieren**, auch wenn es nichts Neues gibt. Ein Nutzer, der weiß, dass jemand
|
||||
dran ist, ruft nicht dreimal an.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Auswirkung ↓ / Dringlichkeit → | hoch | mittel | gering |
|
||||
|---|---|---|---|
|
||||
| **hoch** | P1 kritisch | P2 hoch | P3 mittel |
|
||||
| **mittel** | P2 hoch | P3 mittel | P4 gering |
|
||||
| **gering** | P3 mittel | P4 gering | P4 gering |
|
||||
|
||||
Beispiel für Zielzeiten: P1 Reaktion 15 Minuten, Lösung 4 Stunden · P2 1 Stunde / 1 Arbeitstag ·
|
||||
P3 4 Stunden / 3 Arbeitstage · P4 1 Arbeitstag / nach Absprache.
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Gleichzeitig gehen drei Tickets ein: (a) Der Geschäftsführer kann an seinem zweiten
|
||||
Bildschirm nichts sehen. (b) Im Lager kann niemand Lieferscheine drucken, der LKW wartet.
|
||||
(c) Eine Mitarbeiterin bittet um Installation eines neuen PDF-Programms. Priorisieren Sie mit
|
||||
Begründung.
|
||||
|
||||
**Antwort:** (b) zuerst – hohe Auswirkung, weil ein Kernprozess (Versand) für alle im Lager
|
||||
steht, und hohe Dringlichkeit, weil der wartende LKW unmittelbar Kosten verursacht: P1. (a) danach
|
||||
– geringe Auswirkung (ein Nutzer, ein Teil seines Arbeitsplatzes) und mittlere Dringlichkeit, weil
|
||||
er mit einem Bildschirm weiterarbeiten kann: P4, auch wenn der Melder ranghoch ist; eine kurze
|
||||
Rückmeldung mit Zeitangabe ist trotzdem angebracht. (c) ist keine Störung, sondern eine
|
||||
Serviceanfrage, die nach dem vorgesehenen Ablauf (Freigabe, Softwarekatalog) erledigt wird.
|
||||
@@ -0,0 +1,61 @@
|
||||
---
|
||||
id: A12
|
||||
titel: Wissen festhalten – ein Wissensartikel, der wirklich hilft
|
||||
block: arbeitsalltag
|
||||
woche: 15
|
||||
worum: Jede Störung, die zum zweiten Mal gelöst wird, hätte ein Wissensartikel beim ersten Mal verhindert. Gute Artikel sind kurz, auffindbar und aktuell.
|
||||
rahmenplan: [A5, C5, A1]
|
||||
lernfeld: LF6
|
||||
merksatz: Symptom so, wie der Nutzer es sagt. Ursache, Lösung in Schritten, Gültigkeit, Stand. Wer etwas zum zweiten Mal löst, schreibt es auf.
|
||||
karten:
|
||||
- frage: Welche Teile gehören in einen Wissensartikel?
|
||||
antwort: Das Symptom in den Worten des Nutzers samt Fehlermeldung, die Ursache, die Lösung in nummerierten Schritten, für welche Systeme und Versionen sie gilt, sowie Verfasser und Datum des letzten Stands.
|
||||
- frage: Warum formuliert man das Symptom in den Worten des Nutzers?
|
||||
antwort: Weil danach gesucht wird. Wer „Outlook fragt ständig nach dem Passwort" sucht, findet keinen Artikel mit dem Titel „Probleme mit der modernen Authentifizierung".
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Wann schreiben?** Wer eine Lösung zum zweiten Mal braucht, schreibt sie auf. Bei jeder
|
||||
Störung mit unklarer Ursache, sobald sie gefunden ist.
|
||||
- **Titel = Symptom.** So, wie der Nutzer es am Telefon sagt, mit der Fehlermeldung im Wortlaut.
|
||||
Danach wird gesucht.
|
||||
- **Aufbau:** Symptom, betroffene Systeme und Versionen, Ursache, Lösung in nummerierten Schritten,
|
||||
ggf. Workaround, Verfasser und Datum.
|
||||
- **Eine Lösung, ein Artikel.** Ein Artikel „Alles zu Outlook" findet niemand und pflegt niemand.
|
||||
- **Für wen?** Artikel für den Support dürfen Fachbegriffe und Befehle enthalten. Artikel für
|
||||
Nutzer brauchen Bildschirmfotos und einfache Sprache.
|
||||
- **Keine Zugangsdaten** in Wissensartikeln. Ein Verweis auf den Eintrag im Passwortmanager genügt.
|
||||
- **Mit Tickets verknüpfen:** Im Ticket auf den Artikel verweisen, im Artikel auf Beispieltickets.
|
||||
So sieht man, wie oft er gebraucht wird.
|
||||
- **Pflegen:** Ein Artikel mit veralteter Lösung ist schlimmer als keiner. Wer einen Artikel nutzt
|
||||
und ihn falsch findet, korrigiert ihn sofort oder meldet es.
|
||||
|
||||
## Übersicht
|
||||
|
||||
```
|
||||
Titel: Outlook fragt nach jedem Start erneut nach dem Passwort
|
||||
Gilt für: Outlook (Microsoft 365) unter Windows 11
|
||||
Symptom: Anmeldefenster erscheint bei jedem Start, Passwort wird nicht gespeichert
|
||||
Ursache: Beschädigter Eintrag in der Windows-Anmeldeinformationsverwaltung
|
||||
Lösung: 1. Outlook schließen
|
||||
2. Systemsteuerung → Anmeldeinformationsverwaltung → Windows-Anmeldeinformationen
|
||||
3. Alle Einträge mit „MicrosoftOffice" entfernen
|
||||
4. Outlook starten und einmal anmelden
|
||||
Prüfen: Outlook schließen und erneut starten – keine Abfrage mehr
|
||||
Stand: 2026-10-05, Ausbildung IT
|
||||
Tickets: #4711, #4733
|
||||
```
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Ihr Team beantwortet dieselben Fragen immer wieder neu, obwohl es ein Wiki gibt.
|
||||
Nennen Sie drei mögliche Ursachen und je eine Maßnahme.
|
||||
|
||||
**Antwort:** (1) Die Artikel sind nicht auffindbar, weil die Titel technisch statt nach Symptom
|
||||
formuliert sind – Titel nach den Worten der Nutzer und mit Fehlermeldung formulieren. (2) Die
|
||||
Artikel sind veraltet, deshalb traut ihnen niemand – Datum und Verantwortlichen angeben und
|
||||
beim Gebrauch prüfen und korrigieren. (3) Schreiben gehört nicht zum Ablauf – festlegen, dass beim
|
||||
Schließen eines Tickets mit neuer Lösung ein Artikel angelegt oder verknüpft wird. Ebenfalls
|
||||
richtig: zu lange Sammelartikel aufteilen, Artikel mit Tickets verknüpfen, Suche im Ticketsystem
|
||||
statt in einem getrennten Wiki.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: A4
|
||||
titel: Rechte und Pflichten in der Ausbildung
|
||||
block: arbeitsalltag
|
||||
woche: 5
|
||||
worum: Der Ausbildungsvertrag ist kein gewöhnlicher Arbeitsvertrag – das Berufsbildungsgesetz regelt, was beide Seiten einander schulden.
|
||||
rahmenplan: [C1]
|
||||
lernfeld: LF1
|
||||
merksatz: Du schuldest das Lernen, der Betrieb schuldet das Ausbilden. Das Berichtsheft beweist beides.
|
||||
karten:
|
||||
- frage: Wie lang darf die Probezeit in der Ausbildung sein, und was gilt in dieser Zeit für die Kündigung?
|
||||
antwort: Mindestens einen, höchstens vier Monate. In der Probezeit können beide Seiten jederzeit ohne Frist und ohne Angabe von Gründen kündigen – schriftlich.
|
||||
- frage: Unter welchen Bedingungen kann ein Azubi nach der Probezeit kündigen?
|
||||
antwort: Aus wichtigem Grund ohne Frist, oder mit vier Wochen Frist, wenn er die Ausbildung aufgeben oder einen anderen Beruf lernen will. Immer schriftlich und mit Angabe des Grundes.
|
||||
- frage: Warum ist das Berichtsheft mehr als eine lästige Pflicht?
|
||||
antwort: Ein ordnungsgemäß geführter Ausbildungsnachweis ist Voraussetzung für die Zulassung zur Abschlussprüfung. Ohne ihn keine Prüfung.
|
||||
- frage: Aus welchen Teilen besteht die Abschlussprüfung zum Fachinformatiker Systemintegration?
|
||||
antwort: Aus Teil 1 nach etwa anderthalb Jahren (Einrichten eines IT-gestützten Arbeitsplatzes, 20 %) und Teil 2 am Ende (Projektarbeit 50 %, zwei schriftliche Fachbereiche je 10 %, Wirtschafts- und Sozialkunde 10 %).
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Das Berufsbildungsgesetz (BBiG) geht dem Vertrag vor.** Was dort zugunsten des Azubis
|
||||
geregelt ist, lässt sich im Ausbildungsvertrag nicht wegverhandeln.
|
||||
- **Deine Pflichten (§ 13 BBiG)** lassen sich in einem Satz zusammenfassen: dich bemühen,
|
||||
den Beruf zu lernen. Dazu gehören die Berufsschule, die Weisungen im Rahmen der
|
||||
Ausbildung, der pflegliche Umgang mit Geräten, Verschwiegenheit über Betriebs- und
|
||||
Geschäftsgeheimnisse und das Führen des Ausbildungsnachweises.
|
||||
- **Die Pflichten des Betriebs (§ 14 BBiG):** dir den Beruf planmäßig beibringen,
|
||||
Ausbildungsmittel kostenlos stellen, dich zur Berufsschule freistellen, dir Zeit für das
|
||||
Berichtsheft während der Arbeitszeit geben und es regelmäßig durchsehen. Und: dir nur
|
||||
Aufgaben geben, die der Ausbildung dienen.
|
||||
- **Berufsschule ist Arbeitszeit.** Ein Berufsschultag mit mehr als fünf Unterrichtsstunden
|
||||
wird einmal pro Woche als voller Ausbildungstag angerechnet. Danach musst du nicht mehr in
|
||||
den Betrieb.
|
||||
- **Probezeit:** ein bis vier Monate. Danach kann der Betrieb nur noch aus wichtigem Grund
|
||||
kündigen.
|
||||
- **Vergütung, Urlaub und Arbeitszeit** stehen im Vertrag. Ob zusätzlich ein Tarifvertrag
|
||||
gilt, hängt davon ab, ob der Betrieb tarifgebunden ist oder der Vertrag darauf verweist –
|
||||
frag nach, statt zu raten.
|
||||
- **Bei Problemen** sind Ausbilder, Betriebsrat bzw. Jugend- und Auszubildendenvertretung
|
||||
und die Ausbildungsberatung der IHK die Ansprechpartner. In dieser Reihenfolge, aber nicht
|
||||
zwingend.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Prüfungsteil | Zeitpunkt | Inhalt | Gewicht |
|
||||
|---|---|---|---|
|
||||
| Teil 1 | etwa nach 18 Monaten | Einrichten eines IT-gestützten Arbeitsplatzes (schriftlich, 90 Min.) | 20 % |
|
||||
| Teil 2 | Ende der Ausbildung | Betriebliches Projekt der Systemintegration mit Dokumentation, Präsentation und Fachgespräch | 50 % |
|
||||
| | | Konzeption und Administration von IT-Systemen (schriftlich) | 10 % |
|
||||
| | | Analyse und Entwicklung von Netzwerken (schriftlich) | 10 % |
|
||||
| | | Wirtschafts- und Sozialkunde (schriftlich) | 10 % |
|
||||
|
||||
Teil 1 zählt also schon zur Endnote – er ist keine Zwischenprüfung zum Üben.
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Ein Auszubildender wird nach der Probezeit regelmäßig zum Brötchenholen und
|
||||
Autowaschen eingeteilt. Beurteilen Sie die Situation und nennen Sie zwei Wege, wie er
|
||||
reagieren kann.
|
||||
|
||||
**Antwort:** Nach § 14 BBiG dürfen Auszubildenden nur Aufgaben übertragen werden, die dem
|
||||
Ausbildungszweck dienen und ihren körperlichen Kräften angemessen sind. Regelmäßige
|
||||
ausbildungsfremde Tätigkeiten sind damit unzulässig; gelegentliche Gefälligkeiten, die alle
|
||||
im Team gleichermaßen übernehmen, sind dagegen kein Verstoß. Der Auszubildende kann
|
||||
(1) das Gespräch mit dem Ausbilder suchen und die Tätigkeiten im Berichtsheft wahrheitsgemäß
|
||||
eintragen, (2) sich an Betriebsrat oder Jugend- und Auszubildendenvertretung wenden oder
|
||||
(3) die Ausbildungsberatung der zuständigen Kammer einschalten.
|
||||
@@ -0,0 +1,59 @@
|
||||
---
|
||||
id: A5
|
||||
titel: Den Betrieb verstehen – Aufbau, Abläufe, Ansprechpartner
|
||||
block: arbeitsalltag
|
||||
woche: 5
|
||||
worum: Die IT ist für die anderen da. Wer nicht weiß, was eine Abteilung tut und wann es dort brennt, setzt die falschen Prioritäten.
|
||||
rahmenplan: [C2, A1]
|
||||
lernfeld: LF1
|
||||
merksatz: Das Organigramm sagt, wer entscheidet. Die Abläufe sagen, wer leidet, wenn etwas ausfällt.
|
||||
karten:
|
||||
- frage: Was ist der Unterschied zwischen Aufbau- und Ablauforganisation?
|
||||
antwort: Die Aufbauorganisation legt fest, wer wo steht – Abteilungen, Stellen, Weisungswege, sichtbar im Organigramm. Die Ablauforganisation legt fest, wie die Arbeit fließt – Reihenfolge, Zuständigkeiten und Übergaben in einem Prozess.
|
||||
- frage: Warum ist die IT in den meisten Betrieben ein Unterstützungsprozess?
|
||||
antwort: Weil sie nicht selbst das verkauft, womit der Betrieb sein Geld verdient, sondern die Kernprozesse – Fertigung, Vertrieb, Verwaltung – am Laufen hält. Ihre Kunden sind die anderen Abteilungen.
|
||||
- frage: Ab wann kann in einem Betrieb eine Jugend- und Auszubildendenvertretung gewählt werden?
|
||||
antwort: Wenn es einen Betriebsrat gibt und in der Regel mindestens fünf Beschäftigte unter 18 Jahren oder Auszubildende unter 25 Jahren dort arbeiten.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Aufbauorganisation** – wer wo steht. Das Organigramm zeigt Abteilungen, Stellen und
|
||||
Weisungswege. Es beantwortet die Frage: Wer darf das entscheiden?
|
||||
- **Ablauforganisation** – wie die Arbeit fließt. Ein Auftrag geht vom Vertrieb über die
|
||||
Arbeitsvorbereitung in die Fertigung und zum Versand. Jede Übergabe ist eine Stelle, an
|
||||
der IT gebraucht wird – und an der ein Ausfall auffällt.
|
||||
- **Kernprozesse und Unterstützungsprozesse.** Kernprozesse bringen das Geld herein.
|
||||
Die IT gehört fast immer zu den Unterstützungsprozessen: Ihre Kunden sitzen im selben Haus.
|
||||
- **Linie, Stab, Matrix.** In der Linie hat jeder genau einen Vorgesetzten. Eine Stabsstelle
|
||||
berät, entscheidet aber nicht (etwa der Datenschutz). In der Matrix gibt es zwei Richtungen
|
||||
der Weisung, zum Beispiel Abteilung und Projekt.
|
||||
- **Die Rechtsform** sagt, wer haftet und wer unterschreiben darf. In einer GmbH haftet die
|
||||
Gesellschaft mit ihrem Vermögen; die Geschäftsführung vertritt sie nach außen.
|
||||
- **Mitbestimmung:** Ab fünf ständig Beschäftigten kann ein Betriebsrat gewählt werden. Er
|
||||
redet unter anderem mit, wenn Technik eingeführt wird, die Leistung oder Verhalten
|
||||
überwachen kann – und das ist bei fast jeder neuen Software der Fall.
|
||||
- **Für die IT zählt vor allem:** Wann wird wo gearbeitet, was darf wann nicht ausfallen, und
|
||||
wer ist der Ansprechpartner, der für die Abteilung sprechen darf.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Frage an eine Abteilung | Warum die IT das wissen muss |
|
||||
|---|---|
|
||||
| Was ist euer wichtigstes Programm? | Bestimmt, was bei einer Störung zuerst wiederhergestellt wird |
|
||||
| Wann darf nichts ausfallen? | Wartungsfenster legt man nicht auf den Monatsabschluss der Buchhaltung |
|
||||
| Wer spricht für euch? | Änderungen werden mit einer Person abgestimmt, nicht mit allen |
|
||||
| Mit wem tauscht ihr Daten aus? | Schnittstellen sind die häufigste Fehlerquelle nach Updates |
|
||||
| Was nervt euch an der IT? | Die ehrlichste Liste für Verbesserungen, die es gibt |
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Die IT-Abteilung soll eine neue Software zur Zeiterfassung einführen. Welche
|
||||
Stellen im Betrieb müssen Sie vor der Einführung einbeziehen, und warum?
|
||||
|
||||
**Antwort:** (1) Die Geschäftsführung bzw. die verantwortliche Führungskraft, weil sie über
|
||||
Einführung und Budget entscheidet. (2) Den Betriebsrat, weil eine Zeiterfassung geeignet
|
||||
ist, Verhalten oder Leistung zu überwachen; er hat dabei ein Mitbestimmungsrecht nach § 87
|
||||
Abs. 1 Nr. 6 BetrVG. (3) Den Datenschutzbeauftragten, weil personenbezogene Daten verarbeitet
|
||||
werden. (4) Die Personalabteilung bzw. Lohnbuchhaltung als fachlich verantwortliche Stelle,
|
||||
die mit den Daten arbeitet und die Schnittstelle zur Abrechnung kennt.
|
||||
@@ -0,0 +1,57 @@
|
||||
---
|
||||
id: A6
|
||||
titel: Digital zusammenarbeiten – der richtige Kanal, der richtige Ort
|
||||
block: arbeitsalltag
|
||||
woche: 5
|
||||
worum: Chat, E-Mail, Ticket, Wiki – jedes Werkzeug ist für etwas anderes gut. Wer alles überall bespricht, findet nichts wieder.
|
||||
rahmenplan: [C5, A5]
|
||||
lernfeld: LF1
|
||||
merksatz: Aufträge ins Ticket, Wissen ins Wiki, Absprachen in den Chat – und was zählt, schriftlich.
|
||||
karten:
|
||||
- frage: Wohin gehört eine Absprache, die in drei Monaten noch nachvollziehbar sein muss – Chat, E-Mail oder Ticket?
|
||||
antwort: Ins Ticket, wenn sie zu einem Auftrag gehört, sonst in die gemeinsame Dokumentation. Chats sind für schnelle Abstimmung gedacht und lassen sich später kaum noch durchsuchen.
|
||||
- frage: Was gehört in ein Besprechungsprotokoll, damit es etwas nützt?
|
||||
antwort: Die getroffenen Entscheidungen und die vereinbarten Aufgaben mit Verantwortlichem und Termin. Wer was gesagt hat, ist meist entbehrlich.
|
||||
- frage: Warum schickt man einen Link auf die Datei statt die Datei als Anhang?
|
||||
antwort: Weil sonst mehrere Fassungen entstehen und niemand mehr weiß, welche gilt. Der Link zeigt immer auf den aktuellen Stand und unterliegt den Zugriffsrechten der Ablage.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Den Kanal nach dem Zweck wählen, nicht nach der Gewohnheit.** Eine Frage, die in zwei
|
||||
Minuten geklärt ist, gehört nicht in eine E-Mail mit fünf Empfängern – und eine Zusage an
|
||||
einen Kunden nicht in den Chat.
|
||||
- **Ein Ort der Wahrheit.** Jede Information hat genau einen Ablageort. Kopien per Mail,
|
||||
auf dem Desktop oder im privaten Ordner sind am nächsten Tag veraltet.
|
||||
- **Dateinamen, die sich sortieren:** `2026-10-05_Netzplan_Halle2_v3.pdf` statt
|
||||
`Netzplan neu final(2).pdf`. Das Datum vorn in der Form JJJJ-MM-TT ordnet sich von selbst.
|
||||
- **Besprechungen** haben eine Tagesordnung vorher und ein Protokoll danach. Im Protokoll
|
||||
stehen Entscheidungen und Aufgaben – wer, was, bis wann.
|
||||
- **Was nicht in den Chat gehört:** Passwörter, personenbezogene Daten von Kunden oder
|
||||
Kollegen, Kundendaten aus Tickets. Chats werden mitgelesen, weitergeleitet und abfotografiert.
|
||||
- **Erreichbarkeit ehrlich halten.** Status setzen, Abwesenheit eintragen, Vertretung nennen.
|
||||
Wer nicht antwortet, ist für die anderen ein ungelöstes Ticket.
|
||||
- **Videokonferenz:** Kamera an, wenn es um Abstimmung geht; Mikrofon aus, wenn man nicht
|
||||
spricht; Bildschirm teilen nur mit geschlossenen privaten Fenstern.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Anliegen | Kanal | Warum |
|
||||
|---|---|---|
|
||||
| Störung oder Auftrag | Ticket | Nachvollziehbar, zuweisbar, messbar |
|
||||
| Kurze Rückfrage an einen Kollegen | Chat | Schnell, wird nicht aufbewahrt |
|
||||
| Zusage, Angebot, Absprache mit Externen | E-Mail | Nachweisbar und an einen Empfänger gerichtet |
|
||||
| Eskalation, Konflikt, eilige Störung | Telefon oder persönlich | Tonfall und sofortige Rückfrage |
|
||||
| Anleitung, Konfiguration, Netzplan | Wiki bzw. gemeinsame Dokumentation | Auffindbar für alle, auch in zwei Jahren |
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** In Ihrem Team werden Konfigurationsänderungen bisher per Chat angekündigt und
|
||||
dort besprochen. Bewerten Sie dieses Vorgehen und schlagen Sie eine Verbesserung vor.
|
||||
|
||||
**Antwort:** Der Chat eignet sich für die schnelle Abstimmung, nicht als Nachweis. Ankündigungen
|
||||
gehen in anderen Nachrichten unter, sind später schwer auffindbar und enthalten weder
|
||||
Begründung noch Rückfallplan in fester Form. Besser ist eine Änderungsanfrage im
|
||||
Ticketsystem mit Beschreibung, Zeitpunkt, betroffenen Systemen, Rückfallplan und
|
||||
Freigabe; der Chat dient dann nur noch als Hinweis mit Link auf das Ticket. Nach der Änderung
|
||||
wird die Dokumentation im Wiki aktualisiert.
|
||||
@@ -0,0 +1,63 @@
|
||||
---
|
||||
id: A7
|
||||
titel: Anforderungen aufnehmen – Lastenheft und Pflichtenheft
|
||||
block: arbeitsalltag
|
||||
woche: 12
|
||||
worum: Die meisten Projekte scheitern nicht an der Technik, sondern daran, dass Auftraggeber und IT unter derselben Anforderung etwas anderes verstanden haben.
|
||||
rahmenplan: [A2, A1, B1]
|
||||
lernfeld: LF2
|
||||
merksatz: Das Lastenheft sagt, was und wofür – vom Kunden. Das Pflichtenheft sagt, wie und womit – von der IT. Beides wird unterschrieben.
|
||||
karten:
|
||||
- frage: Was ist der Unterschied zwischen Lastenheft und Pflichtenheft?
|
||||
antwort: Das Lastenheft beschreibt der Auftraggeber – was er braucht und wofür. Das Pflichtenheft schreibt der Auftragnehmer – wie und womit er diese Anforderungen umsetzt. Das Pflichtenheft ist die Antwort auf das Lastenheft.
|
||||
- frage: Woran erkennt man eine gut formulierte Anforderung?
|
||||
antwort: Sie ist eindeutig, überprüfbar und begründet. „Das Notebook soll schnell sein" ist keine Anforderung; „Das Notebook startet die Warenwirtschaft in unter zehn Sekunden" schon.
|
||||
- frage: Was unterscheidet Muss-, Soll- und Kann-Anforderungen?
|
||||
antwort: Muss-Anforderungen sind unverzichtbar, ohne sie ist die Lösung unbrauchbar. Soll-Anforderungen sind wichtig, aber verhandelbar. Kann-Anforderungen sind wünschenswert, wenn Zeit und Budget es hergeben.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Erst verstehen, dann anbieten.** Im ersten Gespräch geht es nicht um Geräte, sondern um
|
||||
die Arbeit: Was soll damit getan werden, von wem, wo, wie lange, mit welchen anderen
|
||||
Systemen?
|
||||
- **Offene Fragen stellen:** „Wie läuft ein typischer Arbeitstag ab?" statt „Brauchen Sie
|
||||
16 GB?". Wer nach Technik fragt, bekommt die Technik genannt, die der Kunde kennt.
|
||||
- **Das Lastenheft** kommt vom Auftraggeber: Ausgangslage, Ziel, Anforderungen,
|
||||
Rahmenbedingungen (Budget, Termin, Vorgaben). In kleinen Aufträgen schreibt es oft die IT
|
||||
mit – dann lässt man es vom Kunden bestätigen.
|
||||
- **Das Pflichtenheft** kommt vom Auftragnehmer: wie die Anforderungen umgesetzt werden, mit
|
||||
welcher Hard- und Software, in welchen Schritten, mit welchem Ergebnis.
|
||||
- **Anforderungen müssen prüfbar sein.** Jede Anforderung sollte man am Ende mit Ja oder
|
||||
Nein abhaken können. Was sich nicht prüfen lässt, führt bei der Abnahme zum Streit.
|
||||
- **Muss, Soll, Kann** unterscheiden. Damit lässt sich verhandeln, wenn Budget oder Termin
|
||||
nicht reichen, ohne dass das Wesentliche wegfällt.
|
||||
- **Nicht-funktionale Anforderungen** nicht vergessen: Verfügbarkeit, Datenschutz,
|
||||
Lautstärke, Ergonomie, Barrierefreiheit, Supportzeiten.
|
||||
- **Schriftlich bestätigen lassen.** Eine mündliche Absprache ist nach drei Wochen eine
|
||||
Erinnerung – nach drei Monaten eine Meinung.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Unklar | Prüfbar |
|
||||
|---|---|
|
||||
| Der Rechner soll schnell sein | Die CAD-Anwendung öffnet die Baugruppe X in unter 15 Sekunden |
|
||||
| Ausreichend Speicher | 512 GB SSD, davon mindestens 300 GB frei nach Einrichtung |
|
||||
| Leise | Unter 30 dB(A) im Leerlauf in 1 m Abstand |
|
||||
| Gute Akkulaufzeit | 8 Stunden Arbeit mit Office und Videokonferenz ohne Steckdose |
|
||||
| Sicher | Festplattenverschlüsselung, zweiter Faktor, Updates zentral verwaltet |
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Die Vertriebsleitung wünscht „neue, moderne Notebooks für den Außendienst".
|
||||
Welche Fragen stellen Sie, bevor Sie ein Angebot einholen? Nennen Sie fünf und begründen
|
||||
Sie zwei davon.
|
||||
|
||||
**Antwort:** Fünf aus: (1) Welche Anwendungen werden unterwegs genutzt, auch ohne
|
||||
Internetverbindung? (2) Wie lange wird ohne Steckdose gearbeitet? (3) Wie oft und wie
|
||||
werden die Geräte transportiert – Robustheit, Gewicht? (4) Werden Videokonferenzen geführt –
|
||||
Kamera, Mikrofon, Mobilfunkmodul? (5) Welche Anschlüsse und Peripherie werden beim Kunden
|
||||
oder im Büro gebraucht? (6) Wie hoch ist das Budget, und bis wann werden die Geräte gebraucht?
|
||||
(7) Welche Daten werden gespeichert – Verschlüsselung, Datenschutz? Begründungen etwa:
|
||||
Die Akkulaufzeit bestimmt die Geräteklasse und schließt viele Modelle von vornherein aus.
|
||||
Der Termin entscheidet, ob nur sofort lieferbare Geräte infrage kommen.
|
||||
@@ -0,0 +1,65 @@
|
||||
---
|
||||
id: A8
|
||||
titel: Angebote einholen und rechnen – vom Listenpreis zum Bezugspreis
|
||||
block: arbeitsalltag
|
||||
woche: 12
|
||||
worum: Der niedrigste Listenpreis ist nicht das günstigste Angebot. Erst Rabatt, Skonto und Bezugskosten ergeben den Preis, den der Betrieb tatsächlich zahlt.
|
||||
rahmenplan: [A3, A2, A7]
|
||||
lernfeld: LF2
|
||||
merksatz: Listenpreis minus Rabatt minus Skonto plus Bezugskosten. Netto vergleichen, Bedingungen gleich machen.
|
||||
karten:
|
||||
- frage: Wie lautet das Schema der Bezugskalkulation?
|
||||
antwort: Listeneinkaufspreis minus Liefererrabatt ergibt den Zieleinkaufspreis, minus Liefererskonto den Bareinkaufspreis, plus Bezugskosten den Bezugspreis.
|
||||
- frage: Ist ein Angebot verbindlich, eine Anfrage aber nicht?
|
||||
antwort: Ja. Eine Anfrage verpflichtet zu nichts. Ein Angebot bindet den Anbieter, es sei denn, er schränkt es ausdrücklich ein, etwa mit „freibleibend" oder „solange Vorrat reicht". Nimmt der Kunde es rechtzeitig an, ist der Vertrag geschlossen.
|
||||
- frage: Warum vergleicht man Angebote für den Betrieb netto, also ohne Umsatzsteuer?
|
||||
antwort: Weil ein vorsteuerabzugsberechtigter Betrieb die Umsatzsteuer vom Finanzamt zurückbekommt. Seine tatsächlichen Kosten sind die Nettopreise.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Mindestens drei Angebote** einholen, mit **derselben Anfrage**: gleiche Menge, gleiche
|
||||
Anforderungen, gleicher Liefertermin. Sonst vergleicht man Äpfel mit Birnen.
|
||||
- **Anfrage, Angebot, Bestellung:** Die Anfrage ist unverbindlich. Das Angebot bindet den
|
||||
Anbieter, außer es ist ausdrücklich eingeschränkt. Die rechtzeitige Bestellung auf ein
|
||||
Angebot ist die Annahme – damit ist der Kaufvertrag geschlossen.
|
||||
- **Die Bezugskalkulation** macht Angebote vergleichbar:
|
||||
Listeneinkaufspreis − **Rabatt** = Zieleinkaufspreis − **Skonto** = Bareinkaufspreis +
|
||||
**Bezugskosten** (Versand, Verpackung, Zoll) = **Bezugspreis**.
|
||||
- **Rabatt** ist ein Preisnachlass, etwa für Menge oder Stammkunden. **Skonto** ist ein Nachlass
|
||||
für schnelle Zahlung innerhalb einer Frist – er zählt nur, wenn die Buchhaltung die Frist
|
||||
auch einhält.
|
||||
- **Netto vergleichen.** Der Betrieb kann die Umsatzsteuer als Vorsteuer abziehen; seine
|
||||
Kosten sind die Nettobeträge.
|
||||
- **Der Preis ist nicht alles.** Lieferzeit, Garantie, Service vor Ort, Verfügbarkeit von
|
||||
Ersatzteilen gehören in eine Nutzwertanalyse (Handout H3). Die Bezugskalkulation liefert
|
||||
dafür das Kriterium Preis.
|
||||
- **Nachfragen ist erlaubt.** Wer zwei gute Angebote hat, kann beide Anbieter um ihr bestes
|
||||
Angebot bitten. Das ist üblich und kein schlechter Stil.
|
||||
|
||||
## Übersicht
|
||||
|
||||
Fünf gleiche Arbeitsplatzrechner, Preise netto:
|
||||
|
||||
| | Angebot A | Angebot B | Angebot C |
|
||||
|---|---|---|---|
|
||||
| Listeneinkaufspreis (5 × Stückpreis) | 4.495,00 € | 4.245,00 € | 4.395,00 € |
|
||||
| − Rabatt | 10 % = 449,50 € | – | 5 % = 219,75 € |
|
||||
| = Zieleinkaufspreis | 4.045,50 € | 4.245,00 € | 4.175,25 € |
|
||||
| − Skonto | 2 % = 80,91 € | 3 % = 127,35 € | – |
|
||||
| = Bareinkaufspreis | 3.964,59 € | 4.117,65 € | 4.175,25 € |
|
||||
| + Bezugskosten | 25,00 € | – | 40,00 € |
|
||||
| **= Bezugspreis** | **3.989,59 €** | **4.117,65 €** | **4.215,25 €** |
|
||||
|
||||
Angebot B hat den niedrigsten Stückpreis, Angebot A den niedrigsten Bezugspreis.
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Ein Händler bietet einen Switch zum Listenpreis von 1.200,00 € netto an, gewährt
|
||||
15 % Rabatt und 2 % Skonto bei Zahlung innerhalb von zehn Tagen; der Versand kostet 18,00 €.
|
||||
Berechnen Sie den Bezugspreis.
|
||||
|
||||
**Antwort:** Listeneinkaufspreis 1.200,00 € − 15 % Rabatt (180,00 €) = Zieleinkaufspreis
|
||||
1.020,00 € − 2 % Skonto (20,40 €) = Bareinkaufspreis 999,60 € + Bezugskosten 18,00 € =
|
||||
**Bezugspreis 1.017,60 €** netto. Der Skonto wird vom Zieleinkaufspreis berechnet, nicht vom
|
||||
Listenpreis, und nur dann abgezogen, wenn innerhalb der Frist gezahlt wird.
|
||||
@@ -0,0 +1,67 @@
|
||||
---
|
||||
id: A9
|
||||
titel: Vertrag, Abnahme und Gewährleistung
|
||||
block: arbeitsalltag
|
||||
woche: 12
|
||||
worum: Ob eine Leistung als Kauf, Werk oder Dienst vereinbart ist, entscheidet, was geschuldet ist, wann bezahlt wird und was passiert, wenn etwas nicht funktioniert.
|
||||
rahmenplan: [A7, A2, C1]
|
||||
lernfeld: LF6
|
||||
merksatz: Kauf schuldet die Sache, Werk den Erfolg, Dienst die Tätigkeit. Ohne Abnahme kein Werk erledigt.
|
||||
karten:
|
||||
- frage: Was unterscheidet einen Werkvertrag von einem Dienstvertrag?
|
||||
antwort: Beim Werkvertrag wird ein Erfolg geschuldet, etwa ein funktionierendes Netzwerk; bezahlt wird nach der Abnahme. Beim Dienstvertrag wird eine Tätigkeit geschuldet, etwa Support nach Stunden – auch wenn das Problem am Ende nicht gelöst ist.
|
||||
- frage: Was ist der Unterschied zwischen Gewährleistung und Garantie?
|
||||
antwort: Die Gewährleistung ist gesetzlich vorgeschrieben – der Verkäufer haftet für Mängel, die bei Übergabe vorhanden waren, bei neuen Sachen in der Regel zwei Jahre. Die Garantie ist ein freiwilliges Versprechen des Herstellers oder Händlers mit selbst festgelegten Bedingungen.
|
||||
- frage: Welche Bedeutung hat die Abnahme bei einem Werkvertrag?
|
||||
antwort: Mit der Abnahme bestätigt der Auftraggeber, dass das Werk im Wesentlichen vertragsgemäß ist. Ab dann wird die Vergütung fällig, die Frist für Mängelansprüche beginnt, und die Gefahr geht auf den Auftraggeber über.
|
||||
- frage: Wie viele Stunden Ausfall im Jahr erlaubt eine vereinbarte Verfügbarkeit von 99,9 Prozent?
|
||||
antwort: Rund 8,8 Stunden – 0,1 Prozent von 8.760 Stunden im Jahr. Auf einen Monat gerechnet sind das etwa 43 Minuten.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Kaufvertrag:** Der Verkäufer schuldet eine mangelfreie Sache und das Eigentum daran, der
|
||||
Käufer den Preis. Typisch: Hardware, Lizenzen.
|
||||
- **Werkvertrag:** Der Auftragnehmer schuldet einen **Erfolg** – ein eingerichtetes Netzwerk,
|
||||
eine migrierte Datenbank. Bezahlt wird nach der **Abnahme**.
|
||||
- **Dienstvertrag:** Geschuldet ist die **Tätigkeit**, nicht der Erfolg – Support nach
|
||||
Stunden, Beratung, Schulung.
|
||||
- **Die Abnahme** hat Folgen: Die Vergütung wird fällig, die Frist für Mängelansprüche beginnt
|
||||
zu laufen, und das Risiko geht auf den Auftraggeber über. Deshalb mit Protokoll, Datum,
|
||||
Unterschrift und einer Liste der Restmängel.
|
||||
- **Gewährleistung** ist gesetzlich: Der Verkäufer haftet für Mängel, die bei Übergabe schon
|
||||
bestanden. Zuerst hat er das Recht nachzubessern oder neu zu liefern. Erst wenn das
|
||||
scheitert, kommen Rücktritt, Minderung oder Schadensersatz infrage.
|
||||
- **Garantie** ist freiwillig und gilt zusätzlich, zu den Bedingungen des Garantiegebers.
|
||||
- **Unter Kaufleuten** gilt die Rügepflicht: Ware unverzüglich nach Lieferung prüfen und
|
||||
Mängel sofort melden. Wer den Karton drei Wochen ungeöffnet stehen lässt, kann offensichtliche
|
||||
Mängel danach unter Umständen nicht mehr geltend machen.
|
||||
- **Wartungsverträge und SLAs** legen Reaktionszeiten, Wiederherstellungszeiten und
|
||||
Verfügbarkeit fest. 99,9 Prozent Verfügbarkeit klingen nach „immer" – und erlauben knapp
|
||||
neun Stunden Ausfall im Jahr.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Vertragsart | Geschuldet | Beispiel aus der IT | Bezahlt wird |
|
||||
|---|---|---|---|
|
||||
| Kaufvertrag | Sache und Eigentum | Zehn Notebooks | bei Lieferung bzw. nach Rechnung |
|
||||
| Werkvertrag | Erfolg | Netzwerk einrichten, Server migrieren | nach der Abnahme |
|
||||
| Dienstvertrag | Tätigkeit | Support nach Stunden, Schulung | nach Aufwand |
|
||||
| Mietvertrag / Leasing | Gebrauch auf Zeit | Drucker mit Wartung, Leasing-Notebooks | laufend |
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Ihr Betrieb hat für einen Kunden ein WLAN eingerichtet. Bei der Abnahme stellt der
|
||||
Kunde fest, dass im Besprechungsraum der Empfang schwach ist; alles andere funktioniert.
|
||||
Wie gehen Sie vor, und welche Folgen hat die Abnahme?
|
||||
|
||||
**Antwort:** Die Einrichtung ist ein Werkvertrag; der Kunde schuldet die Abnahme, wenn das
|
||||
Werk im Wesentlichen vertragsgemäß ist, und kann sie wegen unwesentlicher Mängel nicht
|
||||
verweigern. Vorgehen: Den Mangel im Abnahmeprotokoll festhalten, mit Beschreibung und einer
|
||||
Frist zur Behebung, etwa durch einen zusätzlichen Access Point oder eine Anpassung der
|
||||
Kanäle. Beide Seiten unterschreiben das Protokoll mit dem Vorbehalt dieses Mangels. Folgen
|
||||
der Abnahme: Die Vergütung wird fällig (ein Teil kann bis zur Behebung zurückgehalten
|
||||
werden), die Verjährungsfrist für Mängelansprüche beginnt, und die Gefahr geht auf den
|
||||
Kunden über. War vertraglich eine bestimmte Abdeckung im Besprechungsraum vereinbart,
|
||||
handelt es sich nicht um einen unwesentlichen Mangel – dann kann der Kunde die Abnahme
|
||||
verweigern. Deshalb gehören prüfbare Anforderungen ins Pflichtenheft.
|
||||
@@ -0,0 +1,64 @@
|
||||
---
|
||||
id: H4
|
||||
titel: Ergonomie am Bildschirmarbeitsplatz
|
||||
block: hardware
|
||||
woche: 16
|
||||
worum: Wer einen Arbeitsplatz einrichtet, richtet ihn für acht Stunden am Tag und viele Jahre ein. Nacken, Augen und Handgelenke merken jeden Zentimeter, den der Bildschirm falsch steht.
|
||||
rahmenplan: [C3, A2, A7]
|
||||
lernfeld: LF2
|
||||
merksatz: Oberkante auf Augenhöhe, eine Armlänge Abstand, seitlich zum Fenster. Füße flach, Arme im rechten Winkel. Und zwischendurch aufstehen.
|
||||
karten:
|
||||
- frage: Wie wird ein Bildschirm richtig aufgestellt?
|
||||
antwort: Die oberste Zeile liegt auf oder leicht unter Augenhöhe, der Abstand beträgt etwa eine Armlänge (rund 50 bis 70 cm), und die Blickrichtung verläuft parallel zum Fenster, damit weder Spiegelungen noch Blendung entstehen.
|
||||
- frage: Welche Vorschrift regelt die Anforderungen an Bildschirmarbeitsplätze?
|
||||
antwort: Die Arbeitsstättenverordnung (ArbStättV), Anhang Nr. 6. Sie hat 2016 die frühere Bildschirmarbeitsverordnung abgelöst. Der Arbeitgeber muss die Gefährdungen in einer Gefährdungsbeurteilung ermitteln.
|
||||
- frage: Was muss der Arbeitgeber Beschäftigten an Bildschirmarbeitsplätzen zur Augenvorsorge anbieten?
|
||||
antwort: Eine arbeitsmedizinische Angebotsvorsorge mit Untersuchung der Augen und des Sehvermögens. Ergibt sie, dass eine spezielle Sehhilfe für die Bildschirmarbeit nötig ist, muss der Arbeitgeber sie bezahlen.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Bildschirm:** Oberste Zeile auf oder knapp unter Augenhöhe, sodass der Blick leicht nach
|
||||
unten geht. Abstand etwa eine Armlänge. Zwei Bildschirme gleich hoch, der Hauptbildschirm
|
||||
direkt vor dem Körper.
|
||||
- **Licht:** Blickrichtung parallel zum Fenster, nicht davor und nicht mit dem Rücken dazu.
|
||||
Keine Lampe, die sich im Bildschirm spiegelt. Für Büroarbeit sind 500 Lux am Arbeitsplatz
|
||||
vorgesehen.
|
||||
- **Stuhl:** Füße flach auf dem Boden, Oberschenkel etwa waagerecht, Rückenlehne stützt den
|
||||
unteren Rücken. Die Armlehnen so hoch, dass die Schultern locker bleiben.
|
||||
- **Tisch:** Unterarme liegen bei entspannten Schultern etwa waagerecht auf, die Ellbogen im
|
||||
rechten Winkel. Höhenverstellbare Tische erlauben den Wechsel zwischen Sitzen und Stehen.
|
||||
- **Tastatur und Maus:** Vor dem Körper, etwa eine Handbreite Platz zur Tischkante. Die Maus
|
||||
direkt neben der Tastatur, nicht am ausgestreckten Arm.
|
||||
- **Notebooks** sind für Unterwegs. Wer täglich stundenlang daran arbeitet, braucht
|
||||
Dockingstation, externen Bildschirm, Tastatur und Maus – sonst ist der Blick dauerhaft zu tief.
|
||||
- **Bewegung:** Bildschirmarbeit wird durch andere Tätigkeiten oder Pausen unterbrochen. Kein
|
||||
Stuhl gleicht acht Stunden Stillsitzen aus.
|
||||
- **Rechtlicher Rahmen:** Arbeitsstättenverordnung, Anhang Nr. 6. Der Arbeitgeber ermittelt die
|
||||
Belastungen in der Gefährdungsbeurteilung und bietet arbeitsmedizinische Vorsorge für die
|
||||
Augen an.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Beschwerde | Wahrscheinliche Ursache | Abhilfe |
|
||||
|---|---|---|
|
||||
| Nackenschmerzen | Bildschirm zu hoch, zu tief oder seitlich versetzt | Höhe und Position anpassen, Hauptbildschirm mittig |
|
||||
| Brennende, müde Augen | Spiegelungen, Blendung, zu kleine Schrift | Bildschirm drehen, Licht ändern, Skalierung erhöhen |
|
||||
| Verspannte Schultern | Tisch zu hoch, Armlehnen falsch | Stuhl und Armlehnen nachstellen, Tischhöhe anpassen |
|
||||
| Schmerzen im Handgelenk | abgeknickte Hand, Maus zu weit weg | Maus heran, Handballen auflegen, ggf. vertikale Maus |
|
||||
| Rückenschmerzen | Rückenlehne nicht genutzt, zu langes Sitzen | Lehne einstellen, Steh-Phasen, Bewegungspausen |
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Eine Mitarbeiterin klagt über Nackenschmerzen und brennende Augen. Ihr Bildschirm
|
||||
steht seitlich neben dem Notebook, mit dem Fenster im Rücken. Nennen Sie vier Maßnahmen und
|
||||
begründen Sie zwei davon.
|
||||
|
||||
**Antwort:** (1) Den Bildschirm direkt vor die Mitarbeiterin stellen, damit sie den Kopf nicht
|
||||
dauerhaft dreht – Ursache der Nackenschmerzen. (2) Die Höhe so einstellen, dass die oberste Zeile
|
||||
auf oder leicht unter Augenhöhe liegt. (3) Den Arbeitsplatz so drehen, dass die Blickrichtung
|
||||
parallel zum Fenster verläuft – mit dem Fenster im Rücken spiegelt es sich im Bildschirm, und
|
||||
die Augen ermüden. (4) Notebook mit Dockingstation, externer Tastatur und Maus betreiben, statt auf
|
||||
den Notebook-Bildschirm zu schauen. (5) Schriftgröße bzw. Skalierung erhöhen. (6) Auf die
|
||||
Angebotsvorsorge für die Augen hinweisen; ggf. ist eine Bildschirmarbeitsbrille nötig, die der
|
||||
Arbeitgeber bezahlt.
|
||||
@@ -0,0 +1,60 @@
|
||||
---
|
||||
id: H5
|
||||
titel: Energie rechnen und nachhaltig beschaffen
|
||||
block: hardware
|
||||
woche: 16
|
||||
worum: Ein Rechner, der nachts läuft, kostet Geld und Strom, ohne dass jemand etwas davon hat. Wer den Verbrauch rechnen kann, kann Entscheidungen begründen – auch beim Kauf und bei der Entsorgung.
|
||||
rahmenplan: [C4, A3, A6]
|
||||
lernfeld: LF2
|
||||
merksatz: Leistung in kW mal Stunden mal Preis je kWh. Länger nutzen schlägt sparsamer kaufen. Daten vernichten, bevor das Gerät den Betrieb verlässt.
|
||||
karten:
|
||||
- frage: Wie berechnet man die Stromkosten eines Geräts?
|
||||
antwort: Leistung in Kilowatt mal Betriebsstunden ergibt die Energie in Kilowattstunden, mal Preis je kWh ergibt die Kosten. Ein Server mit 150 W, der das ganze Jahr läuft – 0,15 kW × 8.760 h = 1.314 kWh, bei 0,30 € je kWh also 394,20 €.
|
||||
- frage: Welche Norm regelt die Vernichtung von Datenträgern, und welche Sicherheitsstufe ist für personenbezogene Daten üblich?
|
||||
antwort: DIN 66399. Sie kennt drei Schutzklassen und sieben Sicherheitsstufen. Für personenbezogene Daten wird in der Regel mindestens Sicherheitsstufe 3 angesetzt, für besonders schützenswerte Daten wie Gesundheitsdaten höher.
|
||||
- frage: Warum ist eine längere Nutzung oft nachhaltiger als ein sparsameres neues Gerät?
|
||||
antwort: Weil ein großer Teil der Umweltbelastung eines Rechners bei der Herstellung entsteht, nicht im Betrieb. Ein Gerät ein, zwei Jahre länger zu nutzen, spart meist mehr als der geringere Verbrauch eines neuen.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Die Formel:** Leistung (kW) × Zeit (h) = Energie (kWh). Energie × Preis je kWh = Kosten.
|
||||
Watt erst durch 1.000 teilen, sonst stimmt die Kommastelle nicht.
|
||||
- **Die Stunden richtig zählen:** Ein Arbeitsplatz läuft etwa 8 Stunden an 220 Arbeitstagen,
|
||||
ein Server 24 Stunden an 365 Tagen, also 8.760 Stunden.
|
||||
- **Leerlauf kostet am meisten**, weil er die meisten Stunden hat. Ruhezustand und
|
||||
Energiesparpläne per Gruppenrichtlinie, Abschalten über Nacht, Drucker mit Ruhemodus.
|
||||
- **Beim Kauf:** Verbrauch im Leerlauf und unter Last vergleichen, Energielabel bei Bildschirmen,
|
||||
Siegel wie TCO Certified, Blauer Engel, EPEAT oder ENERGY STAR. Netzteile mit hohem
|
||||
Wirkungsgrad (80 PLUS).
|
||||
- **Länger nutzen:** Ein großer Teil der Umweltbelastung entsteht bei der Herstellung. Aufrüsten
|
||||
(SSD, Arbeitsspeicher), Reparieren und Weitergeben sind oft nachhaltiger als ein neues Gerät.
|
||||
Aufbereitete Geräte (refurbished) sind für viele Arbeitsplätze eine gute Wahl.
|
||||
- **Entsorgen:** Elektrogeräte gehören nicht in den Restmüll. Nach dem Elektro- und
|
||||
Elektronikgerätegesetz (ElektroG) gehen sie über Rücknahmestellen oder zertifizierte
|
||||
Entsorger zurück in die Verwertung.
|
||||
- **Vorher die Daten:** Datenträger werden vor der Abgabe nachweisbar gelöscht oder vernichtet –
|
||||
nach DIN 66399, mit Protokoll. Ein formatierter Datenträger ist nicht gelöscht.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Gerät | Leistung | Stunden im Jahr | kWh | Kosten bei 0,30 €/kWh |
|
||||
|---|---|---|---|---|
|
||||
| Arbeitsplatzrechner, 8 h an 220 Tagen | 45 W | 1.760 | 79,2 | 23,76 € |
|
||||
| Server, durchgehend | 150 W | 8.760 | 1.314 | 394,20 € |
|
||||
| Rechner, der außerhalb der Arbeitszeit im Leerlauf läuft | 30 W | 7.000 | 210 | 63,00 € |
|
||||
|
||||
Bei 100 Rechnern, die nachts und am Wochenende nicht ausgeschaltet werden, sind das allein für
|
||||
den Leerlauf 6.300 € im Jahr.
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** In einem Betrieb laufen 60 Arbeitsplatzrechner rund um die Uhr. Im Leerlauf nimmt jeder
|
||||
35 W auf. Wie viel ließe sich im Jahr sparen, wenn die Rechner außerhalb der Arbeitszeit
|
||||
(8 Stunden an 220 Tagen) ausgeschaltet würden? Strompreis 0,30 € je kWh.
|
||||
|
||||
**Antwort:** Stunden außerhalb der Arbeitszeit: 8.760 h − (8 h × 220) = 8.760 h − 1.760 h =
|
||||
7.000 h. Energie je Rechner: 0,035 kW × 7.000 h = 245 kWh. Für 60 Rechner: 245 kWh × 60 =
|
||||
14.700 kWh. Ersparnis: 14.700 kWh × 0,30 €/kWh = **4.410 €** im Jahr. Hinzu kommt, dass
|
||||
ausgeschaltete Rechner nachts nicht angegriffen werden können; Updates lassen sich mit
|
||||
Wake-on-LAN trotzdem außerhalb der Arbeitszeit einspielen.
|
||||
@@ -0,0 +1,60 @@
|
||||
---
|
||||
id: I1
|
||||
titel: Schutzziele und Schutzbedarf – was ist wie viel wert?
|
||||
block: sicherheit
|
||||
woche: 6
|
||||
worum: Nicht alles muss gleich gut geschützt werden. Die Schutzbedarfsfeststellung sagt, wo sich Aufwand lohnt – und begründet ihn.
|
||||
rahmenplan: [A6]
|
||||
lernfeld: LF4
|
||||
merksatz: Erst fragen, was passiert, wenn es schiefgeht. Dann entscheiden, wie viel Schutz es braucht.
|
||||
karten:
|
||||
- frage: Welche drei Schutzziele kennt die Informationssicherheit, und was bedeuten sie?
|
||||
antwort: Vertraulichkeit – nur Befugte sehen die Daten. Integrität – die Daten sind vollständig und unverfälscht. Verfügbarkeit – Daten und Systeme stehen bereit, wenn sie gebraucht werden.
|
||||
- frage: Welche drei Schutzbedarfskategorien unterscheidet der IT-Grundschutz des BSI?
|
||||
antwort: Normal – die Schadensauswirkungen sind begrenzt und überschaubar. Hoch – sie können beträchtlich sein. Sehr hoch – sie können existenzbedrohend oder katastrophal sein.
|
||||
- frage: Was besagt das Maximumprinzip bei der Schutzbedarfsfeststellung?
|
||||
antwort: Ein IT-System erbt den höchsten Schutzbedarf aller Anwendungen, die darauf laufen. Läuft eine Anwendung mit hohem Bedarf auf einem Server, hat der Server mindestens hohen Bedarf.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Drei Schutzziele:** Vertraulichkeit, Integrität, Verfügbarkeit. Jede Sicherheitsmaßnahme
|
||||
dient mindestens einem davon. Oft kommt Authentizität hinzu: Man weiß sicher, von wem
|
||||
etwas stammt.
|
||||
- **Schutzbedarf ergibt sich aus dem möglichen Schaden**, nicht aus der Technik. Die Frage
|
||||
lautet: Was passiert, wenn diese Information bekannt wird, verfälscht wird oder ausfällt?
|
||||
- **Drei Kategorien:** normal, hoch, sehr hoch. Bewertet wird **je Schutzziel** – die
|
||||
Lohnabrechnung hat einen sehr hohen Bedarf an Vertraulichkeit, aber nicht zwingend an
|
||||
Verfügbarkeit in der Stunde.
|
||||
- **Sechs Schadensszenarien** helfen beim Einordnen: Verstoß gegen Gesetze oder Verträge,
|
||||
Verletzung von Persönlichkeitsrechten, Gefahr für Leib und Leben, Beeinträchtigung der
|
||||
Aufgabenerfüllung, Ansehensverlust, finanzielle Folgen.
|
||||
- **Von oben nach unten:** Erst die Geschäftsprozesse und Informationen bewerten, dann die
|
||||
Anwendungen, dann die IT-Systeme, Räume und Verbindungen, auf denen sie liegen.
|
||||
- **Vererbung:** Ein System übernimmt den höchsten Bedarf seiner Anwendungen
|
||||
(Maximumprinzip). Viele kleine Schäden auf einem System können zusammen einen höheren
|
||||
Bedarf ergeben (Kumulationseffekt). Ist eine Anwendung auf mehrere Systeme verteilt,
|
||||
kann der Bedarf des einzelnen Systems niedriger liegen (Verteilungseffekt).
|
||||
- **Jede Einstufung braucht eine Begründung.** „Hoch, weil wichtig" ist keine.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Kategorie | Bedeutung | Beispiel Verfügbarkeit |
|
||||
|---|---|---|
|
||||
| normal | begrenzte, überschaubare Auswirkungen | Ausfall des Intranets für einen Tag ist lästig, aber verkraftbar |
|
||||
| hoch | beträchtliche Auswirkungen | Ausfall der Warenwirtschaft für einen Tag stoppt Versand und Rechnungen |
|
||||
| sehr hoch | existenzbedrohende oder katastrophale Auswirkungen | Ausfall der Produktionssteuerung über Tage mit Vertragsstrafen |
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Auf einem Server laufen der Dateidienst der Verwaltung (Schutzbedarf
|
||||
Vertraulichkeit: normal) und die Personaldatenbank (Vertraulichkeit: sehr hoch). Welchen
|
||||
Schutzbedarf hat der Server hinsichtlich der Vertraulichkeit? Begründen Sie und nennen Sie
|
||||
eine Alternative.
|
||||
|
||||
**Antwort:** Nach dem Maximumprinzip übernimmt der Server den höchsten Schutzbedarf der
|
||||
darauf betriebenen Anwendungen, hier also „sehr hoch" für die Vertraulichkeit. Damit
|
||||
müssen auch für den Dateidienst die strengeren Maßnahmen gelten – etwa beim Zugriff von
|
||||
Administratoren und bei der Sicherung. Alternativ lässt sich die Personaldatenbank auf ein
|
||||
eigenes System auslagern; dann kann der Dateiserver mit normalem Schutzbedarf betrieben
|
||||
werden, und der hohe Aufwand beschränkt sich auf das System, das ihn wirklich braucht.
|
||||
@@ -0,0 +1,61 @@
|
||||
---
|
||||
id: I2
|
||||
titel: Konten schützen – Passwörter, zweiter Faktor, Phishing
|
||||
block: sicherheit
|
||||
woche: 6
|
||||
worum: Die meisten Angriffe beginnen nicht mit einer Sicherheitslücke, sondern mit einem Konto, das sich jemand ausgeliehen hat.
|
||||
rahmenplan: [A6, B3]
|
||||
lernfeld: LF4
|
||||
merksatz: Lang statt kompliziert, für jedes Konto ein eigenes, und wo es geht ein zweiter Faktor.
|
||||
karten:
|
||||
- frage: Was macht ein Passwort sicher – Länge oder Sonderzeichen?
|
||||
antwort: Vor allem die Länge und dass es nirgends sonst verwendet wird. Eine lange Passphrase aus mehreren Wörtern ist stärker und besser zu merken als ein kurzes Passwort mit Sonderzeichen.
|
||||
- frage: Aus welchen drei Arten von Faktoren kann eine Anmeldung bestehen?
|
||||
antwort: Wissen (Passwort, PIN), Besitz (Smartphone mit App, Sicherheitsschlüssel, Chipkarte) und Sein (Fingerabdruck, Gesicht). Zwei Faktoren müssen aus verschiedenen Arten stammen.
|
||||
- frage: Warum arbeiten Administratoren im Alltag nicht mit ihrem Administratorkonto?
|
||||
antwort: Weil jede Schadsoftware, die sie versehentlich starten, sonst mit vollen Rechten läuft. Für den Alltag dient ein normales Konto, das Administratorkonto nur für die Aufgabe, die es braucht.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Länge schlägt Komplexität.** Eine Passphrase wie `Kaffee-Lager-Gabelstapler-Montag` ist
|
||||
stärker als `K4ff33!` und lässt sich merken.
|
||||
- **Für jedes Konto ein eigenes Passwort.** Wird ein Dienst gehackt, probieren Angreifer die
|
||||
erbeuteten Zugangsdaten überall sonst aus. Ein Passwortmanager macht das handhabbar.
|
||||
- **Kein Wechsel ohne Anlass.** Regelmäßiger Zwangswechsel führt zu `Sommer2026!`,
|
||||
`Herbst2026!`. Gewechselt wird, wenn ein Verdacht besteht – dann aber sofort.
|
||||
- **Zweiter Faktor:** Ein gestohlenes Passwort allein reicht dann nicht mehr. Pflicht für
|
||||
E-Mail, Fernzugang und alle Administratorkonten.
|
||||
- **Getrennte Konten für Verwaltungsaufgaben.** Surfen und Mails lesen mit dem normalen
|
||||
Konto, administrieren mit dem Administratorkonto – und nur dafür.
|
||||
- **Phishing erkennen:** Zeitdruck, ungewöhnlicher Absender, Link-Ziel passt nicht zum
|
||||
Absender, Aufforderung zur Anmeldung oder Zahlung. Vor dem Klick auf den Link zeigen und
|
||||
die Adresse lesen.
|
||||
- **Wer geklickt hat, meldet es sofort.** Nicht schämen, nicht löschen, nicht abwarten. Je
|
||||
früher die IT Bescheid weiß, desto kleiner der Schaden.
|
||||
- **Bildschirm sperren**, sobald man den Platz verlässt: Windows-Taste + L.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Merkmal einer Phishing-Mail | Beispiel |
|
||||
|---|---|
|
||||
| Druck und Dringlichkeit | „Ihr Konto wird in 24 Stunden gesperrt" |
|
||||
| Absender passt nicht | `support@micros0ft-konto.net` |
|
||||
| Link-Ziel weicht ab | Text zeigt `microsoft.com`, Ziel ist eine fremde Adresse |
|
||||
| Ungewöhnliche Bitte | Gutscheine kaufen, Kontodaten ändern, Anhang „aktivieren" |
|
||||
| Allgemeine Anrede | „Sehr geehrter Kunde" statt des Namens |
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Eine Mitarbeiterin meldet, dass sie auf einen Link in einer verdächtigen Mail
|
||||
geklickt und dort ihr Passwort eingegeben hat. Beschreiben Sie Ihr Vorgehen in der
|
||||
richtigen Reihenfolge.
|
||||
|
||||
**Antwort:** (1) Sofort das Passwort des betroffenen Kontos ändern und bestehende
|
||||
Anmeldesitzungen beenden, damit der Angreifer den Zugang nicht mehr nutzen kann. (2) Prüfen,
|
||||
ob der zweite Faktor aktiv ist und ob seit dem Klick ungewöhnliche Anmeldungen,
|
||||
Weiterleitungsregeln oder versendete Mails auftreten. (3) Die Mail sichern und andere
|
||||
Empfänger warnen bzw. die Mail aus deren Postfächern entfernen. (4) Den Rechner auf
|
||||
Schadsoftware prüfen, falls zusätzlich etwas heruntergeladen wurde. (5) Den Vorfall
|
||||
dokumentieren und an die Verantwortlichen für Informationssicherheit und Datenschutz
|
||||
melden – bei Zugriff auf personenbezogene Daten kann eine Meldepflicht bestehen.
|
||||
@@ -0,0 +1,64 @@
|
||||
---
|
||||
id: I3
|
||||
titel: Datenschutz in der IT – was du sehen kannst und was du anschauen darfst
|
||||
block: sicherheit
|
||||
woche: 6
|
||||
worum: In der IT hat man Zugriff auf fast alles. Die DSGVO regelt, was man damit tun darf – und das ist deutlich weniger.
|
||||
rahmenplan: [A6, C1]
|
||||
lernfeld: LF4
|
||||
merksatz: Zugriff ist kein Anlass. Hineingeschaut wird nur, wenn der Auftrag es verlangt.
|
||||
karten:
|
||||
- frage: Was sind personenbezogene Daten?
|
||||
antwort: Alle Angaben, die sich auf eine bestimmte oder bestimmbare Person beziehen – Name, E-Mail-Adresse, Personalnummer, IP-Adresse, Standortdaten, aber auch ein Foto oder eine Stimmaufnahme.
|
||||
- frage: Innerhalb welcher Frist muss eine Datenschutzverletzung der Aufsichtsbehörde gemeldet werden?
|
||||
antwort: Innerhalb von 72 Stunden, nachdem sie bekannt geworden ist – es sei denn, sie führt voraussichtlich zu keinem Risiko für die Betroffenen. Melden muss der Betrieb; du meldest intern sofort.
|
||||
- frage: Was bedeutet Datenminimierung?
|
||||
antwort: Es werden nur die Daten erhoben und gespeichert, die für den Zweck wirklich nötig sind – und gelöscht, sobald der Zweck erfüllt ist.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Die DSGVO schützt Personen, nicht Daten.** Personenbezogen ist alles, was sich einer
|
||||
bestimmten Person zuordnen lässt – auch eine IP-Adresse oder ein Kennzeichen.
|
||||
- **Besonders schützenswert** sind Gesundheitsdaten, religiöse und politische
|
||||
Überzeugungen, Gewerkschaftszugehörigkeit, biometrische Daten und weitere. In der IT
|
||||
begegnen sie dir in Krankmeldungen, Personalakten und Zutrittssystemen.
|
||||
- **Die Grundsätze:** rechtmäßig, zweckgebunden, so wenig wie nötig, richtig, nicht länger als
|
||||
nötig gespeichert, sicher verarbeitet. Und der Betrieb muss nachweisen können, dass er sich
|
||||
daran hält.
|
||||
- **Technische und organisatorische Maßnahmen (TOM):** Zugriffsrechte, Verschlüsselung,
|
||||
Protokollierung, Datensicherung, Schulungen. Ein großer Teil davon ist IT-Arbeit.
|
||||
- **Als Administrator** siehst du Postfächer, Personalordner und Protokolle. Hineinschauen
|
||||
darfst du nur, wenn ein Auftrag es erfordert – und dann nur so weit wie nötig. Was du
|
||||
dabei siehst, bleibt bei dir.
|
||||
- **Eine Datenpanne** – verlorenes Notebook, falsch versendete Mail, offener Ordner – meldest
|
||||
du sofort intern. Der Betrieb hat 72 Stunden für die Meldung an die Aufsichtsbehörde, und
|
||||
die Uhr läuft ab dem Moment, in dem jemand im Betrieb davon weiß.
|
||||
- **Der Datenschutzbeauftragte** berät und kontrolliert. Er ist Pflicht, sobald in der Regel
|
||||
mindestens 20 Personen ständig mit der automatisierten Verarbeitung personenbezogener
|
||||
Daten beschäftigt sind.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Situation | Richtig |
|
||||
|---|---|
|
||||
| Ein Kollege bittet dich, „mal kurz" ins Postfach seiner Chefin zu schauen | Ablehnen – Zugriff nur mit Auftrag der berechtigten Stelle |
|
||||
| Ein Notebook ist im Zug liegen geblieben | Sofort melden, Konto sperren, Verschlüsselung prüfen |
|
||||
| Du siehst beim Support eine Krankmeldung auf dem Bildschirm | Nicht lesen, nicht erwähnen, Fenster schließen lassen |
|
||||
| Alte Festplatten aus der Personalabteilung | Nachweisbar sicher löschen oder vernichten, Protokoll anlegen |
|
||||
| Testdaten für eine neue Software gesucht | Keine echten Personaldaten, sondern erfundene oder unkenntlich gemachte |
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Ein Außendienstmitarbeiter verliert ein Notebook mit Kundendaten. Die Festplatte
|
||||
ist mit BitLocker verschlüsselt. Muss der Vorfall der Aufsichtsbehörde gemeldet werden?
|
||||
Begründen Sie.
|
||||
|
||||
**Antwort:** Grundsätzlich ist der Verlust eines Geräts mit personenbezogenen Daten eine
|
||||
Verletzung des Schutzes dieser Daten und binnen 72 Stunden zu melden. Eine Meldung kann
|
||||
entfallen, wenn die Verletzung voraussichtlich nicht zu einem Risiko für die Betroffenen
|
||||
führt. Das ist bei einer wirksamen, dem Stand der Technik entsprechenden Verschlüsselung
|
||||
regelmäßig der Fall – vorausgesetzt, das Gerät war ausgeschaltet oder gesperrt und der
|
||||
Schlüssel ist nicht mit verloren gegangen. Die Entscheidung trifft der Verantwortliche mit
|
||||
dem Datenschutzbeauftragten; der Vorfall wird in jedem Fall intern dokumentiert, und das
|
||||
Konto des Mitarbeiters wird vorsorglich gesperrt bzw. das Passwort geändert.
|
||||
@@ -0,0 +1,64 @@
|
||||
---
|
||||
id: N5
|
||||
titel: VLANs und Trunks – ein Switch, mehrere Netze
|
||||
block: netzwerk
|
||||
woche: 11
|
||||
worum: Mit VLANs trennt man Netze, ohne neue Kabel zu ziehen. Der Preis ist, dass man an jedem Port wissen muss, welches Netz dort ankommt.
|
||||
rahmenplan: [B2, A6]
|
||||
lernfeld: LF9
|
||||
merksatz: Access-Port – ein VLAN, ohne Markierung. Trunk – viele VLANs, markiert. Und jedes VLAN hat sein eigenes Subnetz.
|
||||
karten:
|
||||
- frage: Was ist der Unterschied zwischen einem Access-Port und einem Trunk-Port?
|
||||
antwort: Ein Access-Port gehört zu genau einem VLAN und überträgt dessen Rahmen ohne Markierung – dort hängen Endgeräte. Ein Trunk-Port überträgt mehrere VLANs und markiert jeden Rahmen mit seiner VLAN-ID nach IEEE 802.1Q – damit verbindet man Switches, Router und Access Points.
|
||||
- frage: Welche VLAN-IDs sind nutzbar, und warum meidet man VLAN 1?
|
||||
antwort: Die IDs 1 bis 4094. VLAN 1 ist auf allen Ports ab Werk eingestellt und wird von vielen Geräten für Verwaltungsverkehr genutzt – wer es für Benutzer verwendet, landet schnell mit allem im selben Netz.
|
||||
- frage: Warum braucht jedes VLAN ein eigenes Subnetz?
|
||||
antwort: Weil die VLANs auf Schicht 2 getrennt sind und Verkehr zwischen ihnen über einen Router laufen muss. Der Router kann nur zwischen verschiedenen IP-Netzen vermitteln, und jedes VLAN braucht seine eigene Gateway-Adresse.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Ein VLAN ist ein eigenes Netz auf Schicht 2.** Geräte in verschiedenen VLANs sehen sich
|
||||
nicht, auch wenn sie am selben Switch hängen. Broadcasts bleiben im eigenen VLAN.
|
||||
- **Wozu trennen?** Sicherheit (Gäste, Produktion und Verwaltung kommen nicht aneinander),
|
||||
Ordnung (Drucker, Telefone, Server je für sich), Begrenzung der Broadcasts.
|
||||
- **Access-Port:** genau ein VLAN, Rahmen ohne Markierung. Das Endgerät merkt von VLANs nichts.
|
||||
- **Trunk-Port:** mehrere VLANs über ein Kabel, jeder Rahmen trägt eine Markierung nach
|
||||
**IEEE 802.1Q** mit der VLAN-ID. Zwischen Switches, zum Router oder zur Firewall und zu
|
||||
Access Points mit mehreren Funknetzen.
|
||||
- **Natives VLAN:** Das eine VLAN, dessen Rahmen auf einem Trunk unmarkiert laufen. Muss an
|
||||
beiden Enden gleich eingestellt sein, sonst landen Pakete im falschen Netz.
|
||||
- **Jedes VLAN hat ein eigenes Subnetz** und ein eigenes Gateway. Verkehr zwischen VLANs geht
|
||||
über einen Router, eine Firewall oder einen Layer-3-Switch – und dort lässt er sich regeln.
|
||||
- **DHCP über VLAN-Grenzen:** Steht der DHCP-Server in einem anderen VLAN, braucht das Gateway
|
||||
eine DHCP-Weiterleitung.
|
||||
- **Ungenutzte Ports** abschalten oder in ein VLAN ohne Verbindung legen, und VLAN 1 nicht für
|
||||
Benutzer verwenden.
|
||||
- **Dokumentieren:** Welcher Port, welches VLAN, welches Gerät. Ohne diese Liste wird jede
|
||||
Umsteckaktion zur Fehlersuche.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| VLAN | Name | Subnetz | Gateway |
|
||||
|---|---|---|---|
|
||||
| 10 | Verwaltung | 10.10.10.0/24 | 10.10.10.1 |
|
||||
| 20 | Server | 10.10.20.0/24 | 10.10.20.1 |
|
||||
| 30 | Drucker | 10.10.30.0/24 | 10.10.30.1 |
|
||||
| 40 | Produktion | 10.10.40.0/24 | 10.10.40.1 |
|
||||
| 90 | Gäste | 10.10.90.0/24 | 10.10.90.1 |
|
||||
| 99 | Netzwerkverwaltung | 10.10.99.0/24 | 10.10.99.1 |
|
||||
|
||||
Die VLAN-ID im dritten Oktett zu wiederholen, ist keine Pflicht, macht aber jede Adresse
|
||||
lesbar.
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Ein Access Point soll ein Funknetz für Mitarbeiter (VLAN 10) und eines für Gäste
|
||||
(VLAN 90) bereitstellen. Wie konfigurieren Sie den Switchport, an dem er hängt? Begründen Sie.
|
||||
|
||||
**Antwort:** Der Port wird als Trunk konfiguriert, der VLAN 10 und VLAN 90 markiert
|
||||
überträgt; ggf. kommt das Verwaltungs-VLAN des Access Points hinzu, häufig als natives
|
||||
VLAN unmarkiert. Ein Access-Port ginge nicht, weil er nur ein einziges VLAN überträgt. Der
|
||||
Access Point ordnet jedem Funknetz die passende VLAN-ID zu, sodass Gäste-Datenverkehr
|
||||
markiert als VLAN 90 am Switch ankommt und von dort nur zum Gateway des Gästenetzes
|
||||
gelangt. Auf dem Trunk werden nur die benötigten VLANs zugelassen, nicht alle.
|
||||
@@ -0,0 +1,67 @@
|
||||
---
|
||||
id: N6
|
||||
titel: Zwischen Netzen – Routing und Firewallregeln
|
||||
block: netzwerk
|
||||
woche: 11
|
||||
worum: Netze zu trennen ist leicht. Die Kunst ist, genau den Verkehr durchzulassen, der gebraucht wird, und zu wissen, welcher Weg genommen wird.
|
||||
rahmenplan: [B2, A6, A8]
|
||||
lernfeld: LF9
|
||||
merksatz: Die genaueste Route gewinnt. Regeln von oben nach unten, die erste passende entscheidet, am Ende ist alles verboten.
|
||||
karten:
|
||||
- frage: Welche Route wählt ein Router, wenn mehrere Einträge auf ein Ziel passen?
|
||||
antwort: Die genaueste, also die mit dem längsten Präfix. Für 10.10.30.7 gewinnt 10.10.30.0/24 gegen 10.10.0.0/16, und beide gewinnen gegen die Standardroute 0.0.0.0/0.
|
||||
- frage: In welcher Reihenfolge werden Firewallregeln ausgewertet?
|
||||
antwort: Von oben nach unten. Die erste Regel, auf die ein Paket passt, entscheidet; alle weiteren werden nicht mehr geprüft. Passt keine, greift die Grundregel am Ende – üblicherweise blockieren.
|
||||
- frage: Was bedeutet, dass eine Firewall zustandsbehaftet arbeitet?
|
||||
antwort: Sie merkt sich erlaubte Verbindungen und lässt die zugehörigen Antworten von selbst durch. Man muss deshalb nur die Richtung erlauben, in der die Verbindung aufgebaut wird.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Eine Routingtabelle** sagt für jedes Zielnetz, wohin ein Paket als Nächstes geht:
|
||||
Zielnetz, nächster Router (Next Hop) und Schnittstelle.
|
||||
- **Die genaueste Route gewinnt** (längstes Präfix). Passt nichts Genaueres, greift die
|
||||
**Standardroute** `0.0.0.0/0` – meist Richtung Internet.
|
||||
- **Routen entstehen** von selbst für direkt angeschlossene Netze, statisch von Hand oder
|
||||
dynamisch über Routingprotokolle. Im kleinen Betrieb reichen fast immer direkt
|
||||
angeschlossene Netze und eine Standardroute.
|
||||
- **Zwischen VLANs** routet der Router, die Firewall oder ein Layer-3-Switch. Steht dort eine
|
||||
Firewall, wird aus „getrennt" endlich „geregelt".
|
||||
- **Eine Firewallregel** besteht aus Quelle, Ziel, Dienst (Protokoll und Port) und Aktion.
|
||||
Gute Regeln sind so eng wie möglich: nicht „Verwaltung darf ins Servernetz", sondern
|
||||
„Verwaltung darf den Dateiserver über SMB".
|
||||
- **Von oben nach unten, erste Regel gewinnt.** Eine weite Erlaubnis oben macht jede Sperre
|
||||
darunter wirkungslos. Spezielle Regeln nach oben, allgemeine nach unten.
|
||||
- **Grundregel blockieren.** Was nicht ausdrücklich erlaubt ist, ist verboten – nicht
|
||||
umgekehrt.
|
||||
- **Zustandsbehaftet:** Antworten auf erlaubte Verbindungen kommen von selbst durch. Eine
|
||||
zweite Regel für die Rückrichtung ist überflüssig und meist ein Zeichen dafür, dass jemand
|
||||
das Prinzip nicht kannte.
|
||||
- **Jede Regel braucht eine Beschreibung** mit Zweck und Ticketnummer. Eine Regel, deren Zweck
|
||||
niemand kennt, traut sich keiner zu löschen.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Nr. | Quelle | Ziel | Dienst | Aktion | Zweck |
|
||||
|---|---|---|---|---|---|
|
||||
| 1 | Gäste | Firewall (Gateway Gäste) | DNS | erlauben | Namensauflösung |
|
||||
| 2 | Gäste | alle internen Netze | alle | blockieren | Gäste bleiben draußen |
|
||||
| 3 | Gäste | beliebig | HTTP, HTTPS | erlauben | Internetzugang |
|
||||
| 4 | Verwaltung | Dateiserver | SMB | erlauben | Ablagen |
|
||||
| 5 | Verwaltung | Druckernetz | Druckdienst | erlauben | Drucken |
|
||||
| 6 | beliebig | beliebig | alle | blockieren | Grundregel |
|
||||
|
||||
Regel 1 steht vor der Sperre, weil das Gateway der Gäste – hier 10.10.90.1 – selbst in einem
|
||||
internen Adressbereich liegt. Andersherum würde Regel 2 auch die Namensauflösung sperren.
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Ein Router hat folgende Einträge: `0.0.0.0/0 → 192.0.2.1`,
|
||||
`10.10.0.0/16 → 10.0.0.2`, `10.10.30.0/24 → 10.0.0.3`. Wohin leitet er Pakete an
|
||||
10.10.30.7, 10.10.40.5 und 8.8.8.8? Begründen Sie.
|
||||
|
||||
**Antwort:** 10.10.30.7 passt auf alle drei Einträge; gewählt wird der genaueste,
|
||||
`10.10.30.0/24`, also an 10.0.0.3. 10.10.40.5 passt auf `10.10.0.0/16` und die
|
||||
Standardroute; der genauere Eintrag gewinnt, also an 10.0.0.2. 8.8.8.8 passt nur auf die
|
||||
Standardroute und geht an 192.0.2.1. Maßgeblich ist jeweils die Präfixlänge, nicht die
|
||||
Reihenfolge der Einträge in der Tabelle.
|
||||
@@ -0,0 +1,61 @@
|
||||
---
|
||||
id: N7
|
||||
titel: WLAN im Betrieb – Frequenzen, Verschlüsselung, Gästenetz
|
||||
block: netzwerk
|
||||
woche: 11
|
||||
worum: Ein Funknetz, das zu Hause genügt, genügt im Betrieb selten. Entscheidend sind Ausleuchtung, getrennte Netze und Zugangsdaten, die man einer einzelnen Person wieder wegnehmen kann.
|
||||
rahmenplan: [B2, A6, A2]
|
||||
lernfeld: LF9
|
||||
merksatz: Mitarbeiter mit eigenem Zugang, Gäste im eigenen VLAN, Kanäle so verteilt, dass sich die Access Points nicht gegenseitig stören.
|
||||
karten:
|
||||
- frage: Welche Kanäle nutzt man im 2,4-GHz-Band, damit sich benachbarte Access Points nicht stören?
|
||||
antwort: Die Kanäle 1, 6 und 11. Sie überlappen sich nicht. Alle anderen Kombinationen stören sich gegenseitig.
|
||||
- frage: Was unterscheidet WPA2/WPA3-Personal von WPA2/WPA3-Enterprise?
|
||||
antwort: Bei Personal teilen sich alle denselben Schlüssel – wer ihn kennt, ist drin, und entziehen lässt er sich nur, indem man ihn für alle ändert. Bei Enterprise meldet sich jeder mit eigenen Zugangsdaten über 802.1X und einen RADIUS-Server an; ein einzelner Zugang lässt sich sperren.
|
||||
- frage: Wie richtet man ein Gäste-WLAN sicher ein?
|
||||
antwort: Eigenes Funknetz in einem eigenen VLAN mit eigenem Subnetz, Firewallregeln, die nur den Weg ins Internet erlauben, Isolation der Gäste untereinander und ein regelmäßig wechselnder Schlüssel oder Zugangscodes.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **2,4 GHz** reicht weiter und durch Wände, hat aber nur drei überlappungsfreie Kanäle:
|
||||
**1, 6 und 11**. Es ist voll mit Nachbarnetzen, Bluetooth und Mikrowellen.
|
||||
- **5 GHz** hat viele Kanäle und mehr Durchsatz, aber weniger Reichweite. Im Büro die erste
|
||||
Wahl. **6 GHz** (ab Wi-Fi 6E) bietet noch mehr freie Kanäle, setzt aber passende Endgeräte
|
||||
voraus.
|
||||
- **Ausleuchten statt raten.** Wo Access Points hängen, entscheidet eine Messung vor Ort,
|
||||
nicht der Grundriss. Stahlregale im Lager und Brandschutztüren dämpfen mehr als jede
|
||||
Rigipswand.
|
||||
- **Mehr Access Points mit geringerer Sendeleistung** sind besser als wenige mit voller
|
||||
Leistung. Ein Endgerät, das am fernen Access Point festhängt, bremst alle anderen.
|
||||
- **WPA3**, wo die Geräte es können, sonst WPA2 mit AES. WEP und WPA (ohne Zahl) sind
|
||||
gebrochen.
|
||||
- **Mitarbeiter über Enterprise (802.1X):** jeder mit eigenen Zugangsdaten oder einem
|
||||
Gerätezertifikat. Verlässt jemand den Betrieb, wird sein Zugang gesperrt – nicht der
|
||||
Schlüssel für alle geändert.
|
||||
- **Gäste in ein eigenes VLAN**, nur Internet, keine internen Netze, untereinander isoliert.
|
||||
Den Schlüssel regelmäßig wechseln oder Tageszugänge ausgeben.
|
||||
- **Zentral verwalten:** Bei mehr als zwei, drei Access Points gehört ein Controller dazu,
|
||||
der Kanäle, Sendeleistung und Einstellungen einheitlich hält.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Funknetz | Verschlüsselung | VLAN | Darf |
|
||||
|---|---|---|---|
|
||||
| Firma | WPA3-Enterprise (802.1X) | Verwaltung | wie ein Kabelanschluss der Verwaltung |
|
||||
| Lager-Scanner | WPA2/WPA3-Personal, eigener Schlüssel | Produktion | nur die Lagerverwaltung |
|
||||
| Gäste | WPA2/WPA3-Personal, wechselnder Schlüssel | Gäste | nur Internet, isoliert |
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Im Betrieb wird ein einziges WLAN mit gemeinsamem Schlüssel für Mitarbeiter und
|
||||
Gäste genutzt. Ein ehemaliger Mitarbeiter kennt den Schlüssel. Beschreiben Sie die Risiken
|
||||
und eine bessere Lösung.
|
||||
|
||||
**Antwort:** Risiken: Jeder, der den Schlüssel kennt – auch ehemalige Mitarbeiter und Gäste –,
|
||||
ist im selben Netz wie die internen Systeme und kann sie erreichen. Entziehen lässt sich der
|
||||
Zugang nur, indem man den Schlüssel für alle ändert und auf allen Geräten neu einträgt.
|
||||
Bessere Lösung: (1) Ein Funknetz für Mitarbeiter mit WPA2/WPA3-Enterprise über 802.1X und
|
||||
einen RADIUS-Server, angebunden an die Benutzerkonten – ein ausgeschiedener Mitarbeiter wird
|
||||
mit seinem Konto gesperrt. (2) Ein getrenntes Gästenetz in eigenem VLAN, das per Firewall nur
|
||||
ins Internet darf und Gäste untereinander isoliert, mit regelmäßig wechselndem Schlüssel.
|
||||
@@ -0,0 +1,74 @@
|
||||
---
|
||||
id: P1
|
||||
titel: PowerShell – Befehle, Pipeline und Objekte
|
||||
block: programmierung
|
||||
woche: 7
|
||||
worum: PowerShell reicht keine Texte weiter, sondern Objekte mit Eigenschaften. Wer das verstanden hat, braucht kein Textschnipseln mehr.
|
||||
rahmenplan: [A10, B3]
|
||||
lernfeld: LF5
|
||||
merksatz: Verb-Substantiv finden, Get-Member fragen, filtern, sortieren, auswählen – formatiert wird erst ganz am Ende.
|
||||
karten:
|
||||
- frage: Wie sind die Befehle (Cmdlets) in PowerShell benannt, und wie findet man einen unbekannten Befehl?
|
||||
antwort: Nach dem Muster Verb-Substantiv, etwa Get-Service oder Stop-Process. Get-Command mit einem Suchbegriff findet Befehle, Get-Help erklärt sie mit Beispielen.
|
||||
- frage: Was unterscheidet die Pipeline in PowerShell von der in einer klassischen Linux-Shell?
|
||||
antwort: In PowerShell wandern Objekte mit Eigenschaften durch die Pipeline, nicht Textzeilen. Man filtert nach Eigenschaften wie Status oder Name, statt Spalten aus Text herauszuschneiden.
|
||||
- frage: Wozu dient Get-Member?
|
||||
antwort: Es zeigt, welche Eigenschaften und Methoden die Objekte haben, die ein Befehl liefert – also womit man in der Pipeline weiterarbeiten kann.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Verb-Substantiv:** `Get-Service`, `Get-Process`, `Get-ChildItem`, `Stop-Service`. Die
|
||||
Verben sind festgelegt – `Get` liest, `Set` ändert, `New` legt an, `Remove` löscht.
|
||||
- **Selbst finden statt googeln:** `Get-Command *service*` findet Befehle,
|
||||
`Get-Help Get-Service -Examples` zeigt Beispiele. Einmal `Update-Help` als Administrator.
|
||||
- **Objekte statt Text.** `Get-Service` liefert Dienstobjekte mit Eigenschaften wie `Name`,
|
||||
`Status` und `StartType`. Welche es gibt, verrät `Get-Service | Get-Member`.
|
||||
- **Die vier Werkzeuge der Pipeline:**
|
||||
- `Where-Object` filtert: `Where-Object Status -eq 'Stopped'`
|
||||
- `Sort-Object` sortiert: `Sort-Object Name`
|
||||
- `Select-Object` wählt Eigenschaften oder Anzahl: `Select-Object Name, Status -First 10`
|
||||
- `ForEach-Object` tut etwas mit jedem Objekt
|
||||
- **Vergleiche** heißen `-eq`, `-ne`, `-gt`, `-lt`, `-like` (mit `*` als Platzhalter) und
|
||||
`-match` (regulärer Ausdruck). Groß- und Kleinschreibung spielt dabei keine Rolle.
|
||||
- **Ausgeben und weitergeben:** `Export-Csv` schreibt eine Tabelle für Excel,
|
||||
`Out-File` eine Textdatei. `Format-Table` gehört nur ans Ende – danach sind es keine
|
||||
verwertbaren Objekte mehr.
|
||||
- **Erst lesen, dann ändern.** Jeder Befehl, der etwas verändert, kennt `-WhatIf`: Er sagt,
|
||||
was er tun würde, und tut es nicht.
|
||||
|
||||
## Übersicht
|
||||
|
||||
```powershell
|
||||
# Alle beendeten Dienste, die automatisch starten sollten
|
||||
Get-Service |
|
||||
Where-Object { $_.Status -eq 'Stopped' -and $_.StartType -eq 'Automatic' } |
|
||||
Sort-Object Name |
|
||||
Select-Object Name, DisplayName
|
||||
|
||||
# Die fünf Prozesse mit dem höchsten Speicherverbrauch
|
||||
Get-Process | Sort-Object WorkingSet -Descending | Select-Object -First 5 Name, Id, WorkingSet
|
||||
|
||||
# Dateien im Downloadordner, älter als 90 Tage, als Tabelle für Excel
|
||||
Get-ChildItem $HOME\Downloads -File |
|
||||
Where-Object LastWriteTime -lt (Get-Date).AddDays(-90) |
|
||||
Select-Object Name, Length, LastWriteTime |
|
||||
Export-Csv alte-downloads.csv -NoTypeInformation -Encoding UTF8
|
||||
```
|
||||
|
||||
`$_` steht innerhalb der geschweiften Klammern für das Objekt, das gerade durch die Pipeline
|
||||
kommt.
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Schreiben Sie eine PowerShell-Befehlszeile, die alle laufenden Dienste
|
||||
alphabetisch sortiert mit Name und Anzeigename in die Datei `dienste.csv` schreibt, und
|
||||
erklären Sie jeden Teil.
|
||||
|
||||
**Antwort:**
|
||||
`Get-Service | Where-Object Status -eq 'Running' | Sort-Object Name | Select-Object Name, DisplayName | Export-Csv dienste.csv -NoTypeInformation`
|
||||
– `Get-Service` liefert alle Dienste als Objekte. `Where-Object` lässt nur die durch, deren
|
||||
Eigenschaft `Status` den Wert `Running` hat. `Sort-Object Name` sortiert nach dem Namen.
|
||||
`Select-Object` behält nur die beiden gewünschten Eigenschaften. `Export-Csv` schreibt das
|
||||
Ergebnis als Tabelle; `-NoTypeInformation` unterdrückt die Typzeile, die ältere
|
||||
PowerShell-Fassungen sonst an den Anfang setzen.
|
||||
@@ -0,0 +1,81 @@
|
||||
---
|
||||
id: P2
|
||||
titel: Variablen, Bedingungen und Schleifen
|
||||
block: programmierung
|
||||
woche: 7
|
||||
worum: Drei Bausteine reichen für fast jedes Verwaltungsskript – sich etwas merken, eine Entscheidung treffen, etwas wiederholen.
|
||||
rahmenplan: [A10, A4]
|
||||
lernfeld: LF5
|
||||
merksatz: Merken mit $, entscheiden mit if, wiederholen mit foreach. Der Rest ist Übung.
|
||||
karten:
|
||||
- frage: Was ist der Unterschied zwischen "Hallo $name" und 'Hallo $name' in PowerShell?
|
||||
antwort: In doppelten Anführungszeichen wird die Variable durch ihren Wert ersetzt, also etwa „Hallo Anna". In einfachen Anführungszeichen bleibt der Text genau so stehen, wie er geschrieben ist.
|
||||
- frage: Was gibt dieses Skript aus – $summe = 0; foreach ($z in 1..5) { if ($z % 2 -eq 0) { $summe += $z } }; $summe
|
||||
antwort: 6. Die Schleife läuft über 1 bis 5, die Bedingung lässt nur gerade Zahlen durch (Rest bei Division durch 2 ist 0), also werden 2 und 4 addiert.
|
||||
- frage: Wann nimmt man foreach als Schleife und wann ForEach-Object?
|
||||
antwort: foreach für eine Liste, die schon in einer Variablen liegt – übersichtlich und schnell. ForEach-Object mitten in einer Pipeline, wenn die Objekte direkt aus einem Befehl kommen.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Variablen** beginnen mit `$`: `$pfad = 'D:\Daten'`. Sie können alles aufnehmen – Text,
|
||||
Zahlen, Listen, ganze Objekte aus einem Befehl: `$dienste = Get-Service`.
|
||||
- **Text:** In `"…"` werden Variablen eingesetzt, in `'…'` nicht. Für Eigenschaften im Text:
|
||||
`"Freier Platz: $($laufwerk.FreeSpace)"`.
|
||||
- **Listen** entstehen mit `@('PC-001', 'PC-002')` oder als Bereich `1..10`. Das erste Element
|
||||
ist `$liste[0]`, die Anzahl `$liste.Count`.
|
||||
- **Eigene Objekte** für Berichte: `[PSCustomObject]@{ Name = $n; Status = $s }`. Daraus
|
||||
wird mit `Export-Csv` eine saubere Tabelle.
|
||||
- **Bedingungen:** `if (…) { … } elseif (…) { … } else { … }`. In der Klammer steht ein
|
||||
Vergleich mit `-eq`, `-gt`, `-like` usw. – **nicht** mit `=`, das ist eine Zuweisung.
|
||||
- **Verknüpfen** mit `-and`, `-or`, `-not`.
|
||||
- **Schleifen:** `foreach ($pc in $rechner) { … }` geht jedes Element durch.
|
||||
`while (…) { … }` läuft, solange die Bedingung gilt – und braucht deshalb etwas, das sie
|
||||
irgendwann falsch werden lässt.
|
||||
- **Rechnen:** `+ - * /` und `%` für den Rest einer Division. `1GB` ist für PowerShell eine
|
||||
Zahl, `$bytes / 1GB` rechnet also direkt in Gigabyte um.
|
||||
|
||||
## Übersicht
|
||||
|
||||
```powershell
|
||||
$grenze = 15 # Prozent freier Platz, ab dem gewarnt wird
|
||||
|
||||
$laufwerke = Get-CimInstance -ClassName Win32_LogicalDisk -Filter 'DriveType = 3'
|
||||
|
||||
foreach ($lw in $laufwerke) {
|
||||
$frei = [math]::Round($lw.FreeSpace / $lw.Size * 100, 1)
|
||||
|
||||
if ($frei -lt $grenze) {
|
||||
Write-Warning "$($lw.DeviceID) hat nur noch $frei % frei."
|
||||
}
|
||||
else {
|
||||
Write-Output "$($lw.DeviceID): $frei % frei – in Ordnung."
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
`DriveType = 3` sind lokale Festplatten; USB-Sticks (2) und Netzlaufwerke (4) bleiben außen vor.
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Schreiben Sie ein kurzes PowerShell-Skript, das für eine Liste von drei
|
||||
Rechnernamen prüft, ob sie per Ping erreichbar sind, und für jeden Rechner „erreichbar" oder
|
||||
„nicht erreichbar" ausgibt.
|
||||
|
||||
**Antwort:**
|
||||
|
||||
```powershell
|
||||
$rechner = @('PC-001', 'PC-002', 'PC-003')
|
||||
foreach ($pc in $rechner) {
|
||||
if (Test-Connection -ComputerName $pc -Count 1 -Quiet) {
|
||||
Write-Output "$pc erreichbar"
|
||||
}
|
||||
else {
|
||||
Write-Output "$pc nicht erreichbar"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Die Liste wird in einer Variablen gehalten, `foreach` geht jeden Namen durch.
|
||||
`Test-Connection -Quiet` liefert statt einer ausführlichen Ausgabe nur wahr oder falsch,
|
||||
was die `if`-Bedingung direkt auswertet.
|
||||
@@ -0,0 +1,86 @@
|
||||
---
|
||||
id: P3
|
||||
titel: Ein Skript schreiben, das man in einem Jahr noch versteht
|
||||
block: programmierung
|
||||
woche: 7
|
||||
worum: Ein Skript, das nur sein Verfasser bedienen kann, ist eine Abhängigkeit. Ein gutes Skript erklärt sich, prüft seine Eingaben und meldet Fehler, statt sie zu verschweigen.
|
||||
rahmenplan: [A10, A4, A5]
|
||||
lernfeld: LF5
|
||||
merksatz: Sagen, was es tut. Prüfen, was hineinkommt. Melden, was schiefgeht. Erst mit -WhatIf laufen lassen.
|
||||
karten:
|
||||
- frage: Wozu dient ein param-Block am Anfang eines Skripts?
|
||||
antwort: Er legt fest, welche Eingaben das Skript erwartet, mit Typ und ob sie Pflicht sind. Werte stehen dann nicht fest im Code, und PowerShell fragt fehlende Pflichtangaben selbst ab.
|
||||
- frage: Warum fängt ein try-catch-Block manche Fehler nicht ab, und wie behebt man das?
|
||||
antwort: Viele Cmdlets melden Fehler nur und laufen weiter (nicht abbrechende Fehler). Mit -ErrorAction Stop am Befehl wird daraus ein abbrechender Fehler, den catch auffängt.
|
||||
- frage: Was bewirkt die Ausführungsrichtlinie RemoteSigned?
|
||||
antwort: Selbst geschriebene, lokale Skripte laufen; aus dem Internet heruntergeladene Skripte nur, wenn sie signiert sind. Sie schützt vor versehentlichem Ausführen, ist aber keine Sicherheitsgrenze.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Ein Kopf mit Hilfe:** Ein Block `<# .SYNOPSIS … .EXAMPLE … #>` ganz oben macht das
|
||||
Skript für `Get-Help .\skript.ps1` lesbar. Darin steht, was es tut, was es braucht und ein
|
||||
Beispielaufruf.
|
||||
- **Eingaben als Parameter**, nicht fest im Code: Pfade, Rechnernamen und Grenzwerte gehören
|
||||
in den `param()`-Block. `[Parameter(Mandatory)]` macht eine Angabe zur Pflicht.
|
||||
- **Namen, die etwas sagen:** `$freierPlatzProzent` statt `$x`. Kommentare erklären das
|
||||
**Warum**, nicht das Was – das Was steht im Code.
|
||||
- **Fehler nicht verschlucken.** `try { … -ErrorAction Stop } catch { … }` fängt Fehler auf
|
||||
und meldet sie verständlich. Ein leerer `catch`-Block ist schlimmer als gar keiner.
|
||||
- **Erst trocken, dann echt.** Mit `[CmdletBinding(SupportsShouldProcess)]` bekommt das eigene
|
||||
Skript `-WhatIf`. Ein Skript, das löscht, ändert oder verschiebt, läuft zuerst so.
|
||||
- **Klein anfangen und testen.** Erst an einem Testrechner, dann an einem echten, dann an
|
||||
allen. Jede Stufe mit Blick auf die Ausgabe.
|
||||
- **Versionieren.** Skripte gehören in ein Git-Repository der IT, nicht auf den Desktop. So
|
||||
sieht man, wer wann was geändert hat, und kommt zur letzten funktionierenden Fassung zurück.
|
||||
- **Ausführungsrichtlinie:** Auf Clients ist meist `RemoteSigned` eingestellt. Sie verhindert
|
||||
versehentliches Ausführen fremder Skripte, ist aber keine Sicherheitsgrenze.
|
||||
|
||||
## Übersicht
|
||||
|
||||
```powershell
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Löscht Protokolldateien, die älter als eine bestimmte Anzahl Tage sind.
|
||||
.EXAMPLE
|
||||
.\Protokolle-Aufraeumen.ps1 -Pfad D:\Logs -Tage 30 -WhatIf
|
||||
#>
|
||||
[CmdletBinding(SupportsShouldProcess)]
|
||||
param(
|
||||
[Parameter(Mandatory)][string]$Pfad,
|
||||
[int]$Tage = 30
|
||||
)
|
||||
|
||||
if (-not (Test-Path $Pfad)) {
|
||||
throw "Den Pfad $Pfad gibt es nicht."
|
||||
}
|
||||
|
||||
$stichtag = (Get-Date).AddDays(-$Tage)
|
||||
$alt = Get-ChildItem $Pfad -Filter *.log -File | Where-Object LastWriteTime -lt $stichtag
|
||||
|
||||
foreach ($datei in $alt) {
|
||||
if ($PSCmdlet.ShouldProcess($datei.FullName, 'Löschen')) {
|
||||
try {
|
||||
Remove-Item $datei.FullName -ErrorAction Stop
|
||||
}
|
||||
catch {
|
||||
Write-Warning "Konnte $($datei.Name) nicht löschen: $($_.Exception.Message)"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Ein Kollege hat ein Skript geschrieben, das auf allen Rechnern temporäre Dateien
|
||||
löscht. Pfad und Rechnerliste stehen fest im Code, Fehler werden nicht behandelt. Nennen Sie
|
||||
vier Verbesserungen und begründen Sie sie.
|
||||
|
||||
**Antwort:** (1) Pfad und Rechnerliste als Parameter übergeben – das Skript lässt sich dann
|
||||
für andere Fälle nutzen, ohne den Code zu ändern. (2) `-WhatIf` unterstützen und das Skript
|
||||
zuerst trocken laufen lassen – bei einem löschenden Skript lässt sich so vorab prüfen, was
|
||||
betroffen wäre. (3) Fehlerbehandlung mit `try`/`catch` und `-ErrorAction Stop` – damit nicht
|
||||
erreichbare Rechner oder gesperrte Dateien gemeldet und nicht stillschweigend übergangen
|
||||
werden. (4) Einen Hilfeblock mit Beschreibung und Beispiel ergänzen und das Skript im
|
||||
Repository der IT versionieren – so kann es auch jemand anderes betreuen. Ebenfalls richtig:
|
||||
Eingaben prüfen, z. B. mit `Test-Path`, und ein Protokoll der gelöschten Dateien schreiben.
|
||||
@@ -0,0 +1,95 @@
|
||||
---
|
||||
id: P4
|
||||
titel: Pseudocode, Struktogramm und Schreibtischtest
|
||||
block: programmierung
|
||||
woche: 16
|
||||
worum: In der Prüfung schreibt man keinen lauffähigen Code, sondern beschreibt den Ablauf so, dass ihn jeder umsetzen kann. Drei Bausteine genügen – Folge, Verzweigung, Schleife.
|
||||
rahmenplan: [A10, A4]
|
||||
lernfeld: LF5
|
||||
merksatz: Erst den Ablauf in Worten, dann in Pseudocode. Jede Schleife braucht ein Ende. Mit einem Schreibtischtest prüfen, bevor man abgibt.
|
||||
karten:
|
||||
- frage: Was unterscheidet eine kopfgesteuerte von einer fußgesteuerten Schleife?
|
||||
antwort: Die kopfgesteuerte Schleife (SOLANGE … ENDE SOLANGE) prüft die Bedingung vor jedem Durchlauf und läuft unter Umständen gar nicht. Die fußgesteuerte (WIEDERHOLE … BIS) prüft erst danach und läuft deshalb mindestens einmal.
|
||||
- frage: Was ist ein Schreibtischtest?
|
||||
antwort: Man spielt einen Algorithmus von Hand mit Beispielwerten durch und notiert in einer Tabelle nach jedem Schritt die Werte aller Variablen. So findet man Fehler, ohne den Code auszuführen.
|
||||
- frage: Was liefert dieser Ablauf für die Liste 72, 91, 85, 60 – zaehler ← 0; FÜR jeden wert IN liste – WENN wert > 80 DANN zaehler ← zaehler + 1?
|
||||
antwort: 2, denn nur 91 und 85 sind größer als 80.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Drei Bausteine** reichen für jeden Ablauf: **Folge** (Schritt für Schritt), **Verzweigung**
|
||||
(WENN … DANN … SONST), **Schleife** (wiederholen, bis etwas erreicht ist).
|
||||
- **Pseudocode** ist strukturierte Umgangssprache mit festen Schlüsselwörtern. In der Prüfung
|
||||
gibt es keine verbindliche Schreibweise; wichtig ist, dass Einrückung und Schlüsselwörter
|
||||
eindeutig zeigen, was wozu gehört.
|
||||
- **Zuweisung:** `summe ← 0` – die Variable bekommt einen Wert. Vergleich: `summe = 0`.
|
||||
- **Schleifen:**
|
||||
- `FÜR i ← 1 BIS n` – Anzahl der Durchläufe steht vorher fest
|
||||
- `SOLANGE bedingung` – kopfgesteuert, prüft vorher, läuft eventuell nie
|
||||
- `WIEDERHOLE … BIS bedingung` – fußgesteuert, läuft mindestens einmal
|
||||
- **Struktogramm (Nassi-Shneiderman):** Der Ablauf als Kasten; eine Verzweigung teilt den Kasten
|
||||
mit einem Dreieck in Ja und Nein, eine Schleife umschließt die zu wiederholenden Schritte.
|
||||
Sprünge gibt es nicht.
|
||||
- **Programmablaufplan (PAP):** Ablauf mit Symbolen nach DIN 66001 – Oval für Start und Ende,
|
||||
Rechteck für Tätigkeiten, Raute für Entscheidungen, Parallelogramm für Ein- und Ausgabe.
|
||||
- **Schreibtischtest:** Beispielwerte wählen, Schritt für Schritt durchgehen und die Werte aller
|
||||
Variablen in einer Tabelle festhalten. Grenzfälle mitnehmen: leere Liste, ein Element, genau
|
||||
der Grenzwert.
|
||||
|
||||
## Übersicht
|
||||
|
||||
Gesucht: Wie viele Server haben mehr als 80 % Plattenbelegung, und wie hoch ist die höchste?
|
||||
|
||||
```
|
||||
anzahlKritisch ← 0
|
||||
maximum ← belegung[0]
|
||||
FÜR i ← 0 BIS laenge(belegung) − 1
|
||||
WENN belegung[i] > 80 DANN
|
||||
anzahlKritisch ← anzahlKritisch + 1
|
||||
ENDE WENN
|
||||
WENN belegung[i] > maximum DANN
|
||||
maximum ← belegung[i]
|
||||
ENDE WENN
|
||||
ENDE FÜR
|
||||
AUSGABE anzahlKritisch, maximum
|
||||
```
|
||||
|
||||
Schreibtischtest mit `belegung = [72, 91, 85, 60]` – „Wert" ist `belegung[i]`, „Anzahl" ist
|
||||
`anzahlKritisch`, „Max." ist `maximum`:
|
||||
|
||||
| i | Wert | > 80? | Anzahl | Max. |
|
||||
|---|---|---|---|---|
|
||||
| – | – | – | 0 | 72 |
|
||||
| 0 | 72 | nein | 0 | 72 |
|
||||
| 1 | 91 | ja | 1 | 91 |
|
||||
| 2 | 85 | ja | 2 | 91 |
|
||||
| 3 | 60 | nein | 2 | 91 |
|
||||
|
||||
Ausgabe: 2 und 91.
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Ein Prüfprogramm erhält eine Liste von Messwerten. Ein Wert ist in Ordnung, wenn er
|
||||
zwischen 9,8 und 10,2 liegt (Grenzen eingeschlossen). Schreiben Sie einen Pseudocode, der
|
||||
ausgibt, wie viele Werte außerhalb der Toleranz liegen, und ob mehr als 5 % der Werte betroffen
|
||||
sind.
|
||||
|
||||
**Antwort:**
|
||||
|
||||
```
|
||||
ausserhalb ← 0
|
||||
FÜR jeden wert IN messwerte
|
||||
WENN wert < 9,8 ODER wert > 10,2 DANN
|
||||
ausserhalb ← ausserhalb + 1
|
||||
ENDE WENN
|
||||
ENDE FÜR
|
||||
AUSGABE ausserhalb
|
||||
WENN laenge(messwerte) > 0 UND ausserhalb / laenge(messwerte) > 0,05 DANN
|
||||
AUSGABE "Mehr als 5 % außerhalb der Toleranz"
|
||||
ENDE WENN
|
||||
```
|
||||
|
||||
Die Bedingung prüft beide Grenzen mit ODER, weil ein Wert entweder zu klein oder zu groß sein
|
||||
kann. Die Grenzwerte selbst gelten als in Ordnung, deshalb `<` und `>` statt `≤` und `≥`. Die
|
||||
Prüfung auf eine leere Liste verhindert eine Division durch null.
|
||||
@@ -0,0 +1,64 @@
|
||||
---
|
||||
id: S10
|
||||
titel: Protokolle lesen – und warum die Uhrzeit stimmen muss
|
||||
block: system
|
||||
woche: 14
|
||||
worum: Protokolle sagen, was passiert ist. Aber nur, wenn man weiß, wo man suchen muss, und wenn die Uhren aller Systeme übereinstimmen.
|
||||
rahmenplan: [A8, A6, B3]
|
||||
lernfeld: LF11
|
||||
merksatz: Zeitpunkt eingrenzen, dann suchen. Alle Uhren per NTP gleich. Protokolle enthalten personenbezogene Daten.
|
||||
karten:
|
||||
- frage: Welche drei Protokolle der Windows-Ereignisanzeige sind für die Fehlersuche am wichtigsten?
|
||||
antwort: System (Treiber, Dienste, Neustarts), Anwendung (Meldungen der Programme) und Sicherheit (Anmeldungen, Zugriffe, Änderungen an Konten).
|
||||
- frage: Warum muss die Uhrzeit auf allen Systemen übereinstimmen?
|
||||
antwort: Damit sich Ereignisse aus verschiedenen Protokollen einander zuordnen lassen, und weil Kerberos-Anmeldungen im Active Directory scheitern, wenn die Uhren um mehr als fünf Minuten abweichen.
|
||||
- frage: Was bedeuten die Ereignis-IDs 4624 und 4625 im Sicherheitsprotokoll von Windows?
|
||||
antwort: 4624 ist eine erfolgreiche Anmeldung, 4625 eine fehlgeschlagene. Viele 4625 in kurzer Zeit für dasselbe Konto deuten auf Passwortraten hin.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Erst den Zeitpunkt eingrenzen, dann suchen.** „Seit wann?" ist die wichtigste Frage bei
|
||||
jeder Störung. Wer den Zeitraum kennt, findet die Ursache im Protokoll in Minuten statt
|
||||
Stunden.
|
||||
- **Windows – Ereignisanzeige:** Protokoll *System* für Dienste, Treiber und Neustarts,
|
||||
*Anwendung* für Programme, *Sicherheit* für Anmeldungen und Zugriffe. Filtern nach Zeitraum,
|
||||
Ebene (Fehler, Warnung) und Ereignis-ID.
|
||||
- **Linux – Journal:** `journalctl --since "2026-10-05 08:00" --until "09:00"`, `-u dienst`
|
||||
für einen Dienst, `-p err` für Fehler. Klassische Textdateien unter `/var/log`.
|
||||
- **Bekannte Ereignis-IDs sparen Zeit:** 4624 Anmeldung erfolgreich, 4625 fehlgeschlagen,
|
||||
4740 Konto gesperrt, 6008 unerwartetes Herunterfahren, 41 (Kernel-Power) Neustart ohne
|
||||
sauberes Herunterfahren.
|
||||
- **Zeitsynchronisation:** Alle Systeme beziehen ihre Zeit per **NTP** aus derselben Quelle –
|
||||
in einer Domäne vom Domänencontroller, dieser von einer verlässlichen externen Quelle.
|
||||
Weichen Uhren um mehr als fünf Minuten ab, scheitert die Anmeldung über Kerberos.
|
||||
- **Zentral sammeln:** Bei mehr als einer Handvoll Systeme gehören die Protokolle an einen
|
||||
zentralen Ort. Dann lässt sich eine Anmeldung über mehrere Systeme verfolgen – und ein
|
||||
Angreifer kann seine Spuren nicht auf dem befallenen System löschen.
|
||||
- **Protokolle sind personenbezogen.** Sie zeigen, wer sich wann wo angemeldet hat. Deshalb:
|
||||
Aufbewahrung begrenzen, Zugriff beschränken, nur für den vereinbarten Zweck auswerten.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Frage | Windows | Linux |
|
||||
|---|---|---|
|
||||
| Warum ist der Server neu gestartet? | System, Ereignis 6008 bzw. 41 und 1074 | `journalctl --list-boots`, `last -x reboot` |
|
||||
| Wer hat sich angemeldet? | Sicherheit, Ereignis 4624 | `last`, `journalctl -u ssh` |
|
||||
| Warum startet der Dienst nicht? | System, Quelle „Service Control Manager" | `systemctl status`, `journalctl -u dienst` |
|
||||
| Stimmt die Uhrzeit? | `w32tm /query /status` | `timedatectl` |
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Mehrere Benutzer können sich seit heute Morgen nicht mehr an der Domäne anmelden,
|
||||
andere schon. Die Fehlermeldung nennt einen Zeitunterschied. Erklären Sie die Ursache und Ihr
|
||||
Vorgehen.
|
||||
|
||||
**Antwort:** Die Anmeldung im Active Directory erfolgt über Kerberos, das nur eine geringe
|
||||
Abweichung der Uhrzeiten zwischen Client und Domänencontroller zulässt (standardmäßig fünf
|
||||
Minuten). Bei den betroffenen Rechnern geht die Uhr vermutlich falsch, etwa weil die
|
||||
Zeitsynchronisation nicht läuft oder eine leere CMOS-Batterie die Uhr nach einem Neustart
|
||||
zurückgesetzt hat. Vorgehen: (1) Auf einem betroffenen Client mit `w32tm /query /status`
|
||||
Zeitquelle und Abweichung prüfen. (2) Prüfen, ob der Domänencontroller selbst die richtige
|
||||
Zeit hat und von einer verlässlichen Quelle bezieht. (3) Die Zeit mit `w32tm /resync`
|
||||
synchronisieren und die Anmeldung testen. (4) Die Ursache beheben – Zeitdienst, Gruppenrichtlinie
|
||||
für die Zeitquelle oder Batterie – und die Zeitabweichung in die Überwachung aufnehmen.
|
||||
@@ -0,0 +1,64 @@
|
||||
---
|
||||
id: S11
|
||||
titel: Updates und Patches – planbar statt hektisch
|
||||
block: system
|
||||
woche: 14
|
||||
worum: Die meisten erfolgreichen Angriffe nutzen Lücken, für die es längst ein Update gibt. Patch-Management sorgt dafür, dass Updates zuverlässig ankommen, ohne dass dabei der Betrieb stehen bleibt.
|
||||
rahmenplan: [A8, A6, A5]
|
||||
lernfeld: LF11
|
||||
merksatz: Wissen, was läuft. Erst Test, dann Pilotgruppe, dann alle. Kritische Lücken sofort, der Rest im festen Takt.
|
||||
karten:
|
||||
- frage: In welcher Reihenfolge verteilt man Updates im Betrieb?
|
||||
antwort: Zuerst auf Testsysteme, dann auf eine kleine Pilotgruppe aus normalen Arbeitsplätzen, und erst wenn dort nach einigen Tagen nichts auffällt, auf alle. Server in einem angekündigten Wartungsfenster.
|
||||
- frage: Wann ist der Patchday von Microsoft?
|
||||
antwort: Am zweiten Dienstag jedes Monats. Für Lücken, die bereits aktiv ausgenutzt werden, erscheinen zusätzlich außerplanmäßige Updates.
|
||||
- frage: Was bedeutet End of Life bei Software, und was folgt daraus?
|
||||
antwort: Der Hersteller liefert keine Sicherheitsupdates mehr – neue Lücken bleiben für immer offen. Solche Software muss ersetzt oder, wenn das nicht sofort geht, vom Netz getrennt und besonders abgesichert werden. Beispiel – Windows 10 seit dem 14. Oktober 2025.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Ohne Bestand kein Patch-Management.** Man muss wissen, welche Geräte, Betriebssysteme und
|
||||
Programme mit welcher Version im Betrieb laufen. Was nicht in der Liste steht, wird auch nicht
|
||||
aktualisiert.
|
||||
- **Fester Takt:** Microsoft veröffentlicht am **zweiten Dienstag** im Monat. Viele Betriebe
|
||||
planen danach: Test in der Woche danach, Pilotgruppe, dann alle innerhalb von zwei bis drei
|
||||
Wochen.
|
||||
- **Ringe statt alle auf einmal:** Testsysteme, Pilotgruppe (die IT selbst und einige
|
||||
freiwillige Nutzer), dann alle. Ein fehlerhaftes Update trifft so zehn Rechner, nicht hundert.
|
||||
- **Kritische Lücken außer der Reihe.** Wird eine Lücke bereits aktiv ausgenutzt, wird sofort
|
||||
gehandelt – notfalls mit verkürztem Test. Hinweise liefern der Hersteller und die Warnungen
|
||||
des BSI.
|
||||
- **Nicht nur Windows:** Programme wie Browser und PDF-Leser, Firmware von Firewall, Switch, NAS
|
||||
und BIOS, Linux-Server, Smartphones. Gerade Netzwerkgeräte werden oft jahrelang vergessen.
|
||||
- **Server im Wartungsfenster**, angekündigt, mit Snapshot oder Sicherung vorher und einem
|
||||
Rückweg, falls etwas schiefgeht.
|
||||
- **Nachprüfen:** Kam das Update überall an? Ein Bericht über den Stand aller Geräte gehört zum
|
||||
Abschluss jedes Zyklus.
|
||||
- **End of Life im Blick behalten.** Software ohne Sicherheitsupdates wird rechtzeitig ersetzt –
|
||||
das Ende ist Jahre vorher bekannt.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Ring | Wer | Wann nach Veröffentlichung |
|
||||
|---|---|---|
|
||||
| 0 – Test | Testsysteme der IT | sofort |
|
||||
| 1 – Pilot | IT und einige freiwillige Nutzer | nach 2–3 Tagen |
|
||||
| 2 – Breit | alle Arbeitsplätze | nach etwa einer Woche |
|
||||
| 3 – Server | Server im Wartungsfenster | nach etwa zwei Wochen |
|
||||
| Notfall | alle betroffenen Systeme | sofort, bei aktiv ausgenutzter Lücke |
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** In Ihrem Betrieb werden Updates bisher „wenn jemand Zeit hat" eingespielt.
|
||||
Entwerfen Sie ein Vorgehen für das Patch-Management und begründen Sie zwei Bestandteile.
|
||||
|
||||
**Antwort:** (1) Einen vollständigen Bestand aller Geräte und Programme mit Version führen.
|
||||
(2) Einen festen Takt nach dem monatlichen Patchday festlegen. (3) Updates in Ringen verteilen:
|
||||
Testsysteme, Pilotgruppe, alle Arbeitsplätze, Server im angekündigten Wartungsfenster mit
|
||||
Sicherung vorher. (4) Für aktiv ausgenutzte Lücken ein beschleunigtes Notfallverfahren
|
||||
vorsehen. (5) Nach jedem Zyklus prüfen und berichten, auf welchem Stand alle Geräte sind.
|
||||
(6) Firmware von Netzwerkgeräten und Software ohne automatische Aktualisierung einbeziehen.
|
||||
Begründungen etwa: Die Ringe begrenzen den Schaden eines fehlerhaften Updates auf wenige
|
||||
Geräte. Der Bestand ist Voraussetzung, weil ein Gerät, das niemand kennt, auch nie aktualisiert
|
||||
wird – und genau dort sitzt dann die Lücke.
|
||||
@@ -0,0 +1,63 @@
|
||||
---
|
||||
id: S3
|
||||
titel: Datensicherung planen – voll, differenziell, inkrementell
|
||||
block: system
|
||||
woche: 8
|
||||
worum: Eine Sicherung ist erst dann geplant, wenn feststeht, wie viel Datenverlust und wie viel Ausfallzeit der Betrieb verkraftet.
|
||||
rahmenplan: [A9, A6, A8]
|
||||
lernfeld: LF4
|
||||
merksatz: Drei Kopien, zwei Medien, eine außer Haus – und eine, an die kein Angreifer herankommt.
|
||||
karten:
|
||||
- frage: Was ist der Unterschied zwischen einer inkrementellen und einer differenziellen Sicherung?
|
||||
antwort: Die inkrementelle sichert alles, was sich seit der letzten Sicherung gleich welcher Art geändert hat. Die differenzielle sichert alles seit der letzten Vollsicherung – sie wächst also jeden Tag, lässt sich aber schneller zurückspielen.
|
||||
- frage: Was braucht man, um am Donnerstag aus einer Vollsicherung vom Sonntag und täglichen inkrementellen Sicherungen wiederherzustellen?
|
||||
antwort: Die Vollsicherung vom Sonntag und alle inkrementellen Sicherungen von Montag bis Donnerstag, in dieser Reihenfolge. Bei differenziellen Sicherungen genügen die Vollsicherung und die vom Donnerstag.
|
||||
- frage: Was bedeuten RPO und RTO?
|
||||
antwort: RPO (Recovery Point Objective) ist der größte hinnehmbare Datenverlust, gemessen in Zeit – er bestimmt, wie oft gesichert wird. RTO (Recovery Time Objective) ist die größte hinnehmbare Ausfallzeit bis zur Wiederherstellung.
|
||||
- frage: Warum ist ein RAID keine Datensicherung?
|
||||
antwort: Ein RAID schützt nur vor dem Ausfall einer Festplatte. Gelöschte, verschlüsselte oder beschädigte Dateien sind auf allen Platten gleichzeitig weg – das RAID spiegelt den Schaden mit.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Erst die Anforderungen, dann die Technik.** Wie viel Arbeit darf verloren gehen (RPO)?
|
||||
Wie lange darf es dauern, bis wieder gearbeitet werden kann (RTO)? Die Antworten kommen
|
||||
aus der Schutzbedarfsfeststellung, nicht aus dem Datenblatt der Software.
|
||||
- **Vollsicherung:** alles, jedes Mal. Einfach zurückzuspielen, aber groß und langsam.
|
||||
- **Inkrementell:** nur das Geänderte seit der letzten Sicherung. Klein und schnell beim
|
||||
Sichern, beim Zurückspielen braucht man die ganze Kette.
|
||||
- **Differenziell:** das Geänderte seit der letzten Vollsicherung. Wächst bis zur nächsten
|
||||
Vollsicherung, zum Zurückspielen reichen zwei Sicherungen.
|
||||
- **3-2-1-Regel:** drei Kopien der Daten, auf zwei verschiedenen Medien, eine davon außer
|
||||
Haus. Gegen Ransomware kommt eine Kopie hinzu, die offline oder unveränderlich ist – sonst
|
||||
verschlüsselt der Angreifer die Sicherung gleich mit.
|
||||
- **Generationen:** Tägliche Sicherungen werden einige Tage aufbewahrt, wöchentliche einige
|
||||
Wochen, monatliche länger (Großvater-Vater-Sohn). So findet man auch einen Fehler, der erst
|
||||
nach drei Wochen auffällt.
|
||||
- **Keine Sicherung:** ein RAID, eine Synchronisation in die Cloud, ein Papierkorb. Alle drei
|
||||
übernehmen eine Löschung oder Verschlüsselung sofort.
|
||||
- **Sicherungen verschlüsseln**, wenn sie den Betrieb verlassen – und den Schlüssel so
|
||||
ablegen, dass man ihn im Notfall findet, ohne die Sicherung zu brauchen.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Art | Sichert | Zurückspielen braucht | Platzbedarf |
|
||||
|---|---|---|---|
|
||||
| Voll | alles | eine Sicherung | hoch |
|
||||
| Differenziell | Änderungen seit der letzten Vollsicherung | Vollsicherung + letzte differenzielle | mittel, wächst täglich |
|
||||
| Inkrementell | Änderungen seit der letzten Sicherung | Vollsicherung + alle inkrementellen seitdem | gering |
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Die Buchhaltung verkraftet höchstens vier Stunden Datenverlust und muss nach
|
||||
einem Ausfall am selben Arbeitstag wieder arbeiten können. Entwerfen Sie ein passendes
|
||||
Sicherungskonzept und begründen Sie es.
|
||||
|
||||
**Antwort:** Das RPO von vier Stunden verlangt mindestens alle vier Stunden während der
|
||||
Arbeitszeit eine Sicherung, etwa inkrementell um 10, 14 und 18 Uhr, ergänzt durch eine
|
||||
nächtliche differenzielle und eine wöchentliche Vollsicherung. Das RTO von einem halben
|
||||
Arbeitstag erfordert, dass die Sicherung schnell erreichbar ist – also eine Kopie auf einem
|
||||
Sicherungsspeicher im Haus. Nach der 3-2-1-Regel kommt eine Kopie außer Haus hinzu, eine
|
||||
davon offline oder unveränderlich gegen Ransomware. Aufbewahrt wird nach Generationen
|
||||
(z. B. 14 Tage täglich, 8 Wochen wöchentlich, 12 Monate monatlich). Das Konzept gilt erst als
|
||||
umgesetzt, wenn eine Wiederherstellung getestet und die benötigte Zeit gemessen wurde.
|
||||
@@ -0,0 +1,61 @@
|
||||
---
|
||||
id: S4
|
||||
titel: Wiederherstellen und testen – die Sicherung, die zählt
|
||||
block: system
|
||||
woche: 8
|
||||
worum: Niemand braucht eine Sicherung. Alle brauchen eine Wiederherstellung. Ob sie gelingt, weiß man nur, wenn man sie geübt hat.
|
||||
rahmenplan: [A9, A5, A8]
|
||||
lernfeld: LF4
|
||||
merksatz: Eine Sicherung, die nie zurückgespielt wurde, ist keine Sicherung – sondern eine Hoffnung.
|
||||
karten:
|
||||
- frage: Woran erkennt man, ob ein Wiederherstellungstest bestanden ist?
|
||||
antwort: Die Daten sind vollständig, lesbar und auf dem erwarteten Stand, die Anwendung arbeitet damit, und die gemessene Dauer liegt innerhalb des vereinbarten RTO.
|
||||
- frage: Warum gehört der Wiederherstellungsplan auch auf Papier?
|
||||
antwort: Weil er genau dann gebraucht wird, wenn Server, Wiki und Passwortmanager vielleicht nicht erreichbar sind. Ein Plan, der nur auf dem ausgefallenen System liegt, hilft niemandem.
|
||||
- frage: In welcher Reihenfolge stellt man nach einem Totalausfall die Systeme wieder her?
|
||||
antwort: Nach Abhängigkeiten und Schutzbedarf – zuerst die Grundlagen wie Netz, Verzeichnisdienst und Namensauflösung, dann die Systeme mit dem höchsten Verfügbarkeitsbedarf, zuletzt der Rest.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Regelmäßig testen**, nicht erst im Ernstfall. Eine einzelne Datei jeden Monat, eine
|
||||
ganze Anwendung oder ein ganzer Server mindestens einmal im Jahr und nach jeder größeren
|
||||
Änderung an der Sicherung.
|
||||
- **Auf eine Testumgebung zurückspielen**, nicht über das laufende System. Sonst wird aus
|
||||
dem Test der Ernstfall.
|
||||
- **Messen, nicht schätzen.** Wie lange hat das Zurückspielen gedauert – einschließlich
|
||||
Suchen, Anfordern des Mediums und Prüfen? Das ist die Zahl, die man mit dem RTO vergleicht.
|
||||
- **Das Ergebnis prüfen:** Öffnet sich die Datei, startet die Anwendung, stimmt der Stand?
|
||||
Eine fehlerfrei abgeschlossene Wiederherstellung mit leeren Dateien ist ein
|
||||
fehlgeschlagener Test.
|
||||
- **Protokollieren:** Datum, was zurückgespielt wurde, von welcher Sicherung, Dauer,
|
||||
Ergebnis, Auffälligkeiten. Das Protokoll ist der Nachweis gegenüber Geschäftsführung,
|
||||
Prüfern und Versicherung.
|
||||
- **Der Wiederherstellungsplan** nennt Reihenfolge, Zuständige, Zugangsdaten zum
|
||||
Sicherungssystem und den Ort der Schlüssel. Er liegt ausgedruckt an einem bekannten Ort.
|
||||
- **Reihenfolge nach Abhängigkeiten:** Ohne Netz, Verzeichnisdienst und Namensauflösung
|
||||
läuft keine Fachanwendung, egal wie wichtig sie ist.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Test | Wie oft | Zeigt |
|
||||
|---|---|---|
|
||||
| Einzelne Datei oder E-Mail | monatlich | Die Sicherung läuft und ist lesbar |
|
||||
| Ganzer Ordner mit Berechtigungen | vierteljährlich | Rechte kommen mit zurück |
|
||||
| Ganze Anwendung samt Datenbank | halbjährlich | Die Anwendung arbeitet mit den gesicherten Daten |
|
||||
| Ganzer Server bzw. virtuelle Maschine | jährlich | Das RTO ist einzuhalten |
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Die Sicherungssoftware meldet seit Monaten „erfolgreich". Warum genügt das nicht
|
||||
als Nachweis, und wie gehen Sie bei einem Wiederherstellungstest vor?
|
||||
|
||||
**Antwort:** Die Meldung bestätigt nur, dass der Sicherungsvorgang ohne Fehler beendet
|
||||
wurde – nicht, dass die richtigen Daten gesichert wurden, dass sie lesbar sind und dass sie
|
||||
sich in der geforderten Zeit zurückspielen lassen. Vorgehen: (1) Umfang und Ziel des Tests
|
||||
festlegen, etwa eine Anwendung samt Datenbank auf einen Testserver. (2) Die Wiederherstellung
|
||||
durchführen und die Zeit vom Beginn bis zur Arbeitsfähigkeit messen. (3) Das Ergebnis
|
||||
inhaltlich prüfen – Daten vollständig, Anwendung startet, Stand entspricht dem
|
||||
Sicherungszeitpunkt. (4) Das Ergebnis mit RPO und RTO vergleichen, protokollieren und
|
||||
Abweichungen als Maßnahme erfassen. (5) Die Testumgebung anschließend bereinigen, weil sie
|
||||
echte Daten enthält.
|
||||
@@ -0,0 +1,62 @@
|
||||
---
|
||||
id: S5
|
||||
titel: RAID, NAS und SAN – Speicher, der einen Ausfall übersteht
|
||||
block: system
|
||||
woche: 8
|
||||
worum: Festplatten fallen aus, das ist sicher. Ein RAID sorgt dafür, dass man es erst an der Warnmeldung merkt und nicht am Stillstand.
|
||||
rahmenplan: [A9, B1, A3]
|
||||
lernfeld: LF2
|
||||
merksatz: RAID gegen Plattenausfall, Sicherung gegen alles andere. Das eine ersetzt das andere nie.
|
||||
karten:
|
||||
- frage: Wie viel Speicher ist nutzbar, und wie viele Platten dürfen ausfallen – bei RAID 1, RAID 5 und RAID 6?
|
||||
antwort: RAID 1 – die Hälfte, eine Platte je Spiegel. RAID 5 – alle Platten bis auf eine, eine darf ausfallen. RAID 6 – alle Platten bis auf zwei, zwei dürfen ausfallen.
|
||||
- frage: Ein RAID 5 aus fünf Platten mit je 4 TB – wie viel ist nutzbar?
|
||||
antwort: 16 TB. Eine Platte entfällt auf die Paritätsinformation, also (5 − 1) × 4 TB.
|
||||
- frage: Worin unterscheiden sich NAS und SAN?
|
||||
antwort: Ein NAS stellt Dateien über das Netzwerk bereit, etwa per SMB oder NFS – die Clients sehen Freigaben. Ein SAN stellt Speicherblöcke bereit, etwa per iSCSI oder Fibre Channel – der Server sieht eine Festplatte und legt selbst ein Dateisystem an.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **RAID 0** verteilt die Daten auf mehrere Platten (Striping). Schnell, aber ohne jede
|
||||
Ausfallsicherheit: Fällt eine Platte aus, ist alles weg. Kein Einsatz für wichtige Daten.
|
||||
- **RAID 1** spiegelt zwei Platten. Halbe Kapazität, eine Platte darf ausfallen. Typisch für
|
||||
das Betriebssystem eines Servers.
|
||||
- **RAID 5** verteilt Daten und Paritätsinformation über mindestens drei Platten. Eine Platte
|
||||
darf ausfallen. Bei großen Platten ist der Wiederaufbau lang und belastet die übrigen
|
||||
Platten – fällt währenddessen eine zweite aus, sind die Daten verloren.
|
||||
- **RAID 6** wie RAID 5 mit doppelter Parität, mindestens vier Platten. Zwei Platten dürfen
|
||||
ausfallen. Heute die bessere Wahl für große Datenspeicher.
|
||||
- **RAID 10** ist ein Verbund aus Spiegeln (mindestens vier Platten). Halbe Kapazität, schnell
|
||||
beim Schreiben, je Spiegelpaar darf eine Platte ausfallen. Gut für Datenbanken.
|
||||
- **Hot-Spare:** eine Reserveplatte, die bei einem Ausfall sofort einspringt. Der
|
||||
Wiederaufbau beginnt, bevor jemand den Ausfall bemerkt.
|
||||
- **Überwachen:** Ein RAID mit ausgefallener Platte läuft weiter und sieht gesund aus.
|
||||
Ohne Benachrichtigung merkt man den ersten Ausfall erst am zweiten.
|
||||
- **NAS, SAN, DAS:** NAS liefert Dateien übers Netz, SAN liefert Speicherblöcke an Server, DAS
|
||||
hängt direkt an einem einzigen Server.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Stufe | Mindestens | Nutzbar bei n Platten | Darf ausfallen | Typischer Einsatz |
|
||||
|---|---|---|---|---|
|
||||
| RAID 0 | 2 | n | keine | Zwischenspeicher, Videoschnitt |
|
||||
| RAID 1 | 2 | n / 2 | eine | Systemplatten |
|
||||
| RAID 5 | 3 | n − 1 | eine | kleinere Datenspeicher |
|
||||
| RAID 6 | 4 | n − 2 | zwei | große Datenspeicher, NAS |
|
||||
| RAID 10 | 4 | n / 2 | eine je Spiegel | Datenbanken, virtuelle Maschinen |
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Für ein NAS stehen sechs Festplatten mit je 8 TB zur Verfügung. Vergleichen Sie
|
||||
RAID 5, RAID 6 und RAID 10 hinsichtlich nutzbarer Kapazität und Ausfallsicherheit und
|
||||
geben Sie eine Empfehlung.
|
||||
|
||||
**Antwort:** RAID 5: (6 − 1) × 8 TB = 40 TB nutzbar, eine Platte darf ausfallen. RAID 6:
|
||||
(6 − 2) × 8 TB = 32 TB, zwei beliebige Platten dürfen ausfallen. RAID 10: 6 / 2 × 8 TB = 24 TB,
|
||||
je Spiegelpaar darf eine Platte ausfallen – fallen beide Platten eines Paares aus, sind die
|
||||
Daten verloren. Empfehlung: RAID 6. Bei 8-TB-Platten dauert der Wiederaufbau viele Stunden;
|
||||
in dieser Zeit verträgt RAID 5 keinen weiteren Fehler, RAID 6 schon. RAID 10 wäre schneller
|
||||
beim Schreiben, kostet aber deutlich mehr Kapazität, und für ein NAS mit Dateiablagen ist
|
||||
die Schreibleistung meist nicht entscheidend. Unabhängig davon ersetzt keine RAID-Stufe die
|
||||
Datensicherung.
|
||||
@@ -0,0 +1,62 @@
|
||||
---
|
||||
id: S6
|
||||
titel: Linux – Dateisystem und die Befehle für jeden Tag
|
||||
block: system
|
||||
woche: 13
|
||||
worum: Unter Linux gibt es keine Laufwerksbuchstaben, sondern einen einzigen Verzeichnisbaum. Wer weiß, wo was liegt, findet Konfiguration und Fehler in Minuten.
|
||||
rahmenplan: [B3, A8]
|
||||
lernfeld: LF9
|
||||
merksatz: Konfiguration in /etc, Protokolle in /var/log, Benutzer in /home. Erst lesen mit less und grep, dann ändern.
|
||||
karten:
|
||||
- frage: Wo liegen unter Linux die Konfigurationsdateien und wo die Protokolle?
|
||||
antwort: Konfiguration in /etc, etwa /etc/ssh/sshd_config. Protokolle in /var/log und im Journal von systemd, das man mit journalctl liest.
|
||||
- frage: Was zeigen df -h und du -sh?
|
||||
antwort: df -h zeigt die Belegung der eingehängten Dateisysteme, also wie voll jede Platte ist. du -sh zeigt, wie viel Platz ein bestimmtes Verzeichnis belegt – damit findet man, wer die Platte füllt.
|
||||
- frage: Wie findet man alle Zeilen mit „error" in den Protokollen unter /var/log, ohne Groß- und Kleinschreibung zu beachten?
|
||||
antwort: Mit grep -ri error /var/log – r durchsucht die Unterverzeichnisse, i ignoriert die Schreibweise. Für das Journal von systemd stattdessen journalctl -p err.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Ein Baum ab `/`.** Weitere Platten und Freigaben werden irgendwo in diesen Baum
|
||||
eingehängt, etwa unter `/mnt` oder `/srv`.
|
||||
- **Die wichtigsten Orte:** `/etc` Konfiguration, `/var/log` Protokolle, `/home` die
|
||||
Benutzer, `/root` der Administrator, `/usr/bin` Programme, `/tmp` Zwischendateien,
|
||||
`/opt` und `/srv` für eigene Anwendungen und Daten.
|
||||
- **Groß- und Kleinschreibung zählt.** `Bericht.txt` und `bericht.txt` sind zwei Dateien.
|
||||
- **Navigieren:** `pwd` (wo bin ich?), `ls -la` (was liegt hier, auch versteckt, mit Rechten),
|
||||
`cd` (wechseln), `cd ~` (nach Hause), `cd -` (zurück).
|
||||
- **Dateien:** `cp`, `mv`, `rm`, `mkdir -p`. `rm -r` löscht ohne Papierkorb und ohne
|
||||
Rückfrage – vorher mit `ls` prüfen, was getroffen wird.
|
||||
- **Lesen:** `less` zum Blättern (`/` sucht, `q` beendet), `tail -f` zum Mitlesen eines
|
||||
wachsenden Protokolls, `grep` zum Suchen in Dateien.
|
||||
- **Finden:** `find /etc -name "*.conf"` nach Namen, `find /var -size +500M` nach Größe.
|
||||
- **Platz:** `df -h` für die Platten, `du -sh /var/*` für die Verzeichnisse darin.
|
||||
- **Bearbeiten:** `nano` ist für den Anfang der freundlichste Editor. Vor jeder Änderung eine
|
||||
Kopie: `cp datei datei.bak`.
|
||||
- **Hilfe:** `man befehl` oder `befehl --help`.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Frage | Befehl |
|
||||
|---|---|
|
||||
| Wie voll sind die Platten? | `df -h` |
|
||||
| Welches Verzeichnis ist so groß? | `du -sh /var/* \| sort -h` |
|
||||
| Was steht zuletzt im Protokoll? | `tail -n 50 /var/log/syslog` oder `journalctl -n 50` |
|
||||
| Welche Netzwerkadressen habe ich? | `ip a` |
|
||||
| Welche Ports sind offen? | `ss -tlnp` |
|
||||
| Welche Prozesse brauchen Leistung? | `top` oder `htop` |
|
||||
| Welche Distribution läuft? | `cat /etc/os-release` |
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Ein Linux-Server meldet, dass die Platte voll ist. Beschreiben Sie mit Befehlen,
|
||||
wie Sie die Ursache finden.
|
||||
|
||||
**Antwort:** (1) Mit `df -h` prüfen, welches Dateisystem voll ist und wo es eingehängt ist.
|
||||
(2) Mit `du -sh /pfad/* | sort -h` die Unterverzeichnisse nach Größe sortieren und schrittweise
|
||||
in das größte hineingehen, bis die Ursache gefunden ist – häufig sind es Protokolle unter
|
||||
`/var/log`, alte Sicherungen oder ungenutzte Container-Abbilder. (3) Mit `find /pfad -size +1G`
|
||||
gezielt nach sehr großen Dateien suchen. (4) Vor dem Löschen klären, ob die Daten noch
|
||||
gebraucht werden, und bei Protokollen die Ursache beheben, etwa eine fehlende
|
||||
Protokollrotation oder einen Dienst, der in einer Fehlerschleife schreibt.
|
||||
@@ -0,0 +1,60 @@
|
||||
---
|
||||
id: S7
|
||||
titel: Linux – Benutzer, Gruppen und Dateirechte
|
||||
block: system
|
||||
woche: 13
|
||||
worum: Unter Linux hat jede Datei einen Besitzer, eine Gruppe und drei Mal drei Rechte. Das ist einfacher als unter Windows – und genauso schnell falsch gesetzt.
|
||||
rahmenplan: [B3, A6]
|
||||
lernfeld: LF9
|
||||
merksatz: Lesen 4, Schreiben 2, Ausführen 1 – für Besitzer, Gruppe, alle anderen. Täglich arbeiten als Benutzer, Rechte holen mit sudo.
|
||||
karten:
|
||||
- frage: Was bedeutet chmod 640 bericht.txt?
|
||||
antwort: Der Besitzer darf lesen und schreiben (6 = 4 + 2), die Gruppe darf lesen (4), alle anderen dürfen nichts (0).
|
||||
- frage: Was bedeutet das Recht x bei einem Verzeichnis?
|
||||
antwort: Man darf in das Verzeichnis wechseln und auf die Dateien darin zugreifen. Ohne x nützt auch das Leserecht r wenig – man sieht die Namen, kommt aber nicht an die Dateien.
|
||||
- frage: Wie nimmt man einen Benutzer nachträglich in eine Gruppe auf, ohne ihn aus den anderen zu entfernen?
|
||||
antwort: Mit sudo usermod -aG gruppe benutzer. Das a für append ist entscheidend – ohne es ersetzt -G alle bisherigen Zusatzgruppen.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Jede Datei** hat einen Besitzer, eine Gruppe und Rechte für drei Klassen: Besitzer (u),
|
||||
Gruppe (g), alle anderen (o).
|
||||
- **Drei Rechte:** r lesen (4), w schreiben (2), x ausführen (1). Bei Verzeichnissen heißt x:
|
||||
hineinwechseln dürfen.
|
||||
- **Lesen in `ls -l`:** `-rw-r----- 1 anna buchhaltung bericht.txt` – Datei, Besitzerin
|
||||
anna liest und schreibt, Gruppe buchhaltung liest, alle anderen nichts.
|
||||
- **Setzen:** `chmod 640 datei` als Zahl oder `chmod g+w datei` als Zeichen. `chown anna:buchhaltung
|
||||
datei` ändert Besitzer und Gruppe.
|
||||
- **777 ist nie die Lösung.** Wer „Permission denied" mit `chmod 777` beseitigt, hat das Problem
|
||||
versteckt und eine Lücke geöffnet. Richtig ist, Besitzer oder Gruppe passend zu setzen.
|
||||
- **Benutzer:** `sudo adduser anna` legt Benutzer samt Heimatverzeichnis an (Debian, Ubuntu).
|
||||
Gespeichert wird in `/etc/passwd`, die Passwort-Hashes in `/etc/shadow`, Gruppen in
|
||||
`/etc/group`.
|
||||
- **Gruppen:** `sudo usermod -aG gruppe anna`. Wirksam erst nach erneuter Anmeldung.
|
||||
- **root und sudo:** root darf alles. Im Alltag arbeitet man als normaler Benutzer und holt sich
|
||||
Rechte für einen einzelnen Befehl mit `sudo`. Jeder `sudo`-Aufruf wird protokolliert.
|
||||
- **Konto sperren statt löschen**, wenn jemand geht: `sudo usermod -L anna` und
|
||||
`sudo chage -E 0 anna`. So bleibt nachvollziehbar, wem welche Dateien gehörten.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Zahl | Zeichen | Bedeutung | Typisch für |
|
||||
|---|---|---|---|
|
||||
| 644 | rw-r--r-- | Besitzer schreibt, alle lesen | Konfigurationsdateien, Webseiten |
|
||||
| 640 | rw-r----- | Besitzer schreibt, Gruppe liest | Dateien mit vertraulichem Inhalt |
|
||||
| 600 | rw------- | nur der Besitzer | private Schlüssel, Zugangsdaten |
|
||||
| 755 | rwxr-xr-x | Besitzer schreibt, alle lesen und führen aus | Programme, Verzeichnisse |
|
||||
| 750 | rwxr-x--- | wie 755, aber ohne die anderen | Verzeichnisse einer Abteilung |
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Im Verzeichnis `/srv/einkauf` sollen alle Mitglieder der Gruppe `einkauf` Dateien
|
||||
anlegen und ändern dürfen, andere Benutzer gar nichts. Wie richten Sie das ein?
|
||||
|
||||
**Antwort:** `sudo chown root:einkauf /srv/einkauf` setzt die Gruppe; `sudo chmod 2770
|
||||
/srv/einkauf` gibt Besitzer und Gruppe Lesen, Schreiben und Hineinwechseln und den anderen
|
||||
nichts. Die vorangestellte 2 setzt das setgid-Bit: Neue Dateien im Verzeichnis gehören dann
|
||||
automatisch der Gruppe `einkauf` statt der primären Gruppe ihres Erstellers – sonst könnten die
|
||||
Kollegen eine neu angelegte Datei womöglich nicht ändern. Die Benutzer kommen mit `sudo usermod
|
||||
-aG einkauf benutzer` in die Gruppe und müssen sich danach neu anmelden.
|
||||
@@ -0,0 +1,63 @@
|
||||
---
|
||||
id: S8
|
||||
titel: Linux – Pakete, Dienste und Fernzugang per SSH
|
||||
block: system
|
||||
woche: 13
|
||||
worum: Ein Linux-Server wird über drei Werkzeuge betrieben – den Paketmanager, systemd und SSH. Wer die drei beherrscht, kann fast jeden Server pflegen.
|
||||
rahmenplan: [B3, A6, A8]
|
||||
lernfeld: LF9
|
||||
merksatz: apt für Software, systemctl für Dienste, journalctl für Protokolle, SSH nur mit Schlüssel. Zweite Sitzung offen lassen, bevor man den Zugang ändert.
|
||||
karten:
|
||||
- frage: Was ist der Unterschied zwischen systemctl start und systemctl enable?
|
||||
antwort: start startet den Dienst jetzt, enable sorgt dafür, dass er bei jedem Systemstart mitstartet. systemctl enable --now erledigt beides auf einmal.
|
||||
- frage: Warum meldet man sich per SSH mit Schlüssel statt mit Passwort an?
|
||||
antwort: Ein Schlüssel lässt sich nicht erraten und nicht durch Durchprobieren knacken, und der private Teil verlässt nie den eigenen Rechner. Danach kann die Anmeldung per Passwort am Server ganz abgeschaltet werden.
|
||||
- frage: Warum lässt man beim Ändern der SSH-Konfiguration eine zweite Sitzung offen?
|
||||
antwort: Weil man sich mit einem Fehler in der Konfiguration aussperren kann. Die offene Sitzung bleibt bestehen, und man kann den Fehler darüber beheben, bevor man sie schließt.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Pakete (Debian, Ubuntu):** `sudo apt update` holt die Paketlisten, `sudo apt upgrade`
|
||||
spielt Aktualisierungen ein, `sudo apt install nginx` installiert. Sicherheitsupdates lassen
|
||||
sich mit `unattended-upgrades` automatisch einspielen.
|
||||
- **Software nur aus den Paketquellen**, nicht per heruntergeladenem Skript, wenn es sich
|
||||
vermeiden lässt. Was der Paketmanager kennt, aktualisiert er auch.
|
||||
- **Dienste mit systemd:** `systemctl status nginx` zeigt Zustand und letzte
|
||||
Protokollzeilen, `start`, `stop`, `restart` steuern, `enable` startet ihn beim Hochfahren mit.
|
||||
- **Protokolle:** `journalctl -u nginx` für einen Dienst, `-f` zum Mitlesen, `-b` seit dem
|
||||
letzten Start, `--since "1 hour ago"` für einen Zeitraum, `-p err` nur Fehler.
|
||||
- **SSH-Schlüssel:** Auf dem eigenen Rechner `ssh-keygen -t ed25519` erzeugen, mit
|
||||
`ssh-copy-id benutzer@server` hinterlegen. Der private Schlüssel bleibt beim Benutzer und
|
||||
bekommt eine Passphrase.
|
||||
- **SSH absichern** in `/etc/ssh/sshd_config`: `PermitRootLogin no`,
|
||||
`PasswordAuthentication no`. Danach `sudo systemctl reload ssh` – und **in einer zweiten
|
||||
Sitzung testen**, bevor die erste geschlossen wird.
|
||||
- **Firewall:** `sudo ufw allow OpenSSH`, danach nur die Dienste freigeben, die gebraucht
|
||||
werden, und `sudo ufw enable`. Mit `ss -tlnp` prüfen, was tatsächlich lauscht.
|
||||
- **Neustart nach Kernel-Updates:** Ob einer nötig ist, zeigt unter Debian und Ubuntu die
|
||||
Datei `/var/run/reboot-required`.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Aufgabe | Befehl |
|
||||
|---|---|
|
||||
| Aktualisieren | `sudo apt update && sudo apt upgrade` |
|
||||
| Dienst starten und dauerhaft einschalten | `sudo systemctl enable --now nginx` |
|
||||
| Läuft der Dienst? | `systemctl status nginx` |
|
||||
| Warum startet er nicht? | `journalctl -u nginx -b --no-pager \| tail -n 30` |
|
||||
| Schlüssel erzeugen und hinterlegen | `ssh-keygen -t ed25519` und `ssh-copy-id anna@srv-web-01` |
|
||||
| Firewall-Zustand | `sudo ufw status verbose` |
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Ein frisch installierter Linux-Server soll per SSH verwaltet werden. Beschreiben Sie
|
||||
die Schritte, mit denen Sie den Zugang absichern, in der richtigen Reihenfolge.
|
||||
|
||||
**Antwort:** (1) Einen persönlichen Benutzer mit `sudo`-Recht anlegen, damit nicht als root
|
||||
gearbeitet wird. (2) Auf dem eigenen Rechner ein Schlüsselpaar erzeugen und den öffentlichen
|
||||
Schlüssel mit `ssh-copy-id` für diesen Benutzer hinterlegen. (3) Die Anmeldung mit dem Schlüssel
|
||||
testen. (4) In `sshd_config` die direkte Anmeldung als root und die Anmeldung per Passwort
|
||||
abschalten und den Dienst neu laden. (5) In einer zweiten Sitzung prüfen, dass die Anmeldung
|
||||
weiterhin funktioniert, bevor die erste geschlossen wird. (6) Die Firewall so einrichten, dass
|
||||
SSH nur aus dem Verwaltungsnetz erreichbar ist, und automatische Sicherheitsupdates einschalten.
|
||||
@@ -0,0 +1,66 @@
|
||||
---
|
||||
id: S9
|
||||
titel: Überwachung – wissen, dass etwas kaputt ist, bevor es jemand meldet
|
||||
block: system
|
||||
woche: 14
|
||||
worum: Eine gute Überwachung meldet sich selten, aber dann zu Recht. Eine schlechte meldet sich ständig – und wird deshalb irgendwann ignoriert.
|
||||
rahmenplan: [A8, A5, B3]
|
||||
lernfeld: LF11
|
||||
merksatz: Überwachen, was dem Nutzer wehtut. Warnen bei Trend, alarmieren bei Handlungsbedarf. Jeder Alarm braucht eine Handlung.
|
||||
karten:
|
||||
- frage: Was ist der Unterschied zwischen einer Warnung und einem kritischen Alarm?
|
||||
antwort: Eine Warnung zeigt, dass sich etwas in eine falsche Richtung entwickelt und bald Handlung nötig wird – etwa Platte zu 80 Prozent voll. Ein kritischer Alarm verlangt sofortiges Handeln – etwa Platte zu 95 Prozent voll oder Dienst ausgefallen.
|
||||
- frage: Was versteht man unter Alarmmüdigkeit, und wie vermeidet man sie?
|
||||
antwort: Wer zu viele unwichtige Alarme bekommt, beachtet irgendwann auch die wichtigen nicht mehr. Abhilfe – nur alarmieren, wenn eine Handlung nötig ist, Schwellwerte nach Erfahrung anpassen, Warnungen gesammelt statt einzeln zustellen.
|
||||
- frage: Warum überwacht man auch die Datensicherung und den Ablauf von Zertifikaten?
|
||||
antwort: Weil beide still ausfallen. Eine Sicherung, die seit Wochen fehlschlägt, merkt man erst beim Zurückspielen; ein abgelaufenes Zertifikat erst, wenn alle Nutzer eine Fehlermeldung bekommen.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Von außen nach innen überwachen.** Zuerst, was der Nutzer merkt: Ist die Anwendung
|
||||
erreichbar, antwortet sie schnell genug? Dann die Ursachen darunter: Dienste, Prozessor,
|
||||
Arbeitsspeicher, Platte, Netz.
|
||||
- **Was nicht fehlen darf:** Erreichbarkeit, wichtige Dienste, Plattenplatz, Ergebnis der
|
||||
Datensicherung, Ablauf von Zertifikaten, Zustand von RAID und Platten (SMART), USV und
|
||||
Temperatur im Serverraum.
|
||||
- **Zwei Schwellen:** Warnung, wenn Zeit zum Handeln bleibt, kritisch, wenn sofort gehandelt
|
||||
werden muss. Eine Platte, die von 70 auf 90 Prozent in einer Woche wächst, ist schlimmer als
|
||||
eine, die seit einem Jahr bei 92 steht.
|
||||
- **Trends ansehen.** Eine Kurve über Wochen sagt mehr als der aktuelle Wert. Sie zeigt, wann
|
||||
die Platte voll sein wird, bevor sie es ist.
|
||||
- **Jeder Alarm braucht eine Handlung** und einen Empfänger. Ein Alarm, auf den niemand
|
||||
reagieren muss, ist eine Information und gehört in einen Bericht, nicht aufs Handy.
|
||||
- **Alarmmüdigkeit** ist die größte Gefahr. Wer täglich zwanzig unwichtige Meldungen bekommt,
|
||||
übersieht die eine wichtige.
|
||||
- **Die Überwachung überwachen.** Fällt das Überwachungssystem aus, ist alles still – und Stille
|
||||
sieht aus wie „alles in Ordnung". Ein externer Check oder ein täglicher Lebenszeichen-Alarm
|
||||
hilft.
|
||||
- **Werkzeuge:** Checkmk, Zabbix, PRTG für ganze Umgebungen, Uptime Kuma für einfache
|
||||
Erreichbarkeitsprüfungen. Wichtiger als das Werkzeug ist, was man damit überwacht.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Prüfung | Warnung | Kritisch | Handlung |
|
||||
|---|---|---|---|
|
||||
| Plattenplatz | 80 % | 90 % | Aufräumen oder erweitern |
|
||||
| Webanwendung erreichbar | Antwort über 2 s | keine Antwort | Dienst und Server prüfen |
|
||||
| Datensicherung | ein Lauf fehlgeschlagen | zwei Läufe in Folge | Ursache finden, Lauf wiederholen |
|
||||
| Zertifikat | läuft in 30 Tagen ab | läuft in 7 Tagen ab | Verlängern |
|
||||
| RAID | – | Platte ausgefallen | Platte tauschen |
|
||||
| Temperatur Serverraum | 27 °C | 32 °C | Klimaanlage prüfen |
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Ihr Ausbilder bittet Sie, eine Überwachung für den neuen Dateiserver einzurichten.
|
||||
Nennen Sie fünf Prüfungen mit sinnvollen Schwellwerten und begründen Sie, warum eine
|
||||
Überwachung nur des Prozessors nicht genügt.
|
||||
|
||||
**Antwort:** Fünf aus: (1) Erreichbarkeit per Ping und SMB – kritisch bei Ausfall. (2)
|
||||
Plattenplatz je Laufwerk – Warnung 80 %, kritisch 90 %. (3) Ergebnis der nächtlichen Sicherung –
|
||||
Warnung bei einem, kritisch bei zwei fehlgeschlagenen Läufen. (4) Zustand von RAID und SMART –
|
||||
kritisch bei ausgefallener oder auffälliger Platte. (5) Arbeitsspeicher – Warnung über 85 %
|
||||
über längere Zeit. (6) Dienst „Server" bzw. Freigabedienst läuft. (7) Ablauf von Zertifikaten,
|
||||
falls verwendet. Der Prozessor allein genügt nicht, weil die häufigsten Ausfälle eines
|
||||
Dateiservers gar nicht mit Rechenlast zusammenhängen: Eine volle Platte, ein ausgefallener
|
||||
Dienst oder eine fehlgeschlagene Sicherung lassen die Prozessorlast unauffällig.
|
||||
@@ -0,0 +1,61 @@
|
||||
---
|
||||
id: V1
|
||||
titel: Virtualisierung – viele Server auf einer Maschine
|
||||
block: server
|
||||
woche: 9
|
||||
worum: Ein Hypervisor teilt einen physischen Rechner in viele virtuelle auf. Das spart Hardware, aber nur, wenn man die Ressourcen plant, statt sie zu verteilen, bis nichts mehr geht.
|
||||
rahmenplan: [B1, A8, A3]
|
||||
lernfeld: LF9
|
||||
merksatz: Typ 1 für Server, Typ 2 für den Schreibtisch. Ressourcen planen, Überbuchung bewusst entscheiden.
|
||||
karten:
|
||||
- frage: Was unterscheidet einen Hypervisor vom Typ 1 von einem vom Typ 2?
|
||||
antwort: Typ 1 läuft direkt auf der Hardware, ohne Betriebssystem darunter – etwa Proxmox VE, Hyper-V oder VMware ESXi. Typ 2 läuft als Programm auf einem normalen Betriebssystem – etwa VirtualBox. Server virtualisiert man mit Typ 1.
|
||||
- frage: Was bedeutet Überbuchung bei der Virtualisierung?
|
||||
antwort: Den virtuellen Maschinen zusammen mehr Prozessorkerne oder Arbeitsspeicher zuzuweisen, als physisch vorhanden ist. Bei Prozessoren ist das üblich, weil selten alle gleichzeitig rechnen; beim Arbeitsspeicher ist es riskant, weil der Host dann auslagern muss.
|
||||
- frage: Nenne drei Vorteile der Servervirtualisierung.
|
||||
antwort: Bessere Auslastung der Hardware, schnelle Bereitstellung neuer Server aus Vorlagen und die Möglichkeit, virtuelle Maschinen im laufenden Betrieb auf einen anderen Host zu verschieben. Ebenfalls richtig – Snapshots vor Änderungen und einfachere Testumgebungen.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Der Hypervisor** verteilt Prozessor, Arbeitsspeicher, Speicher und Netz eines
|
||||
physischen Rechners (des **Hosts**) auf mehrere **virtuelle Maschinen** (VMs, auch
|
||||
**Gäste**). Jede VM glaubt, einen eigenen Rechner zu haben.
|
||||
- **Typ 1** („bare metal") läuft direkt auf der Hardware: Proxmox VE, Microsoft Hyper-V,
|
||||
VMware ESXi. Das ist die Wahl für Server.
|
||||
- **Typ 2** läuft als Programm auf Windows, Linux oder macOS: VirtualBox, VMware
|
||||
Workstation. Gut für Tests am Arbeitsplatz, nicht für den Betrieb.
|
||||
- **Ressourcen planen.** Eine VM bekommt so viel, wie sie braucht – nicht so viel, wie da
|
||||
ist. Zu viele virtuelle Prozessoren machen eine VM sogar langsamer, weil der Hypervisor
|
||||
sie gleichzeitig bereitstellen muss.
|
||||
- **Überbuchung:** Bei Prozessorkernen ist ein Verhältnis von mehreren virtuellen zu einem
|
||||
physischen Kern üblich. Arbeitsspeicher überbucht man höchstens bewusst und knapp.
|
||||
- **Ein Host ist ein einzelner Ausfallpunkt.** Fällt er aus, fallen alle VMs darauf aus.
|
||||
Abhilfe schafft ein Verbund aus mehreren Hosts mit gemeinsamem oder repliziertem Speicher,
|
||||
der VMs auf einen anderen Host umzieht.
|
||||
- **Container** (etwa Docker) sind leichter als VMs: Sie teilen sich den Kern des
|
||||
Host-Betriebssystems. Schneller und sparsamer, aber weniger stark voneinander getrennt.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| | Physischer Server | Virtuelle Maschine | Container |
|
||||
|---|---|---|---|
|
||||
| Eigenes Betriebssystem | ja | ja | nein, teilt den Kern des Hosts |
|
||||
| Bereitstellung | Tage bis Wochen | Minuten | Sekunden |
|
||||
| Trennung voneinander | vollständig | stark | schwächer |
|
||||
| Typischer Einsatz | Host selbst, Spezialhardware | Server aller Art | einzelne Anwendungen und Dienste |
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Ein Betrieb betreibt fünf ältere physische Server mit geringer Auslastung und
|
||||
möchte sie virtualisieren. Nennen Sie zwei Vorteile und zwei Risiken und je eine Maßnahme
|
||||
gegen die Risiken.
|
||||
|
||||
**Antwort:** Vorteile: (1) Weniger Hardware, Strom, Kühlung und Platz, weil ein oder zwei Hosts
|
||||
die Last der fünf Server tragen. (2) Neue Server lassen sich schnell aus Vorlagen bereitstellen,
|
||||
und vor Änderungen sind Snapshots möglich. Risiken: (1) Der Host wird zum einzelnen
|
||||
Ausfallpunkt – Maßnahme: zwei Hosts im Verbund mit gemeinsamem oder repliziertem Speicher,
|
||||
damit VMs bei einem Ausfall auf dem anderen Host weiterlaufen. (2) Die VMs teilen sich die
|
||||
Ressourcen; eine VM unter Last bremst die anderen – Maßnahme: Ressourcen vorab anhand der
|
||||
gemessenen Auslastung planen, Arbeitsspeicher nicht überbuchen und die Auslastung des Hosts
|
||||
überwachen.
|
||||
@@ -0,0 +1,62 @@
|
||||
---
|
||||
id: V2
|
||||
titel: Snapshots, virtuelle Netze und virtueller Speicher
|
||||
block: server
|
||||
woche: 9
|
||||
worum: Drei Dinge, die bei der Virtualisierung anders funktionieren als bei echter Hardware – und an denen man sich am häufigsten verschätzt.
|
||||
rahmenplan: [B1, B2, A9]
|
||||
lernfeld: LF9
|
||||
merksatz: Ein Snapshot ist ein Rückweg für Stunden, keine Sicherung für Wochen.
|
||||
karten:
|
||||
- frage: Warum ist ein Snapshot keine Datensicherung?
|
||||
antwort: Er liegt auf demselben Speicher wie die VM und hängt von ihrer Ausgangsdatei ab. Geht der Speicher kaputt, sind VM und Snapshot gemeinsam weg. Außerdem wächst er mit jeder Änderung und bremst die VM, je länger er besteht.
|
||||
- frage: Was ist der Unterschied zwischen Thin und Thick Provisioning?
|
||||
antwort: Beim Thin Provisioning belegt eine virtuelle Festplatte nur so viel Platz, wie tatsächlich beschrieben ist, und wächst mit. Beim Thick Provisioning wird die volle Größe sofort reserviert. Thin spart Platz, kann den Speicher aber unbemerkt volllaufen lassen.
|
||||
- frage: Wie kommt eine virtuelle Maschine ins echte Netz?
|
||||
antwort: Über einen virtuellen Switch auf dem Host, der mit einer physischen Netzwerkkarte verbunden ist. Die VM hängt am virtuellen Switch wie ein Rechner an einem echten Switch – auch VLANs lassen sich dort zuordnen.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Snapshot:** ein eingefrorener Zustand der VM. Ab dem Snapshot schreibt die VM ihre
|
||||
Änderungen in eine eigene Datei; zurückgehen heißt, diese Datei zu verwerfen.
|
||||
- **Wofür Snapshots gut sind:** vor einem Update, einer Konfigurationsänderung, einem Test.
|
||||
Ist alles in Ordnung, wird der Snapshot **gelöscht** – das führt die Änderungen zurück in
|
||||
die eigentliche Festplattendatei.
|
||||
- **Wofür nicht:** als Sicherung. Er liegt auf demselben Speicher, hängt von der
|
||||
Ausgangsdatei ab und wird mit jedem Tag größer und langsamer.
|
||||
- **Bei Datenbanken und Domänencontrollern Vorsicht:** Ein Zurücksetzen kann die
|
||||
Daten durcheinanderbringen, wenn andere Systeme in der Zwischenzeit mit ihnen gearbeitet
|
||||
haben. Hier gilt, was der Hersteller dazu empfiehlt.
|
||||
- **Virtueller Switch:** verbindet die VMs untereinander und über eine physische
|
||||
Netzwerkkarte mit dem echten Netz. Ein Switch ohne physische Karte ergibt ein
|
||||
abgeschlossenes Netz – gut für Testumgebungen.
|
||||
- **Virtuelle Festplatten** sind Dateien auf dem Speicher des Hosts. **Thin** wächst mit,
|
||||
**thick** ist sofort voll belegt. Wer thin bereitstellt, muss den tatsächlichen
|
||||
Füllstand überwachen, sonst bleiben irgendwann alle VMs gleichzeitig stehen.
|
||||
- **Vorlagen:** Eine fertig eingerichtete VM wird zur Vorlage, aus der neue VMs entstehen.
|
||||
Bei Windows vorher mit Sysprep verallgemeinern, sonst haben alle Kopien dieselbe Kennung.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Vorhaben | Passendes Werkzeug |
|
||||
|---|---|
|
||||
| Vor dem Update für zwei Stunden einen Rückweg haben | Snapshot, danach löschen |
|
||||
| Den Stand von letzter Woche wiederherstellen | Datensicherung |
|
||||
| Zehn gleiche Test-VMs bereitstellen | Vorlage |
|
||||
| Eine VM ohne Verbindung zum Firmennetz betreiben | Virtueller Switch ohne physische Karte |
|
||||
| Wissen, wann der Speicher voll ist | Überwachung des tatsächlichen Füllstands |
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Auf einem Host laufen zehn VMs mit Thin-Provisioning, insgesamt 4 TB zugesagt auf
|
||||
einem Speicher von 2 TB. Ein Kollege hält das für unproblematisch, weil derzeit nur 1,2 TB
|
||||
belegt sind. Bewerten Sie das.
|
||||
|
||||
**Antwort:** Die Zusage übersteigt den physischen Speicher um das Doppelte. Solange die VMs
|
||||
wenig schreiben, geht das gut; wachsen ihre Daten aber – etwa durch Protokolldateien, Updates
|
||||
oder einen Fehler, der eine Datei vollschreibt –, läuft der gemeinsame Speicher voll. Dann
|
||||
können **alle** VMs nicht mehr schreiben und bleiben stehen, nicht nur die verursachende. Die
|
||||
Überbuchung ist nur vertretbar mit einer Überwachung des tatsächlichen Füllstands mit
|
||||
Warnschwellen (etwa bei 70 und 85 Prozent), einem Plan zur Erweiterung des Speichers und
|
||||
dem Verzicht auf alte Snapshots, die zusätzlich Platz belegen.
|
||||
@@ -0,0 +1,60 @@
|
||||
---
|
||||
id: V3
|
||||
titel: Eine virtuelle Maschine planen und bereitstellen
|
||||
block: server
|
||||
woche: 9
|
||||
worum: Eine VM ist in fünf Minuten angelegt – und in fünf Jahren noch in Betrieb. Die Planung entscheidet, ob man sie dann noch versteht.
|
||||
rahmenplan: [B1, B3, A5]
|
||||
lernfeld: LF9
|
||||
merksatz: Zweck, Ressourcen, Netz, Sicherung, Verantwortlicher – vor dem Anlegen aufgeschrieben.
|
||||
karten:
|
||||
- frage: Welche Angaben gehören zu jeder VM in die Dokumentation?
|
||||
antwort: Zweck, Verantwortlicher, Betriebssystem, zugewiesene Ressourcen, Netz bzw. VLAN und IP-Adresse, Speicherort, ob und wie sie gesichert wird, und das Datum der Bereitstellung.
|
||||
- frage: Woran orientiert man sich bei den Ressourcen einer neuen VM?
|
||||
antwort: An den Mindestanforderungen der Software und an gemessenen Werten vergleichbarer Systeme – mit wenig Reserve beginnen und nach Messung erweitern. Erweitern geht leicht, Verkleinern oft nicht.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Vorher aufschreiben:** Wofür ist die VM, wer ist verantwortlich, wie lange wird sie
|
||||
gebraucht? Eine VM ohne Verantwortlichen wird nie wieder abgeschaltet.
|
||||
- **Ressourcen nach Bedarf**, nicht nach Gefühl. Mindestanforderungen der Software, gemessene
|
||||
Werte vergleichbarer Systeme, etwas Reserve. Erweitern ist einfach, Verkleinern einer
|
||||
Festplatte oft nicht.
|
||||
- **Getrennte Festplatten** für System und Daten. Dann lassen sich Daten anders sichern,
|
||||
größer machen oder auf einen anderen Speicher legen.
|
||||
- **Netz bewusst wählen:** richtiger virtueller Switch, richtiges VLAN, feste IP-Adresse für
|
||||
Server, Eintrag im DNS.
|
||||
- **Gasterweiterungen installieren** (bei Proxmox der QEMU Guest Agent, bei Hyper-V die
|
||||
Integrationsdienste). Ohne sie fährt die VM nicht sauber herunter, und Sicherungen
|
||||
können inkonsistent werden.
|
||||
- **In die Sicherung aufnehmen**, bevor die VM in Betrieb geht – nicht, wenn die erste Datei
|
||||
verloren ist.
|
||||
- **Namen nach Regel:** Der Name sagt, was die VM tut und wo sie steht, etwa `SRV-DATEI-01`.
|
||||
`Test-neu-Peter` ist in einem halben Jahr ein Rätsel.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Planungsfrage | Beispielantwort |
|
||||
|---|---|
|
||||
| Zweck | Dateiserver für die Verwaltung |
|
||||
| Verantwortlich | IT, Ansprechpartner: Ausbilder |
|
||||
| Betriebssystem | Windows Server 2025 Standard |
|
||||
| Prozessor / Arbeitsspeicher | 2 virtuelle Kerne / 8 GB |
|
||||
| Festplatten | 80 GB System, 500 GB Daten (thick) |
|
||||
| Netz | VLAN Server, 10.10.20.21, DNS-Eintrag `srv-datei-01` |
|
||||
| Sicherung | täglich inkrementell, wöchentlich voll |
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Sie sollen für einen neuen Dienst eine VM bereitstellen. Beschreiben Sie die
|
||||
Schritte von der Anfrage bis zur Übergabe in den Betrieb.
|
||||
|
||||
**Antwort:** (1) Anforderungen klären: Zweck, Verantwortlicher, benötigte Software und ihre
|
||||
Mindestanforderungen, Verfügbarkeitsbedarf. (2) Ressourcen, Festplatten, Netz bzw. VLAN und
|
||||
IP-Adresse planen und prüfen, ob der Host die Ressourcen hergibt. (3) Die VM aus einer Vorlage
|
||||
oder neu anlegen, Betriebssystem installieren, Gasterweiterungen und Updates einspielen.
|
||||
(4) Netzwerk, DNS-Eintrag und Zugriffsrechte einrichten, den Dienst installieren und testen.
|
||||
(5) Die VM in Sicherung und Überwachung aufnehmen und einen Wiederherstellungstest
|
||||
einplanen. (6) Alles dokumentieren und die VM mit Übergabe an den Verantwortlichen in Betrieb
|
||||
nehmen.
|
||||
@@ -0,0 +1,63 @@
|
||||
---
|
||||
id: V4
|
||||
titel: Active Directory – Domäne, Organisationseinheiten, Gruppen
|
||||
block: server
|
||||
woche: 10
|
||||
worum: Active Directory ist das Verzeichnis, in dem steht, wer jemand ist und was er darf. Seine Struktur entscheidet, ob es nach fünf Jahren noch beherrschbar ist.
|
||||
rahmenplan: [B3, A6, B1]
|
||||
lernfeld: LF10
|
||||
merksatz: OUs ordnen, Gruppen berechtigen. Konten in globale Gruppen, globale in domänenlokale, Rechte an die domänenlokalen.
|
||||
karten:
|
||||
- frage: Wozu dienen Organisationseinheiten und wozu Gruppen im Active Directory?
|
||||
antwort: Organisationseinheiten ordnen Objekte und sind der Ort, an dem Gruppenrichtlinien verknüpft und Verwaltungsaufgaben delegiert werden. Gruppen vergeben Berechtigungen. Ein Konto liegt in genau einer OU, kann aber in vielen Gruppen sein.
|
||||
- frage: Wofür steht AGDLP?
|
||||
antwort: Accounts in Global groups, Global groups in Domain Local groups, Permissions an die Domain Local groups. Die globale Gruppe beschreibt die Rolle (etwa Buchhaltung), die domänenlokale das Recht (etwa Ablage Buchhaltung ändern).
|
||||
- frage: Warum betreibt man mindestens zwei Domänencontroller?
|
||||
antwort: Weil ohne Domänencontroller niemand sich anmelden kann und die Namensauflösung oft ebenfalls ausfällt. Mit zwei Domänencontrollern übernimmt der zweite, wenn einer ausfällt oder gewartet wird.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Die Domäne** ist der Verwaltungsbereich: Benutzer, Computer, Gruppen und Richtlinien an
|
||||
einer zentralen Stelle. Ein Rechner, der Mitglied der Domäne ist, lässt Anmeldungen mit
|
||||
Domänenkonten zu.
|
||||
- **Domänencontroller** halten das Verzeichnis und prüfen Anmeldungen. Mindestens zwei, damit
|
||||
ein Ausfall oder eine Wartung niemanden aussperrt.
|
||||
- **Active Directory braucht DNS.** Clients finden die Domänencontroller über DNS-Einträge.
|
||||
Ein Client mit falschem DNS-Server findet die Domäne nicht – die häufigste Ursache für
|
||||
„Domäne nicht verfügbar".
|
||||
- **Organisationseinheiten (OUs)** ordnen: nach Standort, nach Abteilung oder nach Art des
|
||||
Objekts. An OUs werden Gruppenrichtlinien verknüpft und Verwaltung delegiert. Konten und
|
||||
Computer gehören nicht in die Standardcontainer, sondern in eigene OUs.
|
||||
- **Gruppen berechtigen.** Die Struktur nach **AGDLP**: Konten (A) kommen in globale Gruppen
|
||||
nach Rolle (G), diese in domänenlokale Gruppen nach Recht (DL), und nur die domänenlokalen
|
||||
Gruppen bekommen Berechtigungen (P).
|
||||
- **Namen nach Regel:** `GG-Buchhaltung` für die Rolle, `DL-FS-Buchhaltung-Aendern` für das
|
||||
Recht. Aus dem Namen soll hervorgehen, wofür die Gruppe da ist.
|
||||
- **Ein Konto einrichten heißt nicht, einen Kollegen zu kopieren.** Wer kopiert, kopiert auch
|
||||
alle Rechte, die der Kollege über die Jahre angesammelt hat.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Gruppenbereich | Mitglieder | Typischer Zweck |
|
||||
|---|---|---|
|
||||
| Global | Konten und globale Gruppen derselben Domäne | Rolle: Buchhaltung, Vertrieb, IT |
|
||||
| Domänenlokal | Konten und Gruppen aus allen Domänen | Recht an einer Ressource dieser Domäne |
|
||||
| Universal | Konten und Gruppen aus allen Domänen | Rollen über mehrere Domänen hinweg |
|
||||
|
||||
In einem Betrieb mit einer einzigen Domäne genügen globale und domänenlokale Gruppen.
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Die Mitarbeiter der Buchhaltung sollen auf der Freigabe `Buchhaltung` Dateien
|
||||
ändern dürfen, die Geschäftsführung soll sie nur lesen. Beschreiben Sie die Umsetzung nach
|
||||
AGDLP.
|
||||
|
||||
**Antwort:** Konten der Buchhaltung kommen in die globale Gruppe `GG-Buchhaltung`, Konten der
|
||||
Geschäftsführung in `GG-Geschaeftsfuehrung`. Für die Rechte werden zwei domänenlokale Gruppen
|
||||
angelegt: `DL-FS-Buchhaltung-Aendern` und `DL-FS-Buchhaltung-Lesen`. `GG-Buchhaltung` wird
|
||||
Mitglied von `DL-FS-Buchhaltung-Aendern`, `GG-Geschaeftsfuehrung` Mitglied von
|
||||
`DL-FS-Buchhaltung-Lesen`. Nur die beiden domänenlokalen Gruppen erhalten NTFS-Berechtigungen
|
||||
auf dem Ordner – Ändern bzw. Lesen. Wechselt jemand die Abteilung, wird nur seine
|
||||
Mitgliedschaft in der globalen Gruppe geändert; an den Berechtigungen auf dem Ordner ändert
|
||||
sich nichts.
|
||||
@@ -0,0 +1,64 @@
|
||||
---
|
||||
id: V5
|
||||
titel: Gruppenrichtlinien – Einstellungen für alle auf einmal
|
||||
block: server
|
||||
woche: 10
|
||||
worum: Mit Gruppenrichtlinien setzt man Einstellungen zentral, statt sie an jedem Rechner von Hand vorzunehmen. Wer die Reihenfolge der Anwendung nicht kennt, sucht lange nach dem Grund, warum eine Einstellung nicht greift.
|
||||
rahmenplan: [B3, A6, A8]
|
||||
lernfeld: LF10
|
||||
merksatz: Lokal, Standort, Domäne, OU – was zuletzt kommt, gewinnt. gpresult sagt, was wirklich angekommen ist.
|
||||
karten:
|
||||
- frage: In welcher Reihenfolge werden Gruppenrichtlinien angewendet, und welche setzt sich durch?
|
||||
antwort: Lokal, Standort, Domäne, Organisationseinheit (von oben nach unten) – kurz LSDOU. Bei widersprüchlichen Einstellungen gewinnt die zuletzt angewendete, also die der untersten OU – es sei denn, eine höhere Richtlinie ist als erzwungen markiert.
|
||||
- frage: Mit welchen Befehlen prüft und erzwingt man die Anwendung von Gruppenrichtlinien auf einem Client?
|
||||
antwort: gpupdate /force wendet die Richtlinien sofort neu an. gpresult /r zeigt, welche Richtlinien für Computer und Benutzer tatsächlich angewendet oder herausgefiltert wurden.
|
||||
- frage: Was ist der Unterschied zwischen Computer- und Benutzerkonfiguration einer Gruppenrichtlinie?
|
||||
antwort: Die Computerkonfiguration wirkt auf Computerkonten und greift beim Start des Rechners, die Benutzerkonfiguration wirkt auf Benutzerkonten und greift bei der Anmeldung. Eine Richtlinie mit Benutzereinstellungen an einer OU, die nur Computer enthält, bewirkt deshalb nichts.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Ein Gruppenrichtlinienobjekt (GPO)** bündelt Einstellungen – etwa Bildschirmsperre,
|
||||
Laufwerkszuordnungen, Updates, Sicherheitsoptionen – und wird an einen Standort, die
|
||||
Domäne oder eine OU **verknüpft**.
|
||||
- **Computer- und Benutzerkonfiguration:** Die eine wirkt auf Rechner beim Start, die andere
|
||||
auf Benutzer bei der Anmeldung. Wirksam wird nur, was zu den Objekten in der verknüpften OU
|
||||
passt.
|
||||
- **Reihenfolge LSDOU:** lokal, Standort, Domäne, OU, bei geschachtelten OUs von oben nach
|
||||
unten. Was später kommt, überschreibt Früheres.
|
||||
- **Ausnahmen:** Eine als **erzwungen** markierte Verknüpfung setzt sich gegen tiefere durch.
|
||||
An einer OU lässt sich die **Vererbung deaktivieren**. Beides sparsam einsetzen – jede
|
||||
Ausnahme ist eine Stelle, an der man später sucht.
|
||||
- **Filtern** nach Sicherheitsgruppe, wenn eine Richtlinie nur für einen Teil der Objekte
|
||||
gelten soll – statt dafür eine eigene OU anzulegen.
|
||||
- **Aktualisierung:** Clients holen Richtlinien beim Start, bei der Anmeldung und danach etwa
|
||||
alle 90 Minuten. Manche Einstellungen, etwa Softwareverteilung, greifen erst nach Neustart
|
||||
oder Neuanmeldung.
|
||||
- **Prüfen statt raten:** `gpresult /r` zeigt am Client, was angekommen ist und was
|
||||
herausgefiltert wurde. `gpupdate /force` wendet sofort neu an.
|
||||
- **Eine Richtlinie, ein Zweck.** `GPO-Clients-Bildschirmsperre` ist auffindbar und
|
||||
abschaltbar; eine Richtlinie mit 80 gemischten Einstellungen ist es nicht.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Vorhaben | Wo einstellen |
|
||||
|---|---|
|
||||
| Bildschirmsperre nach 10 Minuten für alle Clients | Computerkonfiguration, verknüpft an die OU der Clients |
|
||||
| Laufwerk `S:` für die Buchhaltung | Benutzerkonfiguration (Einstellungen), gefiltert auf die Gruppe der Buchhaltung |
|
||||
| Kennwortrichtlinie der Domäne | Standard-Domänenrichtlinie |
|
||||
| Ausnahme für einen einzelnen Testrechner | Eigene OU oder Filterung – nicht die Vererbung für alle abschalten |
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Eine neue Gruppenrichtlinie für eine Bildschirmsperre wirkt auf den Rechnern der
|
||||
Verwaltung nicht. Beschreiben Sie Ihr Vorgehen bei der Fehlersuche.
|
||||
|
||||
**Antwort:** (1) Prüfen, ob die Richtlinie an die richtige OU verknüpft und die Verknüpfung
|
||||
aktiviert ist – und ob die Rechner tatsächlich in dieser OU liegen. (2) Prüfen, ob die
|
||||
Einstellung im passenden Teil steht: Liegen in der OU nur Computerkonten, muss sie in der
|
||||
Computerkonfiguration stehen. (3) Am Client `gpupdate /force` ausführen, ggf. neu starten,
|
||||
und mit `gpresult /r` prüfen, ob die Richtlinie angewendet oder herausgefiltert wurde –
|
||||
etwa durch eine Sicherheitsfilterung. (4) Prüfen, ob eine später angewendete oder erzwungene
|
||||
Richtlinie die Einstellung überschreibt oder die Vererbung an einer OU deaktiviert ist.
|
||||
(5) Bei Fehlern in `gpresult` die Erreichbarkeit des Domänencontrollers und die
|
||||
DNS-Einstellungen des Clients prüfen.
|
||||
@@ -0,0 +1,66 @@
|
||||
---
|
||||
id: V6
|
||||
titel: Datei- und Druckdienste zentral bereitstellen
|
||||
block: server
|
||||
woche: 10
|
||||
worum: Ein zentraler Dateiserver und ein Druckserver sind unspektakulär – solange sie geplant sind. Ungeplant werden sie zur größten Rumpelkammer im Betrieb.
|
||||
rahmenplan: [B3, A9, A8]
|
||||
lernfeld: LF10
|
||||
merksatz: Struktur nach Abteilungen, Rechte nach Gruppen, Laufwerke per Richtlinie, Treiber nur von der IT.
|
||||
karten:
|
||||
- frage: Was sind Schattenkopien auf einem Dateiserver, und ersetzen sie die Datensicherung?
|
||||
antwort: Zeitpunktkopien eines Laufwerks, über die Benutzer selbst frühere Fassungen einer Datei zurückholen können (Vorgängerversionen). Sie liegen auf demselben Laufwerk und ersetzen deshalb keine Datensicherung.
|
||||
- frage: Welchen Vorteil hat ein Druckserver gegenüber direkt verbundenen Druckern an jedem Client?
|
||||
antwort: Treiber, Warteschlangen und Einstellungen werden an einer Stelle gepflegt und per Gruppenrichtlinie verteilt. Ein Treiberwechsel oder ein neuer Drucker muss nicht an jedem Rechner einzeln eingerichtet werden.
|
||||
- frage: Warum ordnet man Laufwerke per Gruppenrichtlinie statt per Hand zu?
|
||||
antwort: Weil die Zuordnung dann für alle gleich ist, sich nach Gruppenzugehörigkeit richtet und bei einem Abteilungswechsel von selbst angepasst wird. Handzuordnungen sind nach dem ersten Rechnerwechsel weg.
|
||||
---
|
||||
|
||||
## Das Wesentliche
|
||||
|
||||
- **Eine Ablagestruktur, die der Betrieb versteht:** oben die Abteilungen, darunter, was die
|
||||
Abteilung selbst gliedert. Dazu ein Bereich für abteilungsübergreifende Projekte und ein
|
||||
Austauschordner, der regelmäßig geleert wird.
|
||||
- **Rechte nach AGDLP** und so flach wie möglich: Berechtigungen auf der obersten Ebene einer
|
||||
Abteilung setzen und vererben lassen. Jede Unterbrechung der Vererbung tiefer unten ist
|
||||
eine künftige Supportanfrage.
|
||||
- **Freigabe und NTFS:** Freigabe meist „Authentifizierte Benutzer – Ändern" oder
|
||||
„Vollzugriff", die eigentliche Steuerung über NTFS. Siehe Handout S2.
|
||||
- **Laufwerke per Gruppenrichtlinie** zuordnen, gefiltert auf die Gruppe. Dann bekommt jeder
|
||||
genau die Laufwerke seiner Rolle – auch am neuen Rechner.
|
||||
- **Schattenkopien** einschalten: Benutzer holen versehentlich überschriebene Dateien selbst
|
||||
zurück. Sie ersetzen keine Sicherung, sparen aber viele Tickets.
|
||||
- **Kontingente und Dateiprüfung** verhindern, dass ein einzelner Ordner den Server füllt –
|
||||
oder dass dort private Videosammlungen landen.
|
||||
- **Druckserver:** Drucker zentral einrichten, Treiber zentral pflegen, Zuordnung per
|
||||
Richtlinie. Standardbenutzer dürfen Druckertreiber seit 2021 nicht mehr ohne Weiteres selbst
|
||||
installieren – Treiber verteilt deshalb die IT.
|
||||
- **Drucker an Standorte binden**, nicht an Personen: Wer im Lager arbeitet, braucht den
|
||||
Drucker im Lager, egal an welchem Rechner.
|
||||
|
||||
## Übersicht
|
||||
|
||||
```
|
||||
\\srv-datei-01\Daten
|
||||
├── Buchhaltung DL-FS-Buchhaltung-Aendern / -Lesen
|
||||
├── Einkauf DL-FS-Einkauf-Aendern / -Lesen
|
||||
├── Vertrieb DL-FS-Vertrieb-Aendern / -Lesen
|
||||
├── Projekte je Projekt eine eigene Gruppe
|
||||
├── Vorlagen alle lesen, nur Verwaltung ändert
|
||||
└── Austausch alle ändern, wird jeden Freitag geleert
|
||||
```
|
||||
|
||||
## Prüfungsfrage
|
||||
|
||||
**Frage:** Eine Mitarbeiterin hat am Vormittag eine wichtige Tabelle auf dem Dateiserver
|
||||
versehentlich überschrieben. Welche Möglichkeiten der Wiederherstellung gibt es, und in
|
||||
welcher Reihenfolge prüfen Sie sie?
|
||||
|
||||
**Antwort:** (1) Schattenkopien: Sind sie eingeschaltet, kann die Mitarbeiterin über
|
||||
„Vorgängerversionen" im Eigenschaftendialog selbst die letzte Fassung vor der Änderung
|
||||
zurückholen – am schnellsten und ohne Eingriff der IT. (2) Programmeigene Versionen, etwa die
|
||||
Versionsverwaltung der Anwendung oder automatisch gespeicherte Fassungen. (3) Die
|
||||
Datensicherung: Die Datei wird aus der letzten Sicherung vor dem Überschreiben
|
||||
wiederhergestellt, am besten unter einem anderen Namen, damit die Mitarbeiterin vergleichen
|
||||
kann. Die Reihenfolge folgt dem Aufwand und der Aktualität: Eine Schattenkopie vom Vormittag
|
||||
ist näher am verlorenen Stand als die Sicherung der letzten Nacht.
|
||||
@@ -0,0 +1,94 @@
|
||||
id: woche-05
|
||||
woche: 5
|
||||
titel: Lernzielkontrolle Woche 5 – Ausbildung, Betrieb und Zusammenarbeit
|
||||
dauer_minuten: 40
|
||||
hinweis: >-
|
||||
Offene Fragen. Antworten in ganzen Sätzen; bei Rechtsfragen genügt die
|
||||
sinngemäße Regel, die Paragrafennummer ist nicht gefordert.
|
||||
|
||||
fragen:
|
||||
- id: f1
|
||||
frage: >-
|
||||
Ein Auszubildender ist seit sechs Wochen im Betrieb und möchte die
|
||||
Ausbildung beenden, weil er doch studieren will. Was muss er beachten?
|
||||
Wie wäre es nach acht Monaten?
|
||||
punkte: 6
|
||||
musterloesung: >-
|
||||
Nach sechs Wochen liegt er in der Probezeit (ein bis vier Monate). Er kann
|
||||
jederzeit ohne Einhaltung einer Frist und ohne Angabe von Gründen kündigen,
|
||||
die Kündigung muss aber schriftlich erfolgen. Nach acht Monaten ist die
|
||||
Probezeit vorbei: Er kann dann mit einer Frist von vier Wochen kündigen,
|
||||
weil er die Berufsausbildung aufgeben will; die Kündigung muss schriftlich
|
||||
und unter Angabe des Grundes erfolgen. (Probezeit 2 P., Kündigung darin 1 P.,
|
||||
Frist danach 2 P., Schriftform mit Grund 1 P.)
|
||||
|
||||
- id: f2
|
||||
frage: >-
|
||||
Nennen Sie je drei Pflichten des Auszubildenden und des Ausbildungsbetriebs.
|
||||
punkte: 6
|
||||
musterloesung: >-
|
||||
Auszubildender (drei aus): sich bemühen, die berufliche Handlungsfähigkeit
|
||||
zu erwerben; übertragene Aufgaben sorgfältig ausführen; an
|
||||
Ausbildungsmaßnahmen und der Berufsschule teilnehmen; Weisungen im Rahmen
|
||||
der Ausbildung befolgen; die Betriebsordnung beachten; Geräte und
|
||||
Werkzeuge pfleglich behandeln; über Betriebs- und Geschäftsgeheimnisse
|
||||
Stillschweigen wahren; den Ausbildungsnachweis führen.
|
||||
Betrieb (drei aus): die Ausbildung planmäßig durchführen; Ausbildungsmittel
|
||||
kostenlos zur Verfügung stellen; zum Besuch der Berufsschule freistellen
|
||||
und anhalten; Zeit zum Führen des Ausbildungsnachweises geben und ihn
|
||||
regelmäßig durchsehen; nur ausbildungsbezogene Aufgaben übertragen; eine
|
||||
angemessene Vergütung zahlen. (Je Pflicht 1 P.)
|
||||
|
||||
- id: f3
|
||||
frage: >-
|
||||
Warum lohnt es sich, das Berichtsheft gewissenhaft zu führen? Nennen Sie
|
||||
zwei Gründe.
|
||||
punkte: 4
|
||||
musterloesung: >-
|
||||
(1) Ein ordnungsgemäß geführter Ausbildungsnachweis ist Voraussetzung für
|
||||
die Zulassung zur Abschlussprüfung. (2) Er belegt gegenüber Betrieb und
|
||||
Kammer, was tatsächlich vermittelt wurde – bei Streit über ausbildungsfremde
|
||||
Tätigkeiten oder Lücken ist er das wichtigste Beweismittel. Ebenfalls
|
||||
richtig: Er hilft bei der Prüfungsvorbereitung, weil er zeigt, welche Themen
|
||||
schon behandelt wurden. (Je Grund 2 P.)
|
||||
|
||||
- id: f4
|
||||
frage: >-
|
||||
Erklären Sie den Unterschied zwischen Aufbau- und Ablauforganisation an
|
||||
einem Beispiel aus Ihrem Betrieb.
|
||||
punkte: 6
|
||||
musterloesung: >-
|
||||
Die Aufbauorganisation beschreibt die Struktur: Abteilungen, Stellen und
|
||||
Weisungsbeziehungen, dargestellt im Organigramm – etwa dass die IT der
|
||||
kaufmännischen Leitung unterstellt ist. Die Ablauforganisation beschreibt,
|
||||
wie Arbeit über die Stellen hinweg fließt – etwa der Weg einer
|
||||
Kundenbestellung vom Vertrieb über die Arbeitsvorbereitung und Fertigung
|
||||
bis zum Versand und zur Rechnung. (Definition je 2 P., stimmiges Beispiel 2 P.)
|
||||
|
||||
- id: f5
|
||||
frage: >-
|
||||
Ein Kollege schreibt Ihnen im Chat das Passwort für einen Serverzugang,
|
||||
damit Sie eine Störung beheben können. Wie bewerten Sie das, und wie wäre
|
||||
es richtig gewesen?
|
||||
punkte: 5
|
||||
musterloesung: >-
|
||||
Passwörter gehören nicht in den Chat: Nachrichten werden gespeichert,
|
||||
lassen sich weiterleiten, sind auf mehreren Geräten sichtbar und oft auch
|
||||
für Administratoren der Plattform lesbar. Richtig wäre, den Zugang über den
|
||||
Passwortmanager des Teams zu teilen oder ein persönliches Konto mit den
|
||||
nötigen Rechten einzurichten. Ist das Passwort bereits im Chat gelandet,
|
||||
wird es nach der Störung geändert. (Bewertung mit Begründung 3 P.,
|
||||
richtiger Weg 2 P.)
|
||||
|
||||
- id: f6
|
||||
frage: >-
|
||||
Ordnen Sie jedem Anliegen den passenden Kommunikationsweg zu und begründen
|
||||
Sie kurz: (a) Der Drucker im Lager druckt nicht. (b) Sie möchten wissen,
|
||||
ob ein Kollege um 14 Uhr Zeit hat. (c) Sie sagen einem Lieferanten einen
|
||||
Liefertermin zu.
|
||||
punkte: 6
|
||||
musterloesung: >-
|
||||
(a) Ticket – die Störung muss erfasst, zugewiesen und nachvollziehbar
|
||||
abgeschlossen werden. (b) Chat oder kurzer Anruf – eine schnelle Absprache
|
||||
ohne Nachweisbedarf. (c) E-Mail – eine Zusage an Externe muss nachweisbar
|
||||
sein und an einen bestimmten Empfänger gehen. (Je Zuordnung mit Begründung 2 P.)
|
||||
@@ -0,0 +1,86 @@
|
||||
id: woche-07
|
||||
woche: 7
|
||||
titel: Lernzielkontrolle Woche 7 – Skripting mit PowerShell
|
||||
dauer_minuten: 45
|
||||
hinweis: >-
|
||||
Offene Fragen. Bei Code zählt, dass er funktionieren würde – Schreibweise von
|
||||
Groß- und Kleinbuchstaben und kleine Tippfehler werden nicht abgezogen.
|
||||
|
||||
fragen:
|
||||
- id: f1
|
||||
frage: >-
|
||||
Erklären Sie, was in der PowerShell-Pipeline von Befehl zu Befehl
|
||||
weitergereicht wird, und welchen Vorteil das gegenüber einer Shell hat,
|
||||
die Text weiterreicht.
|
||||
punkte: 5
|
||||
musterloesung: >-
|
||||
Weitergereicht werden Objekte mit Eigenschaften und Methoden, keine
|
||||
Textzeilen. Der nächste Befehl kann direkt auf Eigenschaften wie Status,
|
||||
Name oder Größe zugreifen, nach ihnen filtern und sortieren. Bei einer
|
||||
Textshell müsste man die gewünschte Angabe erst aus der Zeile
|
||||
herausschneiden; ändert sich das Ausgabeformat, bricht das Skript.
|
||||
(Objekte 2 P., Vorteil mit Begründung 3 P.)
|
||||
|
||||
- id: f2
|
||||
frage: >-
|
||||
Schreiben Sie eine Befehlszeile, die die zehn größten Dateien im Ordner
|
||||
D:\Daten (ohne Unterordner) mit Name und Größe anzeigt, die größte zuerst.
|
||||
punkte: 6
|
||||
musterloesung: >-
|
||||
Get-ChildItem D:\Daten -File | Sort-Object Length -Descending |
|
||||
Select-Object -First 10 Name, Length. Bewertung: Dateien des Ordners
|
||||
abrufen (2 P.), absteigend nach Length sortieren (2 P.), auf zehn
|
||||
begrenzen und die Eigenschaften auswählen (2 P.). Der Schalter -File ist
|
||||
wünschenswert, aber nicht gefordert.
|
||||
|
||||
- id: f3
|
||||
frage: >-
|
||||
Was gibt das folgende Skript aus? Begründen Sie.
|
||||
$liste = @(3, 8, 12, 5);
|
||||
$treffer = 0;
|
||||
foreach ($zahl in $liste) { if ($zahl -gt 4) { $treffer++ } };
|
||||
$treffer
|
||||
punkte: 4
|
||||
musterloesung: >-
|
||||
Ausgabe: 3. Die Schleife geht alle vier Zahlen durch; die Bedingung ist
|
||||
bei 8, 12 und 5 erfüllt, nicht bei 3. Bei jedem Treffer wird der Zähler
|
||||
um eins erhöht. (Ergebnis 2 P., Begründung 2 P.)
|
||||
|
||||
- id: f4
|
||||
frage: >-
|
||||
Erklären Sie den Unterschied zwischen -eq, -like und -match an je einem
|
||||
Beispiel.
|
||||
punkte: 6
|
||||
musterloesung: >-
|
||||
-eq vergleicht auf Gleichheit: 'PC-001' -eq 'pc-001' ist wahr, weil
|
||||
Groß- und Kleinschreibung keine Rolle spielt. -like vergleicht mit
|
||||
Platzhaltern: 'PC-001' -like 'PC-*' ist wahr. -match prüft gegen einen
|
||||
regulären Ausdruck: 'PC-001' -match '^PC-\d{3}$' ist wahr, weil auf
|
||||
"PC-" genau drei Ziffern folgen. (Je Operator mit Beispiel 2 P.)
|
||||
|
||||
- id: f5
|
||||
frage: >-
|
||||
Ein Skript soll alte Benutzerprofile löschen. Was tun Sie, bevor Sie es
|
||||
auf allen Rechnern ausführen? Nennen Sie drei Schritte.
|
||||
punkte: 6
|
||||
musterloesung: >-
|
||||
(1) Mit -WhatIf laufen lassen und prüfen, welche Profile betroffen wären.
|
||||
(2) Zuerst an einem Testrechner, dann an einem einzelnen echten Rechner
|
||||
ausführen und das Ergebnis kontrollieren. (3) Sicherstellen, dass eine
|
||||
aktuelle Sicherung der betroffenen Daten vorliegt. Ebenfalls richtig:
|
||||
Änderung ankündigen bzw. als Änderungsanfrage freigeben lassen, Protokoll
|
||||
der gelöschten Profile schreiben, Ausschlussliste für Dienst- und
|
||||
Administratorkonten einbauen. (Je Schritt 2 P.)
|
||||
|
||||
- id: f6
|
||||
frage: >-
|
||||
Im folgenden Ausschnitt wird ein Fehler beim Kopieren nicht vom
|
||||
catch-Block aufgefangen. Warum, und wie beheben Sie das?
|
||||
try { Copy-Item \\server\vorlagen\*.docx C:\Vorlagen } catch { Write-Warning 'Kopieren fehlgeschlagen' }
|
||||
punkte: 5
|
||||
musterloesung: >-
|
||||
Copy-Item meldet die meisten Fehler als nicht abbrechende Fehler: Er gibt
|
||||
eine Fehlermeldung aus und läuft weiter, der catch-Block wird nicht
|
||||
erreicht. Abhilfe: -ErrorAction Stop an den Befehl anhängen, dann wird der
|
||||
Fehler zu einem abbrechenden Fehler und vom catch-Block aufgefangen.
|
||||
(Ursache 3 P., Behebung 2 P.)
|
||||
@@ -0,0 +1,90 @@
|
||||
id: woche-09
|
||||
woche: 9
|
||||
titel: Lernzielkontrolle Woche 9 – Virtualisierung
|
||||
dauer_minuten: 40
|
||||
hinweis: >-
|
||||
Offene Fragen. Produktnamen sind als Beispiel willkommen, aber nicht
|
||||
gefordert – es zählt das Prinzip.
|
||||
|
||||
fragen:
|
||||
- id: f1
|
||||
frage: >-
|
||||
Erklären Sie den Unterschied zwischen einem Hypervisor vom Typ 1 und vom
|
||||
Typ 2 und nennen Sie je einen typischen Einsatz.
|
||||
punkte: 5
|
||||
musterloesung: >-
|
||||
Typ 1 läuft direkt auf der Hardware ohne darunterliegendes Betriebssystem
|
||||
und verwaltet die Ressourcen selbst – Einsatz: Servervirtualisierung im
|
||||
Rechenzentrum, z. B. Proxmox VE, Hyper-V, VMware ESXi. Typ 2 läuft als
|
||||
Anwendung auf einem Wirtsbetriebssystem – Einsatz: Test- und
|
||||
Schulungsumgebungen am Arbeitsplatz, z. B. VirtualBox. (Unterschied 3 P.,
|
||||
Einsatz je 1 P.)
|
||||
|
||||
- id: f2
|
||||
frage: >-
|
||||
Ein Kollege möchte vor einem Update einen Snapshot anlegen und ihn
|
||||
„sicherheitshalber" die nächsten drei Monate behalten. Was raten Sie ihm,
|
||||
und warum?
|
||||
punkte: 6
|
||||
musterloesung: >-
|
||||
Den Snapshot vor dem Update anlegen ist richtig. Nach einer kurzen
|
||||
Beobachtungszeit, wenn das Update fehlerfrei läuft, sollte er ihn aber
|
||||
löschen: Der Snapshot wächst mit jeder Änderung, belegt Speicher und
|
||||
verlangsamt die VM; außerdem hängt er von der Ausgangsdatei ab und liegt
|
||||
auf demselben Speicher, schützt also nicht vor dessen Ausfall. Für einen
|
||||
Rückweg über Wochen ist die Datensicherung zuständig. (Empfehlung 2 P.,
|
||||
Begründung 4 P.)
|
||||
|
||||
- id: f3
|
||||
frage: >-
|
||||
Ein Host hat 16 physische Kerne und 128 GB Arbeitsspeicher. Darauf sollen
|
||||
zwölf VMs mit je 4 virtuellen Kernen und 12 GB laufen. Beurteilen Sie die
|
||||
Planung.
|
||||
punkte: 6
|
||||
musterloesung: >-
|
||||
Prozessor: 48 virtuelle auf 16 physische Kerne, also 3 zu 1 überbucht. Das
|
||||
ist bei Servern mit gemischter Last üblich und meist unproblematisch,
|
||||
sollte aber anhand der Auslastung beobachtet werden. Arbeitsspeicher:
|
||||
12 × 12 GB = 144 GB bei 128 GB physisch – überbucht, zumal der Host selbst
|
||||
ebenfalls Speicher braucht. Das führt zu Auslagerung und spürbaren
|
||||
Einbrüchen. Abhilfe: Speicher je VM nach gemessenem Bedarf verringern,
|
||||
Arbeitsspeicher aufrüsten oder VMs auf einen zweiten Host verteilen.
|
||||
(Prozessor 2 P., Speicher mit Rechnung 3 P., Abhilfe 1 P.)
|
||||
|
||||
- id: f4
|
||||
frage: >-
|
||||
Was versteht man unter Thin Provisioning, und welches Risiko entsteht
|
||||
dabei? Nennen Sie eine Gegenmaßnahme.
|
||||
punkte: 5
|
||||
musterloesung: >-
|
||||
Eine virtuelle Festplatte belegt nur den tatsächlich beschriebenen Platz
|
||||
und wächst bei Bedarf bis zur zugesagten Größe. Werden insgesamt mehr
|
||||
zugesagt als physisch vorhanden, kann der Speicher volllaufen; dann
|
||||
bleiben alle VMs auf diesem Speicher stehen. Gegenmaßnahme: den
|
||||
tatsächlichen Füllstand überwachen und bei Warnschwellen rechtzeitig
|
||||
erweitern oder aufräumen. (Begriff 2 P., Risiko 2 P., Maßnahme 1 P.)
|
||||
|
||||
- id: f5
|
||||
frage: >-
|
||||
Nennen Sie vier Angaben, die zu jeder virtuellen Maschine dokumentiert
|
||||
werden sollten, und begründen Sie eine davon.
|
||||
punkte: 5
|
||||
musterloesung: >-
|
||||
Vier aus: Zweck, Verantwortlicher, Betriebssystem, Ressourcen, Netz bzw.
|
||||
VLAN und IP-Adresse, Speicherort, Sicherung, Datum der Bereitstellung.
|
||||
Beispielbegründung Verantwortlicher: Ohne ihn weiß niemand, ob die VM noch
|
||||
gebraucht wird, wer Änderungen freigibt und wen man bei einer Störung
|
||||
fragt – solche VMs werden nie abgeschaltet und nie gepflegt.
|
||||
(Je Angabe 1 P., Begründung 1 P.)
|
||||
|
||||
- id: f6
|
||||
frage: >-
|
||||
Worin unterscheidet sich ein Container von einer virtuellen Maschine?
|
||||
punkte: 4
|
||||
musterloesung: >-
|
||||
Eine virtuelle Maschine hat ein vollständiges eigenes Betriebssystem auf
|
||||
virtueller Hardware. Ein Container teilt sich den Kern des
|
||||
Host-Betriebssystems und bringt nur die Anwendung mit ihren
|
||||
Abhängigkeiten mit. Container starten dadurch schneller und brauchen
|
||||
weniger Ressourcen, sind aber weniger stark voneinander getrennt.
|
||||
(Unterschied 2 P., Folgen 2 P.)
|
||||
@@ -0,0 +1,95 @@
|
||||
id: woche-11
|
||||
woche: 11
|
||||
titel: Lernzielkontrolle Woche 11 – Netze trennen und verbinden
|
||||
dauer_minuten: 45
|
||||
hinweis: >-
|
||||
Offene Fragen. Bei Rechen- und Zuordnungsaufgaben zählt die Begründung.
|
||||
|
||||
fragen:
|
||||
- id: f1
|
||||
frage: >-
|
||||
Erklären Sie den Unterschied zwischen einem Access-Port und einem
|
||||
Trunk-Port und nennen Sie je ein Gerät, das typischerweise daran
|
||||
angeschlossen wird.
|
||||
punkte: 5
|
||||
musterloesung: >-
|
||||
Ein Access-Port gehört zu genau einem VLAN und überträgt Rahmen ohne
|
||||
VLAN-Markierung; angeschlossen wird ein Endgerät wie ein Arbeitsplatzrechner
|
||||
oder Drucker. Ein Trunk-Port überträgt mehrere VLANs und markiert die Rahmen
|
||||
nach IEEE 802.1Q mit der VLAN-ID; angeschlossen werden ein weiterer Switch,
|
||||
ein Router bzw. eine Firewall oder ein Access Point mit mehreren
|
||||
Funknetzen. (Unterschied 3 P., Geräte je 1 P.)
|
||||
|
||||
- id: f2
|
||||
frage: >-
|
||||
Aus 10.20.0.0/24 sollen drei VLANs mit je höchstens 50 Geräten versorgt
|
||||
werden. Geben Sie für jedes VLAN Netzadresse, Maske und Gateway an.
|
||||
punkte: 6
|
||||
musterloesung: >-
|
||||
50 Geräte brauchen 52 Adressen, also Blockgröße 64 (/26) mit 62 nutzbaren.
|
||||
VLAN A: 10.20.0.0/26, Gateway 10.20.0.1. VLAN B: 10.20.0.64/26, Gateway
|
||||
10.20.0.65. VLAN C: 10.20.0.128/26, Gateway 10.20.0.129. Ein Block
|
||||
(10.20.0.192/26) bleibt als Reserve. Als Gateway ist auch die jeweils
|
||||
letzte nutzbare Adresse richtig, wenn die Wahl einheitlich ist.
|
||||
(Maske mit Begründung 2 P., je VLAN 1 P., Reserve erkannt 1 P.)
|
||||
|
||||
- id: f3
|
||||
frage: >-
|
||||
Eine Firewall hat für das Gästenetz folgende Regeln in dieser Reihenfolge:
|
||||
(1) Gäste nach beliebig, HTTP und HTTPS – erlauben.
|
||||
(2) Gäste nach 10.10.0.0/16, alle Dienste – blockieren.
|
||||
(3) Gäste nach Firewall, DNS – erlauben.
|
||||
(4) beliebig nach beliebig – blockieren.
|
||||
Ein Gast ruft https://10.10.20.21 auf, einen internen Server. Was passiert,
|
||||
und wie beheben Sie den Fehler?
|
||||
punkte: 6
|
||||
musterloesung: >-
|
||||
Die Verbindung wird erlaubt: Regeln werden von oben nach unten geprüft, und
|
||||
die erste passende entscheidet. HTTPS an eine beliebige Adresse passt auf
|
||||
Regel 1, Regel 2 wird nie erreicht. Behebung: Die Sperre der internen Netze
|
||||
muss vor der allgemeinen Erlaubnis stehen. Die DNS-Regel gehört an den
|
||||
Anfang: Liegt die Adresse der Firewall im Gästenetz ebenfalls in
|
||||
10.10.0.0/16, würde die Sperre sonst auch die Namensauflösung blockieren.
|
||||
Richtige Reihenfolge also 3, 2, 1, 4. (Ergebnis 2 P., Begründung 2 P.,
|
||||
Behebung 2 P. – die Reihenfolge 2, 3, 1, 4 gibt 1 P., wenn die Sperre vor der
|
||||
Erlaubnis erkannt ist.)
|
||||
|
||||
- id: f4
|
||||
frage: >-
|
||||
Ein Router kennt die Routen 0.0.0.0/0 über 192.0.2.1 und 172.16.0.0/12 über
|
||||
10.0.0.2 sowie 172.16.5.0/24 über 10.0.0.3. Wohin gehen Pakete an
|
||||
172.16.5.20, 172.20.1.1 und 172.32.0.1?
|
||||
punkte: 6
|
||||
musterloesung: >-
|
||||
172.16.5.20 passt auf alle drei Routen; die genaueste ist 172.16.5.0/24,
|
||||
also über 10.0.0.3. 172.20.1.1 liegt in 172.16.0.0/12 (172.16.0.0 bis
|
||||
172.31.255.255), also über 10.0.0.2. 172.32.0.1 liegt außerhalb davon und
|
||||
passt nur auf die Standardroute, also über 192.0.2.1. (Je Ziel 2 P.)
|
||||
|
||||
- id: f5
|
||||
frage: >-
|
||||
Warum ist WPA2/WPA3-Enterprise für ein Firmen-WLAN besser geeignet als ein
|
||||
gemeinsamer Schlüssel? Nennen Sie zwei Gründe.
|
||||
punkte: 4
|
||||
musterloesung: >-
|
||||
(1) Jeder meldet sich mit eigenen Zugangsdaten oder einem Zertifikat an; beim
|
||||
Ausscheiden eines Mitarbeiters wird nur dessen Zugang gesperrt, statt den
|
||||
Schlüssel für alle zu ändern. (2) Anmeldungen lassen sich einer Person
|
||||
zuordnen und protokollieren. Ebenfalls richtig: Der Zugang lässt sich an
|
||||
Gruppen im Verzeichnisdienst koppeln und einem VLAN zuweisen; ein
|
||||
weitergegebener Schlüssel öffnet nicht das ganze Netz. (Je Grund 2 P.)
|
||||
|
||||
- id: f6
|
||||
frage: >-
|
||||
Im Lager ist das WLAN trotz voller Sendeleistung der beiden Access Points
|
||||
schlecht. Nennen Sie drei mögliche Ursachen und je eine Maßnahme.
|
||||
punkte: 6
|
||||
musterloesung: >-
|
||||
Drei aus: (1) Dämpfung durch Stahlregale und Waren – Ausleuchtung messen und
|
||||
zusätzliche Access Points an den Gängen anbringen. (2) Beide Access Points
|
||||
auf demselben oder einem überlappenden Kanal im 2,4-GHz-Band – auf 1, 6 und
|
||||
11 verteilen oder 5 GHz nutzen. (3) Zu hohe Sendeleistung, Endgeräte
|
||||
bleiben am fernen Access Point hängen – Sendeleistung senken, mehr Access
|
||||
Points. (4) Störungen durch Fremdnetze oder Geräte – Kanalwahl anhand einer
|
||||
Messung. (5) Veraltete Endgeräte, die nur 2,4 GHz oder alte Standards können –
|
||||
Geräte tauschen oder ein eigenes Funknetz dafür. (Je Ursache mit Maßnahme 2 P.)
|
||||
@@ -0,0 +1,79 @@
|
||||
id: woche-13
|
||||
woche: 13
|
||||
titel: Lernzielkontrolle Woche 13 – Linux-Grundlagen
|
||||
dauer_minuten: 40
|
||||
hinweis: >-
|
||||
Offene Fragen. Befehle dürfen mit oder ohne sudo geschrieben werden, wenn
|
||||
aus der Antwort hervorgeht, dass Administratorrechte nötig sind.
|
||||
|
||||
fragen:
|
||||
- id: f1
|
||||
frage: >-
|
||||
Nennen Sie die Verzeichnisse, in denen unter Linux (a) die Konfiguration
|
||||
des SSH-Servers, (b) die Protokolldateien und (c) die Heimatverzeichnisse
|
||||
der Benutzer liegen.
|
||||
punkte: 3
|
||||
musterloesung: >-
|
||||
(a) /etc/ssh, die Datei heißt sshd_config. (b) /var/log, ergänzend das
|
||||
Journal von systemd. (c) /home, für den Administrator /root. (Je 1 P.)
|
||||
|
||||
- id: f2
|
||||
frage: >-
|
||||
Die Ausgabe von ls -l lautet: -rwxr-x--- 1 lena technik pruefen.sh.
|
||||
Erklären Sie die Rechte und geben Sie den passenden chmod-Befehl als Zahl an.
|
||||
punkte: 5
|
||||
musterloesung: >-
|
||||
Es handelt sich um eine Datei (erstes Zeichen „-"). Besitzerin lena darf
|
||||
lesen, schreiben und ausführen (rwx = 7). Die Gruppe technik darf lesen
|
||||
und ausführen (r-x = 5). Alle anderen dürfen nichts (--- = 0). Befehl:
|
||||
chmod 750 pruefen.sh. (Besitzer 1 P., Gruppe 1 P., andere 1 P., Befehl 2 P.)
|
||||
|
||||
- id: f3
|
||||
frage: >-
|
||||
Ein Benutzer soll zusätzlich in die Gruppe docker aufgenommen werden.
|
||||
Ein Kollege schlägt sudo usermod -G docker anna vor. Was ist daran falsch?
|
||||
punkte: 4
|
||||
musterloesung: >-
|
||||
Ohne die Option -a ersetzt -G alle bisherigen Zusatzgruppen durch die
|
||||
angegebene – anna verlöre also etwa die Gruppe sudo oder ihre
|
||||
Abteilungsgruppen. Richtig ist sudo usermod -aG docker anna. Die
|
||||
Änderung wird erst nach erneuter Anmeldung wirksam. (Fehler 2 P., richtiger
|
||||
Befehl 1 P., Hinweis auf Neuanmeldung 1 P.)
|
||||
|
||||
- id: f4
|
||||
frage: >-
|
||||
Der Webserver nginx startet nach einer Änderung nicht mehr. Mit welchen
|
||||
zwei Befehlen finden Sie die Ursache, und was zeigen sie?
|
||||
punkte: 4
|
||||
musterloesung: >-
|
||||
systemctl status nginx zeigt den Zustand des Dienstes und die letzten
|
||||
Protokollzeilen, oft schon mit der Fehlermeldung. journalctl -u nginx -b
|
||||
zeigt alle Meldungen des Dienstes seit dem letzten Systemstart.
|
||||
Ebenfalls richtig: nginx -t prüft die Konfiguration und nennt Datei und
|
||||
Zeile des Fehlers. (Je Befehl mit Erklärung 2 P.)
|
||||
|
||||
- id: f5
|
||||
frage: >-
|
||||
Beschreiben Sie, wie Sie einen Server so einrichten, dass die Anmeldung per
|
||||
SSH nur noch mit Schlüssel möglich ist, und worauf Sie dabei achten, um sich
|
||||
nicht auszusperren.
|
||||
punkte: 6
|
||||
musterloesung: >-
|
||||
Auf dem eigenen Rechner mit ssh-keygen ein Schlüsselpaar erzeugen und den
|
||||
öffentlichen Schlüssel mit ssh-copy-id beim Benutzer auf dem Server
|
||||
hinterlegen. Die Anmeldung mit Schlüssel testen. Dann in
|
||||
/etc/ssh/sshd_config PasswordAuthentication no und PermitRootLogin no
|
||||
setzen und den Dienst neu laden. Gegen das Aussperren: die bestehende
|
||||
Sitzung offen lassen und in einer zweiten Sitzung testen; außerdem den
|
||||
Konsolenzugang über Hypervisor oder Fernwartungskarte als Notausgang
|
||||
bereithalten. (Schlüssel 2 P., Konfiguration 2 P., Schutz vor Aussperren 2 P.)
|
||||
|
||||
- id: f6
|
||||
frage: >-
|
||||
Was unterscheidet systemctl start nginx von systemctl enable nginx?
|
||||
punkte: 3
|
||||
musterloesung: >-
|
||||
start startet den Dienst sofort, ohne dass er beim nächsten Systemstart
|
||||
wieder mitstartet. enable sorgt dafür, dass er bei jedem Systemstart
|
||||
gestartet wird, startet ihn aber nicht sofort. enable --now erledigt beides.
|
||||
(Je Befehl 1 P., enable --now 1 P.)
|
||||
@@ -0,0 +1,94 @@
|
||||
id: woche-15
|
||||
woche: 15
|
||||
titel: Lernzielkontrolle Woche 15 – Serviceanfragen bearbeiten
|
||||
dauer_minuten: 40
|
||||
hinweis: >-
|
||||
Offene Fragen. Es zählt die Begründung – bei Priorisierungen sind auch
|
||||
abweichende Einstufungen richtig, wenn sie schlüssig begründet sind.
|
||||
|
||||
fragen:
|
||||
- id: f1
|
||||
frage: >-
|
||||
Ordnen Sie zu und begründen Sie kurz, ob es sich um eine Störung, eine
|
||||
Serviceanfrage, ein Problem oder eine Änderung handelt: (a) Ein neuer
|
||||
Mitarbeiter braucht ein Konto. (b) Das VPN bricht bei allen
|
||||
Außendienstlern seit drei Wochen jeden Montag ab. (c) Die Firewall soll eine
|
||||
neue Firmware bekommen. (d) Ein Nutzer kann keine Mails mehr senden.
|
||||
punkte: 8
|
||||
musterloesung: >-
|
||||
(a) Serviceanfrage – nichts ist kaputt, verlangt wird eine vorgesehene
|
||||
Standardleistung. (b) Problem – eine wiederkehrende Ursache hinter vielen
|
||||
Störungen, die dauerhaft beseitigt werden muss; die einzelnen Meldungen
|
||||
sind jeweils Störungen. (c) Änderung – ein geplanter Eingriff in ein
|
||||
laufendes System, der bewertet, freigegeben und mit Rückweg umgesetzt
|
||||
wird. (d) Störung – eine ungeplante Beeinträchtigung, Ziel ist die schnelle
|
||||
Wiederherstellung. (Je Zuordnung mit Begründung 2 P.)
|
||||
|
||||
- id: f2
|
||||
frage: >-
|
||||
Erklären Sie, wie die Priorität eines Tickets ermittelt wird, und wenden Sie
|
||||
das auf folgenden Fall an: Der Server mit der Lohnbuchhaltung ist am
|
||||
Tag vor der Gehaltsabrechnung nicht erreichbar.
|
||||
punkte: 6
|
||||
musterloesung: >-
|
||||
Die Priorität ergibt sich aus Auswirkung (wie viele Nutzer bzw. wie
|
||||
wichtige Abläufe) und Dringlichkeit (wie schnell entsteht Schaden, gibt es
|
||||
eine Umgehung), die in einer Matrix verknüpft werden. Fall: Die Auswirkung
|
||||
ist hoch, weil die Gehaltszahlung aller Beschäftigten betroffen ist und
|
||||
gesetzliche bzw. vertragliche Fristen drohen. Die Dringlichkeit ist hoch,
|
||||
weil die Abrechnung am nächsten Tag laufen muss und es keine Umgehung
|
||||
gibt. Ergebnis: höchste Priorität (P1). (Verfahren 2 P., Auswirkung 2 P.,
|
||||
Dringlichkeit und Ergebnis 2 P.)
|
||||
|
||||
- id: f3
|
||||
frage: >-
|
||||
Was ist der Unterschied zwischen funktionaler und hierarchischer
|
||||
Eskalation? Nennen Sie je ein Beispiel.
|
||||
punkte: 4
|
||||
musterloesung: >-
|
||||
Funktional: Weitergabe an eine Stelle mit mehr Fachwissen, z. B. vom
|
||||
ersten Level an den Netzwerkadministrator, weil die Ursache im Switch
|
||||
liegt. Hierarchisch: Einbeziehung der Führungsebene, z. B. weil die
|
||||
vereinbarte Lösungszeit nicht zu halten ist oder für die Lösung eine
|
||||
Anschaffung freigegeben werden muss. (Je Begriff mit Beispiel 2 P.)
|
||||
|
||||
- id: f4
|
||||
frage: >-
|
||||
Was ist ein Workaround, und warum wird ein Ticket geschlossen, sobald er
|
||||
greift, obwohl die Ursache noch besteht?
|
||||
punkte: 4
|
||||
musterloesung: >-
|
||||
Ein Workaround ist eine Umgehung, mit der der Nutzer weiterarbeiten kann,
|
||||
obwohl die Ursache noch nicht beseitigt ist. Die Störung wird geschlossen,
|
||||
weil ihr Ziel – die Arbeitsfähigkeit des Nutzers – erreicht ist. Die
|
||||
Ursache wird getrennt im zugehörigen Problem weiterverfolgt; so bleibt
|
||||
sichtbar, dass noch etwas offen ist, ohne dass das Ticket des Nutzers
|
||||
wochenlang offen steht. (Begriff 2 P., Begründung 2 P.)
|
||||
|
||||
- id: f5
|
||||
frage: >-
|
||||
Nennen Sie fünf Angaben, die vor einer normalen Änderung feststehen
|
||||
müssen.
|
||||
punkte: 5
|
||||
musterloesung: >-
|
||||
Fünf aus: Beschreibung der Änderung; Grund bzw. Ziel; betroffene Systeme
|
||||
und Nutzer; Risikoeinschätzung; Rückweg; Sicherung bzw. Snapshot vorher;
|
||||
Freigabe durch die zuständige Person; Zeitpunkt bzw. Wartungsfenster;
|
||||
Ankündigung an die Betroffenen; Verantwortlicher für die Umsetzung;
|
||||
Kriterien, an denen der Erfolg geprüft wird. (Je Angabe 1 P.)
|
||||
|
||||
- id: f6
|
||||
frage: >-
|
||||
Formulieren Sie den Titel und die Gliederung eines Wissensartikels zu
|
||||
folgender Störung: Nutzer können nach dem Kennwortwechsel nicht mehr auf
|
||||
ihr Netzlaufwerk zugreifen, weil Windows noch das alte Kennwort gespeichert
|
||||
hat.
|
||||
punkte: 5
|
||||
musterloesung: >-
|
||||
Titel nach dem Symptom in Nutzersprache, z. B. „Netzlaufwerk nach
|
||||
Kennwortwechsel nicht erreichbar – Zugriff verweigert". Gliederung: Gilt
|
||||
für (Windows-Version, betroffene Laufwerke); Symptom mit Fehlermeldung im
|
||||
Wortlaut; Ursache (altes Kennwort in der Anmeldeinformationsverwaltung
|
||||
gespeichert); Lösung in Schritten (Eintrag entfernen, neu anmelden bzw.
|
||||
Laufwerk neu verbinden); Prüfen; Stand und Verfasser. (Titel 2 P.,
|
||||
Gliederung 3 P.)
|
||||
@@ -0,0 +1,202 @@
|
||||
id: woche-16
|
||||
woche: 16
|
||||
titel: Probeprüfung Teil 1 – Einrichten eines IT-gestützten Arbeitsplatzes
|
||||
dauer_minuten: 90
|
||||
hinweis: >-
|
||||
Nachempfunden dem Aufbau von Teil 1 der Abschlussprüfung, keine Original-
|
||||
aufgabe der Kammer. Ausgangslage für alle Aufgaben: Die Muster GmbH, ein
|
||||
Betrieb mit 130 Beschäftigten, richtet für ihre neue Abteilung
|
||||
Qualitätssicherung fünf Bildschirmarbeitsplätze und ein Abteilungs-NAS ein.
|
||||
Sie unterstützen die IT-Abteilung. Hilfsmittel – ein nicht
|
||||
programmierbarer Taschenrechner. Bei Rechenaufgaben zählt der Rechenweg.
|
||||
|
||||
fragen:
|
||||
- id: f1
|
||||
frage: >-
|
||||
Die Abteilungsleiterin sagt: „Wir brauchen schnelle, moderne Rechner."
|
||||
Nennen Sie drei Fragen, die Sie ihr stellen, bevor Sie Angebote einholen,
|
||||
und formulieren Sie eine der Antworten als prüfbare Muss-Anforderung.
|
||||
punkte: 8
|
||||
musterloesung: >-
|
||||
Drei aus: Welche Anwendungen laufen darauf (z. B. Mess- oder
|
||||
CAD-Software und deren Systemanforderungen)? Werden große Datenmengen
|
||||
verarbeitet oder Messgeräte angeschlossen – welche Schnittstellen? Wird
|
||||
mobil gearbeitet? Wie viele Bildschirme, welche Größe? Budget und
|
||||
Termin? Gibt es Vorgaben zu Lautstärke oder Datenschutz? (Je Frage 2 P.)
|
||||
Beispiel einer prüfbaren Muss-Anforderung: „Die Messsoftware öffnet ein
|
||||
Prüfprotokoll mit 10.000 Messpunkten in weniger als 5 Sekunden." oder
|
||||
„Jeder Arbeitsplatz hat zwei 27-Zoll-Bildschirme mit mindestens 2560 × 1440
|
||||
Bildpunkten." (2 P., nur wenn prüfbar formuliert)
|
||||
|
||||
- id: f2
|
||||
frage: >-
|
||||
Für die fünf Arbeitsplätze werden je ein Bildschirm benötigt. Ein Händler
|
||||
bietet ihn zum Listenpreis von 289,00 € netto je Stück an, gewährt 12 %
|
||||
Rabatt und 2 % Skonto bei Zahlung innerhalb von 10 Tagen. Die
|
||||
Versandkosten betragen pauschal 19,90 €. Berechnen Sie den Bezugspreis für
|
||||
alle fünf Bildschirme.
|
||||
punkte: 10
|
||||
musterloesung: >-
|
||||
Listeneinkaufspreis 5 × 289,00 € = 1.445,00 €. Rabatt 12 % = 173,40 €,
|
||||
Zieleinkaufspreis 1.271,60 €. Skonto 2 % vom Zieleinkaufspreis = 25,43 €,
|
||||
Bareinkaufspreis 1.246,17 €. Bezugskosten 19,90 €. Bezugspreis
|
||||
1.266,07 € netto. (Listenpreis 1 P., Rabatt und Zieleinkaufspreis 3 P.,
|
||||
Skonto vom richtigen Betrag und Bareinkaufspreis 3 P., Bezugspreis 3 P.)
|
||||
|
||||
- id: f3
|
||||
frage: >-
|
||||
Je Arbeitsplatz nehmen Rechner und Bildschirm im Betrieb zusammen 58 W auf.
|
||||
Gearbeitet wird 8 Stunden an 220 Tagen im Jahr. (a) Berechnen Sie die
|
||||
jährlichen Stromkosten für alle fünf Arbeitsplätze bei 0,32 € je kWh.
|
||||
(b) Bisher bleiben die Rechner nach Feierabend an den Arbeitstagen
|
||||
16 Stunden mit 25 W im Leerlauf eingeschaltet. Wie hoch sind die
|
||||
zusätzlichen Kosten im Jahr?
|
||||
punkte: 10
|
||||
musterloesung: >-
|
||||
(a) 0,058 kW × 8 h × 220 = 102,08 kWh je Arbeitsplatz; × 5 = 510,4 kWh;
|
||||
× 0,32 €/kWh = 163,33 €. (5 P.) (b) 0,025 kW × 16 h × 220 = 88 kWh je
|
||||
Arbeitsplatz; × 5 = 440 kWh; × 0,32 €/kWh = 140,80 €. (5 P.) Je Teilaufgabe:
|
||||
Umrechnung in kW 1 P., Stunden 1 P., kWh 1 P., Kosten 2 P.
|
||||
|
||||
- id: f4
|
||||
frage: >-
|
||||
Die Abteilung bekommt ein eigenes VLAN. Aus dem Bereich 10.20.40.0/24 soll
|
||||
ein Subnetz für höchstens 25 Geräte zuzüglich Gateway gebildet werden, so
|
||||
klein wie möglich. Geben Sie Präfix, Netzadresse, Broadcastadresse, den
|
||||
nutzbaren Bereich und eine Gateway-Adresse an. Begründen Sie das Präfix.
|
||||
punkte: 10
|
||||
musterloesung: >-
|
||||
26 Adressen für Geräte und Gateway plus Netz- und Broadcastadresse ergeben
|
||||
28; die nächste Blockgröße ist 32, also /27 (Maske 255.255.255.224) mit 30
|
||||
nutzbaren Adressen; /28 hätte nur 14. Netzadresse 10.20.40.0,
|
||||
Broadcast 10.20.40.31, nutzbar 10.20.40.1 bis 10.20.40.30, Gateway z. B.
|
||||
10.20.40.1. (Begründung und Präfix 4 P., Netz 1 P., Broadcast 2 P.,
|
||||
Bereich 2 P., Gateway 1 P.)
|
||||
|
||||
- id: f5
|
||||
frage: >-
|
||||
Das Abteilungs-NAS erhält vier Festplatten mit je 6 TB. Vergleichen Sie
|
||||
RAID 5 und RAID 10 hinsichtlich nutzbarer Kapazität und Ausfallsicherheit
|
||||
und erklären Sie, warum das NAS trotzdem gesichert werden muss.
|
||||
punkte: 8
|
||||
musterloesung: >-
|
||||
RAID 5: (4 − 1) × 6 TB = 18 TB nutzbar, eine beliebige Platte darf
|
||||
ausfallen. RAID 10: 4 / 2 × 6 TB = 12 TB nutzbar, je Spiegelpaar darf eine
|
||||
Platte ausfallen – fallen beide Platten desselben Paares aus, sind die
|
||||
Daten verloren. (Je Stufe 3 P.) Ein RAID schützt nur gegen den Ausfall von
|
||||
Platten, nicht gegen Löschen, Verschlüsselung durch Schadsoftware,
|
||||
Bedienfehler oder den Verlust des ganzen Geräts; diese Fehler übernimmt es
|
||||
sofort auf alle Platten. (2 P.)
|
||||
|
||||
- id: f6
|
||||
frage: >-
|
||||
In der Qualitätssicherung entstehen Prüfprotokolle, mit denen der Betrieb
|
||||
gegenüber Kunden nachweist, dass Teile maßhaltig sind. (a) Bestimmen Sie
|
||||
den Schutzbedarf der Prüfprotokolle für die drei Schutzziele mit
|
||||
Begründung. (b) Nennen Sie je eine Maßnahme für das Schutzziel mit dem
|
||||
höchsten Bedarf und für die Anmeldung an den Arbeitsplätzen.
|
||||
punkte: 10
|
||||
musterloesung: >-
|
||||
(a) Integrität hoch bis sehr hoch – verfälschte Protokolle können zu
|
||||
Haftung, Vertragsstrafen und Rückrufen führen. Verfügbarkeit normal bis
|
||||
hoch – ein kurzer Ausfall verzögert, ein Verlust der Protokolle verhindert
|
||||
den Nachweis gegenüber Kunden. Vertraulichkeit normal bis hoch – sie
|
||||
können Konstruktions- und Kundendaten enthalten. Abweichende Einstufungen
|
||||
zählen bei schlüssiger Begründung. (Je Schutzziel 2 P.) (b) Integrität:
|
||||
Schreibrechte nur für die Prüfer, Protokolle nach Freigabe schreibgeschützt
|
||||
ablegen, Änderungen protokollieren, Sicherung mit Generationen. Anmeldung:
|
||||
persönliche Konten mit zweitem Faktor bzw. Smartcard, Bildschirmsperre.
|
||||
(Je Maßnahme 2 P.)
|
||||
|
||||
- id: f7
|
||||
frage: >-
|
||||
Die fünf bisherigen Rechner der Abteilung sollen entsorgt werden. Auf ihren
|
||||
Festplatten liegen Prüfprotokolle mit Namen von Kunden und Prüfern.
|
||||
Beschreiben Sie das richtige Vorgehen.
|
||||
punkte: 8
|
||||
musterloesung: >-
|
||||
(1) Prüfen, ob noch Daten gebraucht werden, und sie ggf. sichern. (2) Die
|
||||
Datenträger ausbauen und nachweisbar löschen oder vernichten – nach DIN
|
||||
66399, für personenbezogene Daten mindestens Sicherheitsstufe 3; ein
|
||||
Formatieren genügt nicht. (3) Die Vernichtung mit Seriennummern
|
||||
protokollieren bzw. das Vernichtungszertifikat des Dienstleisters ablegen.
|
||||
(4) Die Geräte über einen zertifizierten Entsorger oder eine Rücknahmestelle
|
||||
nach dem ElektroG abgeben, nicht in den Restmüll. (5) Die Geräte in der
|
||||
Geräteliste als ausgesondert kennzeichnen. Ebenfalls richtig: Weitergabe zur
|
||||
Wiederverwendung nach sicherer Löschung. (2 P. für Löschen/Vernichten mit
|
||||
Norm, 2 P. Nachweis, 2 P. Entsorgung nach ElektroG, 2 P. für weitere
|
||||
Schritte)
|
||||
|
||||
- id: f8
|
||||
frage: >-
|
||||
Ein Messgerät liefert eine Liste von Messwerten in Millimetern. Ein Teil ist
|
||||
in Ordnung, wenn der Wert zwischen 24,95 und 25,05 liegt, Grenzen
|
||||
eingeschlossen. Schreiben Sie einen Pseudocode, der die Anzahl der Teile
|
||||
außerhalb der Toleranz und den größten gemessenen Wert ausgibt. Führen Sie
|
||||
einen Schreibtischtest mit den Werten 25,01; 24,90; 25,06 durch.
|
||||
punkte: 12
|
||||
musterloesung: >-
|
||||
ausserhalb ← 0; groesster ← werte[0]; FÜR jeden wert IN werte: WENN wert
|
||||
< 24,95 ODER wert > 25,05 DANN ausserhalb ← ausserhalb + 1; WENN wert >
|
||||
groesster DANN groesster ← wert; ENDE FÜR; AUSGABE ausserhalb, groesster.
|
||||
Schreibtischtest: Start ausserhalb 0, groesster 25,01. Wert 25,01 – in
|
||||
Toleranz, groesster bleibt 25,01. Wert 24,90 – außerhalb, ausserhalb 1.
|
||||
Wert 25,06 – außerhalb, ausserhalb 2, groesster 25,06. Ausgabe 2 und 25,06.
|
||||
(Initialisierung 2 P., Schleife 2 P., Bedingung mit ODER und richtigen
|
||||
Grenzen 3 P., Maximum 2 P., Schreibtischtest 3 P.)
|
||||
|
||||
- id: f9
|
||||
frage: >-
|
||||
Eine Mitarbeiterin der Abteilung klagt nach einer Woche über
|
||||
Nackenschmerzen und Blendung. Ihr Bildschirm steht vor dem Fenster.
|
||||
Nennen Sie vier Maßnahmen und die Vorschrift, die die Anforderungen an
|
||||
Bildschirmarbeitsplätze regelt.
|
||||
punkte: 8
|
||||
musterloesung: >-
|
||||
Vier aus: Arbeitsplatz so drehen, dass die Blickrichtung parallel zum
|
||||
Fenster verläuft; Bildschirm so einstellen, dass die oberste Zeile auf oder
|
||||
knapp unter Augenhöhe liegt; Abstand etwa eine Armlänge; Hauptbildschirm
|
||||
direkt vor den Körper; Stuhl und Tischhöhe anpassen; Sonnenschutz am
|
||||
Fenster; Hinweis auf die Angebotsvorsorge für die Augen. (Je Maßnahme
|
||||
1,5 P., zusammen 6 P.) Vorschrift: Arbeitsstättenverordnung, Anhang Nr. 6.
|
||||
(2 P.)
|
||||
|
||||
- id: f10
|
||||
frage: >-
|
||||
Ein externer Dienstleister richtet das NAS ein. Um welche Vertragsart
|
||||
handelt es sich, und welche Folgen hat die Abnahme?
|
||||
punkte: 6
|
||||
musterloesung: >-
|
||||
Werkvertrag, weil ein Erfolg geschuldet ist – ein eingerichtetes,
|
||||
funktionierendes NAS. (2 P.) Folgen der Abnahme (vier aus, je 1 P.): Die
|
||||
Vergütung wird fällig; die Verjährungsfrist für Mängelansprüche beginnt;
|
||||
die Gefahr geht auf den Auftraggeber über; bekannte, nicht vorbehaltene
|
||||
Mängel können später nur eingeschränkt geltend gemacht werden; Restmängel
|
||||
werden im Protokoll festgehalten.
|
||||
|
||||
- id: f11
|
||||
frage: >-
|
||||
Am ersten Arbeitstag gehen zwei Tickets ein: (a) Eine Prüferin kann die
|
||||
Messsoftware nicht starten, die Abteilung kann deshalb keine Teile
|
||||
freigeben. (b) Ein Prüfer möchte ein anderes Hintergrundbild. Ordnen Sie
|
||||
Art und Priorität zu und begründen Sie.
|
||||
punkte: 5
|
||||
musterloesung: >-
|
||||
(a) Störung mit hoher Priorität – hohe Auswirkung, weil ohne Freigabe der
|
||||
Ablauf der Abteilung steht, und hohe Dringlichkeit, weil Teile nicht
|
||||
ausgeliefert werden können. (3 P.) (b) Serviceanfrage mit geringer
|
||||
Priorität – nichts ist beeinträchtigt, die Anfrage wird nach dem üblichen
|
||||
Ablauf bzw. den Vorgaben des Betriebs erledigt oder abgelehnt. (2 P.)
|
||||
|
||||
- id: f12
|
||||
frage: >-
|
||||
Die Abteilungsleiterin verkraftet höchstens einen Arbeitstag Datenverlust.
|
||||
Wie oft muss das NAS mindestens gesichert werden, und welche Regel gilt
|
||||
für die Aufbewahrung der Kopien?
|
||||
punkte: 5
|
||||
musterloesung: >-
|
||||
Mindestens einmal täglich, z. B. jede Nacht nach Arbeitsende, weil das
|
||||
RPO einen Arbeitstag beträgt. (2 P.) Für die Aufbewahrung gilt die
|
||||
3-2-1-Regel: drei Kopien auf zwei verschiedenen Medien, eine davon außer
|
||||
Haus; zusätzlich eine Kopie offline oder unveränderlich gegen
|
||||
Schadsoftware. (3 P.)
|
||||
@@ -203,3 +203,15 @@ bloecke:
|
||||
kuerzel: S
|
||||
titel: Betriebssysteme und Dienste
|
||||
farbe: petrol
|
||||
- id: sicherheit
|
||||
kuerzel: I
|
||||
titel: IT-Sicherheit und Datenschutz
|
||||
farbe: petrol
|
||||
- id: programmierung
|
||||
kuerzel: P
|
||||
titel: Skripting und Automatisierung
|
||||
farbe: petrol
|
||||
- id: server
|
||||
kuerzel: V
|
||||
titel: Server und Virtualisierung
|
||||
farbe: petrol
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
nummer: 5
|
||||
titel: Ausbildung, Betrieb und Zusammenarbeit
|
||||
block: arbeitsalltag
|
||||
leitfrage: Für wen arbeitet die IT – und woher weißt du, was diese Leute brauchen?
|
||||
ziel: >-
|
||||
Du kennst deine Rechte und Pflichten in der Ausbildung, kannst den Aufbau des
|
||||
Betriebs aus Sicht der IT beschreiben und wählst für jede Absprache den
|
||||
passenden Kanal.
|
||||
|
||||
handouts: [A4, A5, A6]
|
||||
aufgaben: ["5.1"]
|
||||
checklisten: []
|
||||
lernzielkontrolle: woche-05
|
||||
|
||||
tage:
|
||||
- tag: Montag
|
||||
theorie: [A4]
|
||||
praxis: Den eigenen Ausbildungsvertrag und den betrieblichen Ausbildungsplan durchlesen, Fragen notieren und mit dem Ausbilder klären.
|
||||
- tag: Dienstag
|
||||
theorie: [A5]
|
||||
praxis: Praxisaufgabe 5.1 beginnen – Organigramm besorgen, Gesprächstermine mit allen Abteilungen vereinbaren, erste Gespräche führen.
|
||||
- tag: Mittwoch
|
||||
theorie: [A6]
|
||||
praxis: Ablage der IT-Dokumentation sichten, drei veraltete oder doppelte Dokumente finden und einen Vorschlag zur Bereinigung machen.
|
||||
- tag: Donnerstag
|
||||
theorie: []
|
||||
praxis: Praxisaufgabe 5.1 abschließen – restliche Gespräche, Abhängigkeiten einzeichnen, Übersicht ablegen, Tickets anlegen.
|
||||
- tag: Freitag
|
||||
theorie: []
|
||||
praxis: Lernzielkontrolle, danach Berichtsheft schreiben.
|
||||
@@ -0,0 +1,30 @@
|
||||
nummer: 6
|
||||
titel: IT-Sicherheit und Datenschutz
|
||||
block: sicherheit
|
||||
leitfrage: Was ist hier eigentlich wie viel wert – und wer würde es vermissen?
|
||||
ziel: >-
|
||||
Du kannst den Schutzbedarf eines Arbeitsbereichs feststellen und begründen,
|
||||
einen Arbeitsplatz auf typische Schwachstellen prüfen und richtig reagieren,
|
||||
wenn ein Konto oder Daten in falsche Hände geraten sind.
|
||||
|
||||
handouts: [I1, I2, I3]
|
||||
aufgaben: ["6.1"]
|
||||
checklisten: [05-arbeitsplatz-sicherheit-pruefen]
|
||||
lernzielkontrolle: null
|
||||
|
||||
tage:
|
||||
- tag: Montag
|
||||
theorie: [I1]
|
||||
praxis: Drei Anwendungen des Betriebs gemeinsam mit dem Ausbilder einstufen, je Schutzziel mit Begründung.
|
||||
- tag: Dienstag
|
||||
theorie: [I2]
|
||||
praxis: Fünf Arbeitsplätze nach Checkliste prüfen, Abweichungen als Tickets anlegen.
|
||||
- tag: Mittwoch
|
||||
theorie: [I3]
|
||||
praxis: Praxisaufgabe 6.1 beginnen – Bereich wählen, Informationen und Anwendungen erfassen, Gespräch mit der Leitung vereinbaren.
|
||||
- tag: Donnerstag
|
||||
theorie: []
|
||||
praxis: Praxisaufgabe 6.1 abschließen – Systeme ableiten, Einstufung abstimmen, Maßnahmen vorschlagen.
|
||||
- tag: Freitag
|
||||
theorie: []
|
||||
praxis: Ergebnis der Schutzbedarfsfeststellung dem Ausbilder vorstellen, Berichtsheft schreiben.
|
||||
@@ -0,0 +1,30 @@
|
||||
nummer: 7
|
||||
titel: Skripting mit PowerShell
|
||||
block: programmierung
|
||||
leitfrage: Welche Arbeit machst du jede Woche von Hand, obwohl ein Rechner sie besser könnte?
|
||||
ziel: >-
|
||||
Du kannst mit der PowerShell-Pipeline Informationen abfragen und filtern,
|
||||
ein Skript mit Variablen, Bedingungen und Schleifen schreiben und es so
|
||||
gestalten, dass andere es sicher benutzen können.
|
||||
|
||||
handouts: [P1, P2, P3]
|
||||
aufgaben: ["7.1"]
|
||||
checklisten: []
|
||||
lernzielkontrolle: woche-07
|
||||
|
||||
tage:
|
||||
- tag: Montag
|
||||
theorie: [P1]
|
||||
praxis: Zehn Fragen an das eigene System mit der Pipeline beantworten – etwa welche Dienste beendet sind, die automatisch starten sollten.
|
||||
- tag: Dienstag
|
||||
theorie: [P2]
|
||||
praxis: Ein Skript schreiben, das vor knappem Speicherplatz warnt, und an drei Rechnern testen.
|
||||
- tag: Mittwoch
|
||||
theorie: [P3]
|
||||
praxis: Praxisaufgabe 7.1 beginnen – Angaben in den CIM-Klassen finden, Objekt bauen, erster Lauf.
|
||||
- tag: Donnerstag
|
||||
theorie: []
|
||||
praxis: Praxisaufgabe 7.1 abschließen – Aktualisieren statt Anhängen, Fehlerbehandlung, Hilfeblock, Lauf auf drei Rechnern.
|
||||
- tag: Freitag
|
||||
theorie: []
|
||||
praxis: Lernzielkontrolle, danach Berichtsheft schreiben.
|
||||
@@ -0,0 +1,30 @@
|
||||
nummer: 8
|
||||
titel: Datensicherung und Speicher
|
||||
block: system
|
||||
leitfrage: Wie lange dauert es wirklich, bis nach einem Ausfall wieder gearbeitet werden kann?
|
||||
ziel: >-
|
||||
Du kannst ein Sicherungskonzept aus dem Schutzbedarf ableiten, eine
|
||||
Wiederherstellung durchführen und messen und die passende RAID-Stufe für
|
||||
einen Datenspeicher begründen.
|
||||
|
||||
handouts: [S3, S4, S5]
|
||||
aufgaben: ["8.1"]
|
||||
checklisten: [06-wiederherstellung-testen]
|
||||
lernzielkontrolle: null
|
||||
|
||||
tage:
|
||||
- tag: Montag
|
||||
theorie: [S3]
|
||||
praxis: Die Sicherungsaufträge des Betriebs gemeinsam mit dem Ausbilder durchgehen und je Auftrag Art, Häufigkeit und Aufbewahrung notieren.
|
||||
- tag: Dienstag
|
||||
theorie: [S5]
|
||||
praxis: RAID-Zustand und Plattenüberwachung von Server und NAS prüfen, Kapazitäten für drei Ausbaustufen durchrechnen.
|
||||
- tag: Mittwoch
|
||||
theorie: [S4]
|
||||
praxis: Eine einzelne Datei und einen Ordner mit Berechtigungen nach Checkliste zurückspielen.
|
||||
- tag: Donnerstag
|
||||
theorie: []
|
||||
praxis: Praxisaufgabe 8.1 – Sicherung des Bereichs prüfen, auf die Testumgebung zurückspielen, Zeit messen, Vorschläge schreiben.
|
||||
- tag: Freitag
|
||||
theorie: []
|
||||
praxis: Monatliches Feedbackgespräch, danach Berichtsheft schreiben.
|
||||
@@ -0,0 +1,30 @@
|
||||
nummer: 9
|
||||
titel: Virtualisierung
|
||||
block: server
|
||||
leitfrage: Wofür ist diese VM eigentlich da – und wer würde es merken, wenn sie fehlt?
|
||||
ziel: >-
|
||||
Du kannst Hypervisoren einordnen, eine virtuelle Maschine planen und
|
||||
bereitstellen, Snapshots richtig einsetzen und erklären, warum sie keine
|
||||
Datensicherung ersetzen.
|
||||
|
||||
handouts: [V1, V2, V3]
|
||||
aufgaben: ["9.1"]
|
||||
checklisten: [07-vm-bereitstellen]
|
||||
lernzielkontrolle: woche-09
|
||||
|
||||
tage:
|
||||
- tag: Montag
|
||||
theorie: [V1]
|
||||
praxis: Die virtuelle Umgebung des Betriebs mit dem Ausbilder durchgehen – Hosts, VMs, Auslastung – und eine Übersicht zeichnen.
|
||||
- tag: Dienstag
|
||||
theorie: [V2]
|
||||
praxis: Auf dem Testhost eine Test-VM anlegen, Snapshot anlegen, Änderung vornehmen, zurücksetzen und Snapshot löschen.
|
||||
- tag: Mittwoch
|
||||
theorie: [V3]
|
||||
praxis: Praxisaufgabe 9.1 beginnen – Planungsblatt ausfüllen und freigeben lassen, VM anlegen, Betriebssystem installieren.
|
||||
- tag: Donnerstag
|
||||
theorie: []
|
||||
praxis: Praxisaufgabe 9.1 abschließen – einbinden, sichern, Rückweg üben, dokumentieren.
|
||||
- tag: Freitag
|
||||
theorie: []
|
||||
praxis: Lernzielkontrolle, danach Berichtsheft schreiben.
|
||||
@@ -0,0 +1,30 @@
|
||||
nummer: 10
|
||||
titel: Verzeichnisdienst und Serverdienste
|
||||
block: server
|
||||
leitfrage: Woran erkennt man in fünf Jahren noch, warum jemand ein Recht hat?
|
||||
ziel: >-
|
||||
Du kannst eine Abteilung im Active Directory mit OUs und Gruppen nach AGDLP
|
||||
abbilden, Einstellungen per Gruppenrichtlinie verteilen und prüfen, und
|
||||
Datei- und Druckdienste so einrichten, dass sie pflegbar bleiben.
|
||||
|
||||
handouts: [V4, V5, V6]
|
||||
aufgaben: ["10.1"]
|
||||
checklisten: [08-mitarbeiter-einrichten]
|
||||
lernzielkontrolle: null
|
||||
|
||||
tage:
|
||||
- tag: Montag
|
||||
theorie: [V4]
|
||||
praxis: Die OU- und Gruppenstruktur des Betriebs mit dem Ausbilder durchgehen, drei Gruppen auf Zweck und Mitglieder prüfen.
|
||||
- tag: Dienstag
|
||||
theorie: [V5]
|
||||
praxis: In der Testdomäne eine Richtlinie für die Bildschirmsperre anlegen, verknüpfen und mit gpresult nachweisen.
|
||||
- tag: Mittwoch
|
||||
theorie: [V6]
|
||||
praxis: Praxisaufgabe 10.1 beginnen – Plan schreiben, Ablage anlegen, Rechte vergeben.
|
||||
- tag: Donnerstag
|
||||
theorie: []
|
||||
praxis: Praxisaufgabe 10.1 abschließen – Testkonten nach Checkliste, Richtlinien, Nachweis per Anmeldung, Abteilungswechsel.
|
||||
- tag: Freitag
|
||||
theorie: []
|
||||
praxis: Einen echten Neuzugang mit dem Ausbilder nach Checkliste einrichten, falls einer ansteht – sonst Ergebnis 10.1 vorstellen. Berichtsheft schreiben.
|
||||
@@ -0,0 +1,30 @@
|
||||
nummer: 11
|
||||
titel: Netze trennen und verbinden
|
||||
block: netzwerk
|
||||
leitfrage: Wer soll wen erreichen dürfen – und wo im Netz steht das geschrieben?
|
||||
ziel: >-
|
||||
Du kannst ein Netz mit VLANs aufteilen, Routing-Entscheidungen nachvollziehen,
|
||||
Firewallregeln in der richtigen Reihenfolge formulieren und ein getrenntes
|
||||
Gäste-WLAN einrichten und prüfen.
|
||||
|
||||
handouts: [N5, N6, N7]
|
||||
aufgaben: ["11.1"]
|
||||
checklisten: []
|
||||
lernzielkontrolle: woche-11
|
||||
|
||||
tage:
|
||||
- tag: Montag
|
||||
theorie: [N5]
|
||||
praxis: VLAN-Übersicht des Betriebs mit dem Ausbilder durchgehen, an einem Switch Access- und Trunk-Ports nachvollziehen und mit der Dokumentation abgleichen.
|
||||
- tag: Dienstag
|
||||
theorie: [N6]
|
||||
praxis: Routingtabelle und Firewallregeln des Betriebs lesen, zu fünf Regeln Zweck und Reihenfolge erklären.
|
||||
- tag: Mittwoch
|
||||
theorie: [N7]
|
||||
praxis: Praxisaufgabe 11.1 beginnen – Plan schreiben, Switch und Firewall einrichten.
|
||||
- tag: Donnerstag
|
||||
theorie: []
|
||||
praxis: Praxisaufgabe 11.1 abschließen – Access Point, Nachweise mit zwei Gastgeräten, Dokumentation.
|
||||
- tag: Freitag
|
||||
theorie: []
|
||||
praxis: Lernzielkontrolle, danach Berichtsheft schreiben.
|
||||
@@ -0,0 +1,30 @@
|
||||
nummer: 12
|
||||
titel: Ein Kundenauftrag von der Anfrage bis zur Abnahme
|
||||
block: arbeitsalltag
|
||||
leitfrage: Woran erkennen Kunde und IT am Ende gemeinsam, dass der Auftrag erfüllt ist?
|
||||
ziel: >-
|
||||
Du kannst Anforderungen prüfbar aufnehmen, Angebote bis zum Bezugspreis
|
||||
rechnen und vergleichen, die passende Vertragsart erkennen und einen Auftrag
|
||||
mit Protokoll abnehmen lassen.
|
||||
|
||||
handouts: [A7, A8, A9]
|
||||
aufgaben: ["12.1"]
|
||||
checklisten: [09-auftrag-abnehmen-lassen]
|
||||
lernzielkontrolle: null
|
||||
|
||||
tage:
|
||||
- tag: Montag
|
||||
theorie: [A7]
|
||||
praxis: Praxisaufgabe 12.1 beginnen – Gespräch mit dem Kunden, Lastenheft schreiben und bestätigen lassen, Anfrage verschicken.
|
||||
- tag: Dienstag
|
||||
theorie: [A8]
|
||||
praxis: Zehn Übungsaufgaben zur Bezugskalkulation rechnen, danach die ersten eingegangenen Angebote auswerten.
|
||||
- tag: Mittwoch
|
||||
theorie: [A9]
|
||||
praxis: Drei bestehende Verträge des Betriebs (Wartung, Leasing, Support) lesen und Vertragsart, Leistung und Fristen herausschreiben.
|
||||
- tag: Donnerstag
|
||||
theorie: []
|
||||
praxis: Praxisaufgabe 12.1 abschließen – Nutzwertanalyse, Pflichtenheft, Empfehlung vorstellen.
|
||||
- tag: Freitag
|
||||
theorie: []
|
||||
praxis: Monatliches Feedbackgespräch, danach Berichtsheft schreiben.
|
||||
@@ -0,0 +1,30 @@
|
||||
nummer: 13
|
||||
titel: Linux-Grundlagen
|
||||
block: system
|
||||
leitfrage: Wo steht unter Linux, warum etwas nicht funktioniert?
|
||||
ziel: >-
|
||||
Du kannst dich auf der Linux-Kommandozeile sicher bewegen, Benutzer und
|
||||
Dateirechte richtig setzen, Software und Dienste verwalten und einen Server
|
||||
so einrichten, dass er nur per SSH-Schlüssel erreichbar ist.
|
||||
|
||||
handouts: [S6, S7, S8]
|
||||
aufgaben: ["13.1"]
|
||||
checklisten: [10-linux-server-einrichten]
|
||||
lernzielkontrolle: woche-13
|
||||
|
||||
tage:
|
||||
- tag: Montag
|
||||
theorie: [S6]
|
||||
praxis: Auf einem Testsystem zwanzig Fragen mit Befehlen beantworten – wo liegt was, wie voll ist was, was steht im Protokoll.
|
||||
- tag: Dienstag
|
||||
theorie: [S7]
|
||||
praxis: Benutzer, Gruppen und ein gemeinsames Verzeichnis für eine Abteilung anlegen und mit zwei Konten prüfen.
|
||||
- tag: Mittwoch
|
||||
theorie: [S8]
|
||||
praxis: Praxisaufgabe 13.1 beginnen – VM planen, installieren, Benutzer und Schlüssel einrichten.
|
||||
- tag: Donnerstag
|
||||
theorie: []
|
||||
praxis: Praxisaufgabe 13.1 abschließen – SSH absichern, Firewall, nginx, Fehlersuche mit journalctl.
|
||||
- tag: Freitag
|
||||
theorie: []
|
||||
praxis: Lernzielkontrolle, danach Berichtsheft schreiben.
|
||||
@@ -0,0 +1,30 @@
|
||||
nummer: 14
|
||||
titel: Betrieb und Überwachung
|
||||
block: system
|
||||
leitfrage: Wer merkt zuerst, dass etwas nicht stimmt – die IT oder der Nutzer?
|
||||
ziel: >-
|
||||
Du kannst eine Überwachung mit begründeten Schwellwerten einrichten, eine
|
||||
Störung anhand der Protokolle zeitlich eingrenzen und Updates so planen, dass
|
||||
sie zuverlässig ankommen, ohne den Betrieb zu stören.
|
||||
|
||||
handouts: [S9, S10, S11]
|
||||
aufgaben: ["14.1"]
|
||||
checklisten: []
|
||||
lernzielkontrolle: null
|
||||
|
||||
tage:
|
||||
- tag: Montag
|
||||
theorie: [S9]
|
||||
praxis: Die Überwachung des Betriebs mit dem Ausbilder durchgehen – was wird überwacht, welche Alarme kamen im letzten Monat, welche davon waren nützlich.
|
||||
- tag: Dienstag
|
||||
theorie: [S10]
|
||||
praxis: Drei echte Störungen aus dem Ticketsystem nehmen und in den Protokollen nachvollziehen, wann und warum sie auftraten.
|
||||
- tag: Mittwoch
|
||||
theorie: [S11]
|
||||
praxis: Den Update-Stand aller Arbeitsplätze und Netzwerkgeräte erheben, Geräte ohne aktuellen Stand und mit End of Life auflisten.
|
||||
- tag: Donnerstag
|
||||
theorie: []
|
||||
praxis: Praxisaufgabe 14.1 – Prüfungen und Schwellen festlegen, einrichten, Ausfall testen, dokumentieren.
|
||||
- tag: Freitag
|
||||
theorie: []
|
||||
praxis: Ergebnis der Bestandsaufnahme vom Mittwoch dem Ausbilder vorstellen, Berichtsheft schreiben.
|
||||
@@ -0,0 +1,30 @@
|
||||
nummer: 15
|
||||
titel: Serviceanfragen bearbeiten
|
||||
block: arbeitsalltag
|
||||
leitfrage: Welches Ticket ist wirklich das dringendste – und woran erkennst du das?
|
||||
ziel: >-
|
||||
Du kannst Störungen, Serviceanfragen, Probleme und Änderungen unterscheiden,
|
||||
Tickets nachvollziehbar priorisieren und eskalieren und Lösungen so
|
||||
festhalten, dass andere sie wiederfinden.
|
||||
|
||||
handouts: [A10, A11, A12]
|
||||
aufgaben: ["15.1"]
|
||||
checklisten: [11-aenderung-durchfuehren]
|
||||
lernzielkontrolle: woche-15
|
||||
|
||||
tage:
|
||||
- tag: Montag
|
||||
theorie: [A10]
|
||||
praxis: Vormittags Praxisaufgabe 15.1 – erster Level im Ticketsystem. Nachmittags zwanzig geschlossene Tickets nach Art einordnen.
|
||||
- tag: Dienstag
|
||||
theorie: [A11]
|
||||
praxis: Vormittags Praxisaufgabe 15.1. Nachmittags die Prioritätenmatrix des Betriebs mit dem Ausbilder durchgehen und an zehn Beispielen anwenden.
|
||||
- tag: Mittwoch
|
||||
theorie: [A12]
|
||||
praxis: Vormittags Praxisaufgabe 15.1. Nachmittags eine geplante Änderung nach Checkliste vorbereiten und vom Ausbilder freigeben lassen.
|
||||
- tag: Donnerstag
|
||||
theorie: []
|
||||
praxis: Vormittags Praxisaufgabe 15.1 abschließen. Nachmittags zwei Wissensartikel schreiben und das Problem anlegen.
|
||||
- tag: Freitag
|
||||
theorie: []
|
||||
praxis: Lernzielkontrolle, danach Berichtsheft schreiben.
|
||||
@@ -0,0 +1,31 @@
|
||||
nummer: 16
|
||||
titel: Den Arbeitsplatz als Ganzes – Vorbereitung auf Teil 1
|
||||
block: hardware
|
||||
leitfrage: Was gehört zu einem Arbeitsplatz außer dem Rechner?
|
||||
ziel: >-
|
||||
Du kannst einen Bildschirmarbeitsplatz ergonomisch beurteilen, Energiekosten
|
||||
berechnen und Nachhaltigkeit bei Beschaffung und Entsorgung berücksichtigen,
|
||||
Abläufe in Pseudocode beschreiben und eine Aufgabe im Stil von Teil 1 der
|
||||
Abschlussprüfung in der vorgegebenen Zeit bearbeiten.
|
||||
|
||||
handouts: [H4, H5, P4]
|
||||
aufgaben: ["16.1"]
|
||||
checklisten: [12-bildschirmarbeitsplatz-pruefen]
|
||||
lernzielkontrolle: woche-16
|
||||
|
||||
tage:
|
||||
- tag: Montag
|
||||
theorie: [H4]
|
||||
praxis: Den eigenen Arbeitsplatz nach Checkliste prüfen und einstellen, danach Praxisaufgabe 16.1 beginnen.
|
||||
- tag: Dienstag
|
||||
theorie: [H5]
|
||||
praxis: Praxisaufgabe 16.1 – Messungen und Hochrechnung, zehn Übungsaufgaben zu Energiekosten.
|
||||
- tag: Mittwoch
|
||||
theorie: [P4]
|
||||
praxis: Fünf Abläufe aus dem Arbeitsalltag in Pseudocode beschreiben und je einen Schreibtischtest machen. Praxisaufgabe 16.1 abschließen.
|
||||
- tag: Donnerstag
|
||||
theorie: []
|
||||
praxis: Probeprüfung Teil 1 unter Prüfungsbedingungen – 90 Minuten, ohne Hilfsmittel außer Taschenrechner.
|
||||
- tag: Freitag
|
||||
theorie: []
|
||||
praxis: Monatliches Feedbackgespräch mit Besprechung der Probeprüfung, danach Berichtsheft schreiben.
|
||||
+4
-4
@@ -1,6 +1,6 @@
|
||||
# Abnahmeprotokoll
|
||||
|
||||
Erzeugt am 2026-09-11 17:16 Uhr
|
||||
Erzeugt am 2026-10-04 16:24 Uhr
|
||||
|
||||
Erzeugt von `scripts/pruefungen/abnahme.mjs` gegen eine **frische, leere Datenbank**.
|
||||
|
||||
@@ -54,15 +54,15 @@ Erzeugt von `scripts/pruefungen/abnahme.mjs` gegen eine **frische, leere Datenba
|
||||
|
||||
- ✓ Der Azubi legt das Wochenblatt der laufenden Woche an
|
||||
- ✓ Ein Wochenblatt lässt sich öffnen
|
||||
- ✓ Das Wochenblatt kommt als PDF heraus — HTTP 200, 2646 Bytes
|
||||
- ✓ Das Wochenblatt kommt als PDF heraus — HTTP 200, 2649 Bytes
|
||||
|
||||
## A8 · Sicherung zurückspielen
|
||||
|
||||
- ✓ Die Sicherung läuft durch — lernbar-20260911-171627.tar.gz
|
||||
- ✓ Die Sicherung läuft durch — lernbar-20261004-182433.tar.gz
|
||||
- ✓ Zum Beweis wird der Datenbestand beschädigt — 2 → 1 Konten
|
||||
- ✓ Die Rückspielung läuft durch — ohne Fehler
|
||||
- ✓ Der gelöschte Azubi ist wieder da — Tim Vogt
|
||||
- ✓ Auch der Lernverlauf kam mit zurück — 1 Einträge
|
||||
- ✓ Der überschriebene Stand wurde zur Seite gelegt, nicht gelöscht — verdraengt-20260911-171632
|
||||
- ✓ Der überschriebene Stand wurde zur Seite gelegt, nicht gelöscht — verdraengt-20261004-182436
|
||||
|
||||
**36 von 36 Prüfungen erfüllt.**
|
||||
|
||||
@@ -401,6 +401,7 @@ mitten durchgeschnitten, aufklappbare Abschnitte drucken aufgeklappt.
|
||||
|
||||
| Beobachtung | Woran es liegt |
|
||||
|---|---|
|
||||
| „Zu viele Fehlversuche" bei der Anmeldung | Nach fünf falschen Passwörtern wird die Adresse für eine Minute gesperrt, bei weiteren Fehlversuchen länger, höchstens 15 Minuten. Abwarten – oder Passwort vom Ausbilder neu setzen lassen. Hat sich das einzige Ausbilderkonto ausgesperrt: `docker compose restart lernbar` setzt die Sperre zurück. |
|
||||
| „Diese Seite gibt es nicht" bei fremden Daten | Kein Fehler, sondern die Rechteprüfung. Ob es zu einer Kennung überhaupt Daten gibt, geht Unbefugte nichts an – deshalb 404 und nicht „kein Zugriff". |
|
||||
| Die Anwendung startet nicht, nennt aber Datei und Zeile | Ein Inhaltsfehler unter `content/`. Die Meldung sagt genau, wo. `npm run inhalte:pruefen` prüft ohne Start. |
|
||||
| Ein Anhang lässt sich nicht hochladen | Über 25 MB. Bei einem Reverse Proxy zusätzlich `client_max_body_size 30m` setzen (siehe README). |
|
||||
|
||||
@@ -0,0 +1,260 @@
|
||||
# Lern-Bar auf Proxmox betreiben
|
||||
|
||||
Diese Anleitung führt von einer leeren Proxmox-Umgebung zur laufenden Lern-Bar im
|
||||
Betriebsnetz: eine virtuelle Maschine mit Debian, darin Docker mit der Lern-Bar und Caddy
|
||||
als Reverse Proxy mit HTTPS. Rechne mit etwa zwei Stunden.
|
||||
|
||||
> **HTTPS ist Pflicht, nicht Kür.** Die Lern-Bar setzt das Anmeldecookie im Betrieb mit dem
|
||||
> Merkmal `Secure`. Über `http://` nimmt der Browser es nicht an – die Anmeldung scheitert
|
||||
> dann ohne Fehlermeldung, man landet einfach wieder auf der Anmeldeseite.
|
||||
|
||||
---
|
||||
|
||||
## Inhalt
|
||||
|
||||
1. [VM oder LXC?](#1-vm-oder-lxc)
|
||||
2. [Die VM anlegen](#2-die-vm-anlegen)
|
||||
3. [Grundeinrichtung](#3-grundeinrichtung)
|
||||
4. [Docker installieren](#4-docker-installieren)
|
||||
5. [Die Lern-Bar holen und starten](#5-die-lern-bar-holen-und-starten)
|
||||
6. [HTTPS mit Caddy](#6-https-mit-caddy)
|
||||
7. [Das erste Konto](#7-das-erste-konto)
|
||||
8. [Sicherung](#8-sicherung)
|
||||
9. [Aktualisieren](#9-aktualisieren)
|
||||
10. [Abnahme vor dem Echtbetrieb](#10-abnahme-vor-dem-echtbetrieb)
|
||||
|
||||
---
|
||||
|
||||
## 1. VM oder LXC?
|
||||
|
||||
**Eine VM.** Docker läuft auch in einem LXC-Container, braucht dort aber `nesting` und
|
||||
`keyctl`, und in unprivilegierten Containern gibt es immer wieder Ärger mit dem
|
||||
Speichertreiber und den Rechten auf Volumes. Eine VM ist sauber vom Host getrennt, wird von
|
||||
Proxmox Backup als Ganzes gesichert und verhält sich wie jeder andere Server. Der zusätzliche
|
||||
Arbeitsspeicher von ein paar hundert Megabyte fällt nicht ins Gewicht.
|
||||
|
||||
## 2. Die VM anlegen
|
||||
|
||||
| Einstellung | Wert |
|
||||
|---|---|
|
||||
| Betriebssystem | Debian 13 („trixie"), Netinstall-Abbild |
|
||||
| Prozessor | 2 Kerne, Typ `host` |
|
||||
| Arbeitsspeicher | 2 GB (der Bau des Abbilds braucht kurzzeitig mehr als der Betrieb) |
|
||||
| Festplatte | 32 GB, VirtIO SCSI, auf einem Speicher, der in die Proxmox-Sicherung fällt |
|
||||
| Netz | VirtIO, im **Server-VLAN** |
|
||||
| Optionen | QEMU Guest Agent aktivieren |
|
||||
|
||||
Bei der Installation nur **SSH-Server** und **Standard-Systemwerkzeuge** auswählen, keine
|
||||
grafische Oberfläche.
|
||||
|
||||
Danach:
|
||||
|
||||
- feste IP-Adresse vergeben oder im DHCP reservieren
|
||||
- DNS-Eintrag anlegen, etwa `lernbar.betrieb.local` – diesen Namen nutzen die Azubis
|
||||
- in der VM `sudo apt install qemu-guest-agent && sudo systemctl enable --now qemu-guest-agent`
|
||||
|
||||
## 3. Grundeinrichtung
|
||||
|
||||
Die Lern-Bar bringt dafür ihre eigene Checkliste mit: **Checklisten → Linux-Server
|
||||
grundlegend einrichten** (Woche 13). Kurzfassung:
|
||||
|
||||
```bash
|
||||
# Persönlicher Benutzer mit sudo, SSH nur mit Schlüssel (Schritte siehe Handout S8)
|
||||
sudo apt update && sudo apt upgrade -y
|
||||
sudo apt install -y unattended-upgrades ufw git
|
||||
sudo dpkg-reconfigure -plow unattended-upgrades
|
||||
|
||||
# Firewall: SSH nur aus dem Verwaltungsnetz, Web für alle im LAN
|
||||
sudo ufw default deny incoming
|
||||
sudo ufw allow from 10.10.99.0/24 to any port 22 proto tcp # Verwaltungsnetz anpassen
|
||||
sudo ufw allow 80/tcp
|
||||
sudo ufw allow 443/tcp
|
||||
sudo ufw enable
|
||||
```
|
||||
|
||||
> **Docker und ufw:** Ports, die Docker veröffentlicht, laufen an ufw vorbei. Bei der
|
||||
> Lern-Bar ist das unkritisch, weil `docker-compose.yml` Port 3000 nur auf `127.0.0.1`
|
||||
> veröffentlicht – von außen ist er nicht erreichbar. Wer das ändert, öffnet den Port für
|
||||
> alle, egal was ufw sagt.
|
||||
|
||||
## 4. Docker installieren
|
||||
|
||||
Aus dem Paketarchiv von Docker, nicht aus Debian – dort fehlt die Compose-Erweiterung in
|
||||
aktueller Fassung.
|
||||
|
||||
```bash
|
||||
sudo apt install -y ca-certificates curl
|
||||
sudo install -m 0755 -d /etc/apt/keyrings
|
||||
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
|
||||
sudo chmod a+r /etc/apt/keyrings/docker.asc
|
||||
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] \
|
||||
https://download.docker.com/linux/debian $(. /etc/os-release && echo "$VERSION_CODENAME") stable" \
|
||||
| sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
|
||||
sudo apt update
|
||||
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
|
||||
|
||||
# Den eigenen Benutzer berechtigen – danach einmal ab- und wieder anmelden
|
||||
sudo usermod -aG docker "$USER"
|
||||
```
|
||||
|
||||
Prüfen: `docker compose version` zeigt eine Fassung 2.x.
|
||||
|
||||
## 5. Die Lern-Bar holen und starten
|
||||
|
||||
Für den Server einen **eigenen Lesezugang** zum Git-Repository anlegen, nicht die eigenen
|
||||
Zugangsdaten hinterlegen. In Gitea: Repository → Einstellungen → **Deploy-Schlüssel**, einen
|
||||
SSH-Schlüssel der VM ohne Schreibrecht eintragen.
|
||||
|
||||
```bash
|
||||
ssh-keygen -t ed25519 -f ~/.ssh/lernbar_deploy -N ""
|
||||
cat ~/.ssh/lernbar_deploy.pub # als Deploy-Schlüssel in Gitea eintragen
|
||||
|
||||
cat >> ~/.ssh/config <<'EOF'
|
||||
Host git.wilde-server.de
|
||||
IdentityFile ~/.ssh/lernbar_deploy
|
||||
EOF
|
||||
|
||||
sudo mkdir -p /opt/lernbar && sudo chown "$USER": /opt/lernbar
|
||||
git clone --branch feat/lernbar-erstfassung \
|
||||
git@git.wilde-server.de:florian.wilde/lernbar.git /opt/lernbar
|
||||
```
|
||||
|
||||
> Solange `main` noch nicht freigegeben ist, läuft der Betrieb vom Zweig
|
||||
> `feat/lernbar-erstfassung`. Nach der Freigabe einmal `git -C /opt/lernbar checkout main`,
|
||||
> danach holt `update.sh` von dort.
|
||||
|
||||
Bauen und starten:
|
||||
|
||||
```bash
|
||||
cd /opt/lernbar
|
||||
docker compose up -d --build # der erste Bau dauert einige Minuten
|
||||
curl -s http://127.0.0.1:3000/api/gesundheit
|
||||
# {"zustand":"in Ordnung"}
|
||||
```
|
||||
|
||||
Die Daten liegen im Docker-Volume `lernbar_lernbar-daten`, auf dem Host unter
|
||||
`/var/lib/docker/volumes/lernbar_lernbar-daten/_data`.
|
||||
|
||||
## 6. HTTPS mit Caddy
|
||||
|
||||
Caddy läuft direkt auf der VM, nimmt die Verbindungen auf 443 an und reicht sie an
|
||||
`127.0.0.1:3000` weiter.
|
||||
|
||||
```bash
|
||||
sudo apt install -y caddy
|
||||
```
|
||||
|
||||
`/etc/caddy/Caddyfile`:
|
||||
|
||||
```caddyfile
|
||||
lernbar.betrieb.local {
|
||||
# Variante A: Zertifikat der eigenen Zertifizierungsstelle (empfohlen)
|
||||
tls /etc/caddy/lernbar.crt /etc/caddy/lernbar.key
|
||||
|
||||
# Variante B: Caddys eigene Zertifizierungsstelle – siehe unten
|
||||
# tls internal
|
||||
|
||||
request_body {
|
||||
max_size 30MB # Fotos als Anhang, die Anwendung selbst begrenzt auf 25 MB
|
||||
}
|
||||
|
||||
reverse_proxy 127.0.0.1:3000
|
||||
}
|
||||
```
|
||||
|
||||
```bash
|
||||
sudo systemctl reload caddy
|
||||
```
|
||||
|
||||
**Welches Zertifikat?**
|
||||
|
||||
- **Variante A – eigene Zertifizierungsstelle:** Gibt es im Betrieb eine Zertifizierungsstelle
|
||||
(etwa die Active-Directory-Zertifikatsdienste), ein Serverzertifikat für
|
||||
`lernbar.betrieb.local` ausstellen. Die Rechner in der Domäne vertrauen ihr bereits.
|
||||
Datei und Schlüssel nach `/etc/caddy/` legen, Rechte `640`, Gruppe `caddy`.
|
||||
- **Variante B – `tls internal`:** Caddy stellt das Zertifikat selbst aus. Damit Browser es
|
||||
annehmen, muss das Wurzelzertifikat
|
||||
`/var/lib/caddy/.local/share/caddy/pki/authorities/local/root.crt` auf allen Geräten als
|
||||
vertrauenswürdig hinterlegt werden – an Domänenrechnern per Gruppenrichtlinie, an Handys von
|
||||
Hand.
|
||||
- **Ist die Lern-Bar aus dem Internet erreichbar** (öffentlicher DNS-Name, Port 443 offen),
|
||||
holt Caddy ohne `tls`-Zeile selbst ein Zertifikat von Let's Encrypt.
|
||||
|
||||
> Für die **Installation auf dem Handy** (Startbildschirm, Offline-Lernen) verlangen die
|
||||
> Browser ein Zertifikat, dem das Gerät vertraut. Mit Variante B heißt das: Wurzelzertifikat
|
||||
> auch auf den Diensthandys installieren.
|
||||
|
||||
## 7. Das erste Konto
|
||||
|
||||
```bash
|
||||
cd /opt/lernbar
|
||||
docker compose exec lernbar node werkzeuge/konto.js \
|
||||
--name "Vorname Nachname" --email ausbilder@betrieb.de --rolle ausbilder
|
||||
```
|
||||
|
||||
Das ausgegebene Passwort notieren, unter `https://lernbar.betrieb.local` anmelden und es unter
|
||||
**Verwaltung → Eigenes Passwort** ändern. Danach unter **Verwaltung** die Azubikonten anlegen
|
||||
und im **Wochenplan** die Wochen einplanen.
|
||||
|
||||
Hat das einzige Ausbilderkonto sein Passwort vergessen, setzt derselbe Befehl es neu.
|
||||
|
||||
## 8. Sicherung
|
||||
|
||||
Zwei Ebenen, die sich ergänzen:
|
||||
|
||||
1. **Proxmox sichert die ganze VM**, etwa nächtlich auf Proxmox Backup Server. Damit lässt sich
|
||||
der ganze Server zurückholen.
|
||||
2. **Die Lern-Bar sichert ihre Daten selbst** – Datenbank und Anhänge in einem Archiv, das sich
|
||||
auch auf einem neuen Server einspielen lässt.
|
||||
|
||||
`/etc/cron.d/lernbar-sicherung`:
|
||||
|
||||
```cron
|
||||
SHELL=/bin/sh
|
||||
PATH=/usr/local/bin:/usr/bin:/bin
|
||||
|
||||
# 02:30 sichern, 02:45 Archive älter als 30 Tage aufräumen
|
||||
30 2 * * * root cd /opt/lernbar && docker compose exec -T lernbar /app/werkzeuge/sicherung.sh /daten/sicherungen >> /var/log/lernbar-sicherung.log 2>&1
|
||||
45 2 * * * root cd /opt/lernbar && docker compose exec -T lernbar find /daten/sicherungen -name 'lernbar-*.tar.gz' -mtime +30 -delete
|
||||
|
||||
# 03:00 eine Kopie vom Server wegschaffen – Ziel und Zugang anpassen
|
||||
0 3 * * * root rsync -a /var/lib/docker/volumes/lernbar_lernbar-daten/_data/sicherungen/ sicherung@nas.betrieb.local:/lernbar/ >> /var/log/lernbar-sicherung.log 2>&1
|
||||
```
|
||||
|
||||
Die Uhrzeiten liegen vor der Proxmox-Sicherung, damit das frische Archiv mit in die
|
||||
VM-Sicherung fällt.
|
||||
|
||||
**Zurückspielen** steht in der [README](../README.md#zurückspielen). Und: Eine Sicherung, die
|
||||
nie zurückgespielt wurde, ist keine Sicherung. Einmal im Quartal nach der Checkliste
|
||||
**Wiederherstellung testen** (Woche 8) auf eine Test-VM zurückspielen.
|
||||
|
||||
## 9. Aktualisieren
|
||||
|
||||
```bash
|
||||
cd /opt/lernbar
|
||||
./update.sh
|
||||
```
|
||||
|
||||
Das Skript sichert, holt den neuen Stand, baut, schaltet um und wartet auf das Lebenszeichen.
|
||||
Meldet sich die neue Fassung nicht gesund, schaltet es von selbst auf die vorherige zurück.
|
||||
Neue Inhalte – etwa weitere Wochen – kommen auf demselben Weg, weil sie Teil des Repositorys
|
||||
sind. Neue Wochen erscheinen danach im Wochenplan unter „noch nicht eingeplant".
|
||||
|
||||
Updates des Systems selbst spielt `unattended-upgrades` ein. Docker und Caddy kommen dabei mit,
|
||||
weil sie aus Paketquellen installiert sind.
|
||||
|
||||
## 10. Abnahme vor dem Echtbetrieb
|
||||
|
||||
Bevor die Azubis die Adresse bekommen:
|
||||
|
||||
- [ ] Anmeldung über `https://lernbar.betrieb.local` von einem Arbeitsplatz – ohne
|
||||
Zertifikatswarnung
|
||||
- [ ] Anmeldung vom Handy, Installation auf dem Startbildschirm
|
||||
- [ ] Ein Anhang mit 20 MB lässt sich hochladen
|
||||
- [ ] Ein Berichtsheft-PDF lässt sich herunterladen
|
||||
- [ ] `http://lernbar.betrieb.local` leitet auf HTTPS um
|
||||
- [ ] `http://<IP>:3000` ist von einem anderen Rechner aus **nicht** erreichbar
|
||||
- [ ] Sicherung von Hand ausgelöst, Archiv liegt auf dem NAS
|
||||
- [ ] Die Sicherung auf eine Test-VM zurückgespielt, Konten und Daten sind da
|
||||
- [ ] `./update.sh` einmal durchgelaufen
|
||||
- [ ] Die VM erscheint in der Proxmox-Sicherung und in der Überwachung
|
||||
Generated
+2
-2
@@ -1,12 +1,12 @@
|
||||
{
|
||||
"name": "lernbar",
|
||||
"version": "0.1.0",
|
||||
"version": "1.0.5",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "lernbar",
|
||||
"version": "0.1.0",
|
||||
"version": "1.0.5",
|
||||
"dependencies": {
|
||||
"@node-rs/argon2": "^2.0.2",
|
||||
"better-sqlite3": "^12.11.1",
|
||||
|
||||
+4
-2
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "lernbar",
|
||||
"version": "1.0.0",
|
||||
"version": "1.0.5",
|
||||
"private": true,
|
||||
"description": "Lern-Bar – betriebliche Ausbildung Fachinformatiker Systemintegration",
|
||||
"engines": {
|
||||
@@ -17,11 +17,13 @@
|
||||
"e2e": "playwright test",
|
||||
"inhalte:pruefen": "tsx scripts/inhalte-pruefen.ts",
|
||||
"konto:anlegen": "tsx scripts/konto-anlegen.ts",
|
||||
"werkzeuge:bauen": "esbuild scripts/konto-anlegen.ts --bundle --platform=node --target=node22 --format=cjs --external:better-sqlite3 --external:@node-rs/argon2 --outfile=build/werkzeuge/konto.js",
|
||||
"backup": "bash scripts/im-container/sicherung.sh",
|
||||
"restore": "bash scripts/im-container/wiederherstellen.sh",
|
||||
"screenshots": "tsx scripts/screenshots.ts",
|
||||
"symbole": "tsx scripts/symbole.ts",
|
||||
"abnahme": "node scripts/pruefungen/abnahme.mjs"
|
||||
"abnahme": "node scripts/pruefungen/abnahme.mjs",
|
||||
"abnahme:container": "node scripts/pruefungen/container.mjs"
|
||||
},
|
||||
"dependencies": {
|
||||
"@node-rs/argon2": "^2.0.2",
|
||||
|
||||
@@ -0,0 +1,199 @@
|
||||
import { chromium } from '@playwright/test';
|
||||
import { spawnSync } from 'node:child_process';
|
||||
|
||||
/**
|
||||
* Der Abnahmelauf gegen das Docker-Abbild.
|
||||
*
|
||||
* `abnahme.mjs` prüft die Anwendung über `next start`. Betrieben wird sie aber
|
||||
* als Container – und was dort fehlt, fällt dabei nicht auf. So war es mit dem
|
||||
* Kontowerkzeug: Die README beschrieb `node werkzeuge/konto.js`, im Abbild lag
|
||||
* es nie, und ein frisch aufgesetzter Server stand ohne jedes Konto da.
|
||||
*
|
||||
* Dieser Lauf baut das Abbild, startet es mit leerem Volume und geht den Weg
|
||||
* aus der README: Lebenszeichen, erstes Konto, Anmeldung, Sperre bei
|
||||
* Fehlversuchen, Sicherung.
|
||||
*
|
||||
* node scripts/pruefungen/container.mjs
|
||||
*
|
||||
* Voraussetzung: Docker läuft, Port 3398 ist frei (LERNBAR_CONTAINER_PORT).
|
||||
*/
|
||||
|
||||
const PORT = Number(process.env.LERNBAR_CONTAINER_PORT ?? 3398);
|
||||
const BASIS = `http://localhost:${PORT}`;
|
||||
const ABBILD = 'lernbar:abnahme';
|
||||
const NAME = `lernbar-abnahme-${Date.now()}`;
|
||||
|
||||
const AUSBILDER = { name: 'Petra Kessler', email: 'petra.kessler@betrieb.test', pw: 'container-ausbilder' };
|
||||
|
||||
let fehler = 0;
|
||||
|
||||
function pruefe(bedingung, text, zusatz = '') {
|
||||
console.log(` ${bedingung ? '✓' : '✗'} ${text}${zusatz ? ` – ${zusatz}` : ''}`);
|
||||
if (!bedingung) fehler += 1;
|
||||
}
|
||||
|
||||
function abschnitt(titel) {
|
||||
console.log(`\n${titel}`);
|
||||
}
|
||||
|
||||
function docker(argumente, zusatz = {}) {
|
||||
return spawnSync('docker', argumente, { encoding: 'utf8', ...zusatz });
|
||||
}
|
||||
|
||||
function imContainer(...argumente) {
|
||||
const ergebnis = docker(['exec', NAME, ...argumente]);
|
||||
return { ende: ergebnis.status, ausgabe: `${ergebnis.stdout}${ergebnis.stderr}` };
|
||||
}
|
||||
|
||||
let browser = null;
|
||||
|
||||
function aufraeumen() {
|
||||
// -v nimmt das namenlose Volume mit – sonst bleibt bei jedem Lauf eins liegen.
|
||||
docker(['rm', '-fv', NAME], { stdio: 'ignore' });
|
||||
docker(['rmi', ABBILD], { stdio: 'ignore' });
|
||||
}
|
||||
|
||||
async function portBelegt() {
|
||||
try {
|
||||
await fetch(`${BASIS}/api/gesundheit`, { signal: AbortSignal.timeout(1000) });
|
||||
return true;
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
async function gesund(sekunden = 60) {
|
||||
for (let i = 0; i < sekunden; i += 1) {
|
||||
try {
|
||||
const antwort = await fetch(`${BASIS}/api/gesundheit`);
|
||||
if (antwort.ok) return true;
|
||||
} catch {
|
||||
/* noch nicht da */
|
||||
}
|
||||
await new Promise((r) => setTimeout(r, 1000));
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
async function anmelden(email, passwort) {
|
||||
const kontext = await browser.newContext({ locale: 'de-DE' });
|
||||
const seite = await kontext.newPage();
|
||||
seite.setDefaultTimeout(30000);
|
||||
await seite.goto(`${BASIS}/anmelden`);
|
||||
await seite.fill('#email', email);
|
||||
await seite.fill('#passwort', passwort);
|
||||
await seite.click('button[type=submit]');
|
||||
const angekommen = await seite
|
||||
.waitForURL(`${BASIS}/`, { timeout: 15000 })
|
||||
.then(() => true)
|
||||
.catch(() => false);
|
||||
await kontext.close();
|
||||
return angekommen;
|
||||
}
|
||||
|
||||
/** Ein Anmeldeversuch, der die angezeigte Meldung zurückgibt. */
|
||||
async function meldungNachAnmeldung(email, passwort) {
|
||||
const kontext = await browser.newContext({ locale: 'de-DE' });
|
||||
const seite = await kontext.newPage();
|
||||
seite.setDefaultTimeout(30000);
|
||||
await seite.goto(`${BASIS}/anmelden`);
|
||||
await seite.fill('#email', email);
|
||||
await seite.fill('#passwort', passwort);
|
||||
await seite.click('button[type=submit]');
|
||||
const text = await seite
|
||||
.locator('.hinweis-fehler')
|
||||
.innerText({ timeout: 15000 })
|
||||
.catch(() => '');
|
||||
await kontext.close();
|
||||
return text;
|
||||
}
|
||||
|
||||
async function main() {
|
||||
if (docker(['info'], { stdio: 'ignore' }).status !== 0) {
|
||||
console.error('Docker ist nicht erreichbar.');
|
||||
process.exit(2);
|
||||
}
|
||||
if (await portBelegt()) {
|
||||
console.error(`Auf Port ${PORT} antwortet schon etwas. Anderen Port über LERNBAR_CONTAINER_PORT setzen.`);
|
||||
process.exit(2);
|
||||
}
|
||||
|
||||
// --- C1 Das Abbild entsteht ----------------------------------------------
|
||||
|
||||
abschnitt('C1 · Das Abbild entsteht und startet');
|
||||
|
||||
console.log(' … baue das Abbild, das dauert beim ersten Mal einige Minuten');
|
||||
const bau = docker(['build', '-t', ABBILD, '.'], { stdio: ['ignore', 'ignore', 'pipe'] });
|
||||
pruefe(bau.status === 0, 'Das Abbild lässt sich bauen', bau.status === 0 ? '' : bau.stderr.split('\n').slice(-5).join(' '));
|
||||
if (bau.status !== 0) return;
|
||||
|
||||
const start = docker(['run', '-d', '--name', NAME, '-p', `127.0.0.1:${PORT}:3000`, ABBILD]);
|
||||
pruefe(start.status === 0, 'Der Container startet');
|
||||
if (start.status !== 0) return;
|
||||
|
||||
pruefe(await gesund(), 'Die Anwendung meldet sich gesund');
|
||||
pruefe(imContainer('id', '-un').ausgabe.trim() === 'node', 'Sie läuft nicht als root');
|
||||
|
||||
// --- C2 Das erste Konto ---------------------------------------------------
|
||||
|
||||
abschnitt('C2 · Das erste Konto entsteht im Container');
|
||||
|
||||
const werkzeuge = imContainer('ls', '/app/werkzeuge').ausgabe;
|
||||
pruefe(werkzeuge.includes('konto.js'), 'Das Kontowerkzeug liegt im Abbild');
|
||||
|
||||
const anlegen = imContainer(
|
||||
'node', 'werkzeuge/konto.js',
|
||||
'--name', AUSBILDER.name, '--email', AUSBILDER.email, '--rolle', 'ausbilder', '--passwort', AUSBILDER.pw,
|
||||
);
|
||||
pruefe(anlegen.ende === 0 && anlegen.ausgabe.includes('Konto angelegt'), 'Der Aufruf aus der README legt das Konto an', anlegen.ausgabe.split('\n')[0]);
|
||||
|
||||
browser = await chromium.launch();
|
||||
pruefe(await anmelden(AUSBILDER.email, AUSBILDER.pw), 'Der Ausbilder meldet sich mit diesem Konto an');
|
||||
pruefe(!(await anmelden(AUSBILDER.email, 'falsch-falsch')), 'Ein falsches Passwort wird abgewiesen');
|
||||
|
||||
// Derselbe Aufruf ist der Rettungsweg, wenn das einzige Ausbilderkonto sein
|
||||
// Passwort vergessen hat.
|
||||
const neu = imContainer('node', 'werkzeuge/konto.js', '--name', AUSBILDER.name, '--email', AUSBILDER.email);
|
||||
const neuesPw = neu.ausgabe.match(/Passwort: (\S+)/)?.[1];
|
||||
pruefe(neu.ende === 0 && neu.ausgabe.includes('gab es schon') && neuesPw, 'Ein zweiter Aufruf setzt das Passwort neu');
|
||||
pruefe(neuesPw && (await anmelden(AUSBILDER.email, neuesPw)), 'Mit dem neuen Passwort geht die Anmeldung');
|
||||
pruefe(!(await anmelden(AUSBILDER.email, AUSBILDER.pw)), 'Das alte Passwort gilt nicht mehr');
|
||||
|
||||
// --- C3 Bremse gegen Passwortraten ----------------------------------------
|
||||
|
||||
abschnitt('C3 · Bremse gegen Passwortraten');
|
||||
|
||||
// Eine Adresse, die es nicht gibt: Die Sperre muss genauso greifen, sonst
|
||||
// verriete sie, welche Konten existieren.
|
||||
const unbekannt = 'niemand@betrieb.test';
|
||||
for (let i = 0; i < 5; i += 1) await meldungNachAnmeldung(unbekannt, `geraten-${i}`);
|
||||
const gesperrt = await meldungNachAnmeldung(unbekannt, 'geraten-6');
|
||||
pruefe(gesperrt.includes('Zu viele Fehlversuche'), 'Nach fünf Fehlversuchen wird gesperrt – auch für eine unbekannte Adresse', gesperrt);
|
||||
|
||||
pruefe(neuesPw && (await anmelden(AUSBILDER.email, neuesPw)), 'Ein anderes Konto ist davon nicht betroffen');
|
||||
|
||||
for (let i = 0; i < 5; i += 1) await meldungNachAnmeldung(AUSBILDER.email, `geraten-${i}`);
|
||||
pruefe(!(await anmelden(AUSBILDER.email, neuesPw)), 'Während der Sperre kommt auch das richtige Passwort nicht durch');
|
||||
|
||||
// --- C4 Sicherung im Container -------------------------------------------
|
||||
|
||||
abschnitt('C4 · Sicherung im Container');
|
||||
|
||||
const sicherung = imContainer('/app/werkzeuge/sicherung.sh', '/daten/sicherungen');
|
||||
pruefe(sicherung.ende === 0, 'Die Sicherung läuft im Container durch', sicherung.ausgabe.trim().split('\n').at(-1));
|
||||
const archive = imContainer('sh', '-c', 'ls /daten/sicherungen/lernbar-*.tar.gz').ausgabe;
|
||||
pruefe(/lernbar-\d{8}-\d{6}\.tar\.gz/.test(archive), 'Das Archiv liegt im Volume');
|
||||
}
|
||||
|
||||
try {
|
||||
await main();
|
||||
} catch (e) {
|
||||
console.error(e);
|
||||
fehler += 1;
|
||||
} finally {
|
||||
if (browser) await browser.close();
|
||||
aufraeumen();
|
||||
}
|
||||
|
||||
console.log(fehler === 0 ? '\n✓ Containerabnahme bestanden.' : `\n✗ ${fehler} Prüfung(en) nicht erfüllt.`);
|
||||
process.exit(fehler === 0 ? 0 : 1);
|
||||
@@ -11,7 +11,7 @@ import path from 'node:path';
|
||||
* im sichtbaren Text.
|
||||
*/
|
||||
|
||||
const BASIS = 'http://localhost:3311';
|
||||
const BASIS = process.env.LERNBAR_BASIS ?? 'http://localhost:3000';
|
||||
const AZUBI = { email: 'jonas.berger@betrieb.de', pw: 'azubi-start-2026' };
|
||||
const AUSBILDER = { email: 'fw@wildeflorian.de', pw: 'ausbilder-start' };
|
||||
|
||||
@@ -26,6 +26,29 @@ const bruchstuecke = loesungen.map((l) => l.slice(40, 110)).filter((b) => b.leng
|
||||
console.log(`${loesungen.length} Musterlösungen aus woche-01.yaml gelesen.`);
|
||||
console.log('Geprüft wird auf Bruchstücke wie:', JSON.stringify(bruchstuecke[0]?.slice(0, 60)));
|
||||
|
||||
// --- Ausgangslage herstellen ----------------------------------------------
|
||||
//
|
||||
// Der entscheidende Fall ist „freigegeben, aber noch nicht abgegeben". Den gibt
|
||||
// es nur einmal je Kontrolle. Damit die Prüfung wiederholbar bleibt, wird die
|
||||
// Kontrolle „woche-01" vorher zurückgesetzt – das ist ein Testaufbau, kein Teil
|
||||
// der Anwendung, und greift deshalb ausdrücklich nur auf die lokale
|
||||
// Beispieldatenbank zu.
|
||||
const { default: Datenbank } = await import('better-sqlite3');
|
||||
const dbPfad = process.env.LERNBAR_DB ?? path.join(process.cwd(), 'daten', 'lernbar.sqlite');
|
||||
|
||||
if (fs.existsSync(dbPfad)) {
|
||||
const db = new Datenbank(dbPfad);
|
||||
const betroffen = db.prepare("select id from kontrolle where kontrolle_id = 'woche-01'").all();
|
||||
for (const eintrag of betroffen) {
|
||||
db.prepare('delete from kontroll_antwort where kontrolle_id = ?').run(eintrag.id);
|
||||
db.prepare('delete from kontrolle where id = ?').run(eintrag.id);
|
||||
}
|
||||
db.close();
|
||||
console.log(`Ausgangslage hergestellt: ${betroffen.length} frühere Bearbeitung(en) von woche-01 entfernt.`);
|
||||
} else {
|
||||
console.log(`Keine Datenbank unter ${dbPfad} – die Ausgangslage wird nicht zurückgesetzt.`);
|
||||
}
|
||||
|
||||
const browser = await chromium.launch();
|
||||
const seite = await (await browser.newContext({ locale: 'de-DE' })).newPage();
|
||||
|
||||
@@ -41,13 +64,19 @@ async function abmelden() {
|
||||
await seite.waitForURL(/anmelden/);
|
||||
}
|
||||
|
||||
/** Sucht im rohen HTML **und** in der RSC-Nutzlast. */
|
||||
/** Sucht im rohen HTML **und** in der Server-Nutzlast. */
|
||||
async function lecksuche(beschriftung) {
|
||||
const html = await seite.content();
|
||||
|
||||
// Die Nutzlast steht in eingebetteten Skripten, die `self.__next_f` füllen.
|
||||
// Dort **nachträglich** nachzusehen bringt nichts: Next leert das Feld, sobald
|
||||
// es verarbeitet ist – es wäre immer leer, und die Prüfung liefe ins Leere,
|
||||
// ohne dass es auffällt. Deshalb wird der Quelltext der Skripte gelesen.
|
||||
const rsc = await seite.evaluate(() =>
|
||||
// Next legt die Server-Nutzlast in self.__next_f ab – dort steht alles,
|
||||
// was der Server an den Browser geschickt hat.
|
||||
(globalThis.self?.__next_f ?? []).map((t) => (Array.isArray(t) ? String(t[1] ?? '') : '')).join(''),
|
||||
[...document.querySelectorAll('script:not([src])')]
|
||||
.map((element) => element.textContent ?? '')
|
||||
.filter((text) => text.includes('__next_f'))
|
||||
.join(''),
|
||||
);
|
||||
|
||||
const treffer = bruchstuecke.filter((b) => html.includes(b) || rsc.includes(b));
|
||||
@@ -55,7 +84,7 @@ async function lecksuche(beschriftung) {
|
||||
|
||||
console.log(
|
||||
` ${beschriftung.padEnd(34)} Leck: ${treffer.length === 0 ? 'nein' : `JA (${treffer.length})`}` +
|
||||
` | RSC-Größe ${rsc.length} | "musterloesung":null ${nullFelder}x`,
|
||||
` | Nutzlast ${rsc.length} Zeichen | "musterloesung":null ${nullFelder}x`,
|
||||
);
|
||||
return treffer;
|
||||
}
|
||||
@@ -71,8 +100,17 @@ await abmelden();
|
||||
await anmelden(AUSBILDER);
|
||||
await seite.goto(`${BASIS}/kontrollen`);
|
||||
await seite.waitForSelector('.kontrollzeile');
|
||||
await seite.locator('.kontrollzeile', { hasText: 'Woche 1' }).locator('button:has-text("Freigeben")').click();
|
||||
const freigeben = seite
|
||||
.locator('.kontrollzeile', { hasText: 'Woche 1' })
|
||||
.locator('button:has-text("Freigeben")');
|
||||
if ((await freigeben.count()) > 0) {
|
||||
await freigeben.click();
|
||||
await seite.waitForTimeout(1500);
|
||||
} else {
|
||||
// Bei einem wiederholten Lauf ist sie schon freigegeben. Das ist kein
|
||||
// Grund abzubrechen – der entscheidende Fall kommt erst danach.
|
||||
console.log(' (war bereits freigegeben)');
|
||||
}
|
||||
|
||||
console.log('\n3) Nach der Freigabe, vor der Abgabe – der entscheidende Fall');
|
||||
await abmelden();
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
import { eq } from 'drizzle-orm';
|
||||
import { redirect } from 'next/navigation';
|
||||
import { datenbank, schema } from '@/lib/db';
|
||||
import { anmeldeDrossel, wartezeitText } from '@/lib/auth/drossel';
|
||||
import { passwortPruefen } from '@/lib/auth/passwort';
|
||||
import { sitzungAnlegen, sitzungBeenden } from '@/lib/auth/sitzung';
|
||||
import { jetzt } from '@/lib/zeit';
|
||||
@@ -19,6 +20,18 @@ export async function anmelden(_vorher: Anmeldezustand, formular: FormData): Pro
|
||||
return { fehler: 'Bitte E-Mail-Adresse und Passwort eingeben.', email };
|
||||
}
|
||||
|
||||
// Während einer Sperre wird gar nicht erst geprüft – auch ein richtiges
|
||||
// Passwort kommt dann nicht durch, sonst wäre die Sperre wertlos.
|
||||
const drossel = anmeldeDrossel();
|
||||
const wartezeit = drossel.wartezeit(email);
|
||||
if (wartezeit > 0) {
|
||||
return { fehler: `Zu viele Fehlversuche. Bitte ${wartezeitText(wartezeit)} noch einmal versuchen.`, email };
|
||||
}
|
||||
// Jeder Versuch zählt sofort als Fehlversuch und wird erst bei Erfolg
|
||||
// zurückgenommen. Zwischen Prüfen und Zählen liegt so kein await – sonst
|
||||
// kämen hundert gleichzeitige Anfragen alle an der Sperre vorbei.
|
||||
drossel.fehlversuch(email);
|
||||
|
||||
const db = datenbank();
|
||||
const benutzer = db.select().from(schema.benutzer).where(eq(schema.benutzer.email, email)).get();
|
||||
|
||||
@@ -34,6 +47,8 @@ export async function anmelden(_vorher: Anmeldezustand, formular: FormData): Pro
|
||||
const stimmt = await passwortPruefen(benutzer.passwortHash, passwort);
|
||||
if (!stimmt) return abweisung;
|
||||
|
||||
drossel.erfolg(email);
|
||||
|
||||
db.update(schema.benutzer).set({ letzteAnmeldungAm: jetzt() }).where(eq(schema.benutzer.id, benutzer.id)).run();
|
||||
await sitzungAnlegen(benutzer.id);
|
||||
|
||||
|
||||
@@ -67,7 +67,9 @@ export function megabyte(bytes: number): string {
|
||||
* etwas verloren.
|
||||
*/
|
||||
export function saubererName(name: string): string {
|
||||
return path
|
||||
// win32.basename trennt an / und \ – der Name kommt vom Browser, nicht vom
|
||||
// Server, und ein Windows-Pfad darf auch unter Linux nicht durchrutschen.
|
||||
return path.win32
|
||||
.basename(name)
|
||||
.replace(/[\u0000-\u001f\u007f]/g, '')
|
||||
.replace(/["\\]/g, '')
|
||||
|
||||
@@ -0,0 +1,113 @@
|
||||
import { describe, expect, it } from 'vitest';
|
||||
import {
|
||||
Drossel,
|
||||
FREIE_VERSUCHE,
|
||||
GRUNDSPERRE_MS,
|
||||
HOECHSTSPERRE_MS,
|
||||
VERGESSEN_NACH_MS,
|
||||
sperreFuer,
|
||||
wartezeitText,
|
||||
} from './drossel';
|
||||
|
||||
/** Eine Uhr, die nur weiterläuft, wenn man sie stellt. */
|
||||
function stehendeUhr(start = 1_000_000) {
|
||||
let zeit = start;
|
||||
return {
|
||||
uhr: () => zeit,
|
||||
vor: (ms: number) => {
|
||||
zeit += ms;
|
||||
},
|
||||
};
|
||||
}
|
||||
|
||||
function scheitern(drossel: Drossel, schluessel: string, mal: number) {
|
||||
for (let i = 0; i < mal; i += 1) drossel.fehlversuch(schluessel);
|
||||
}
|
||||
|
||||
describe('sperreFuer', () => {
|
||||
it('lässt die ersten Fehlversuche frei', () => {
|
||||
for (let n = 1; n < FREIE_VERSUCHE; n += 1) expect(sperreFuer(n)).toBe(0);
|
||||
});
|
||||
|
||||
it('sperrt ab dem fünften Fehlversuch und verdoppelt dann', () => {
|
||||
expect(sperreFuer(FREIE_VERSUCHE)).toBe(GRUNDSPERRE_MS);
|
||||
expect(sperreFuer(FREIE_VERSUCHE + 1)).toBe(2 * GRUNDSPERRE_MS);
|
||||
expect(sperreFuer(FREIE_VERSUCHE + 2)).toBe(4 * GRUNDSPERRE_MS);
|
||||
});
|
||||
|
||||
it('bleibt bei der Obergrenze stehen', () => {
|
||||
expect(sperreFuer(FREIE_VERSUCHE + 20)).toBe(HOECHSTSPERRE_MS);
|
||||
});
|
||||
});
|
||||
|
||||
describe('Drossel', () => {
|
||||
it('sperrt nach fünf Fehlversuchen, nicht vorher', () => {
|
||||
const { uhr } = stehendeUhr();
|
||||
const drossel = new Drossel(uhr);
|
||||
scheitern(drossel, 'a@x.de', FREIE_VERSUCHE - 1);
|
||||
expect(drossel.wartezeit('a@x.de')).toBe(0);
|
||||
drossel.fehlversuch('a@x.de');
|
||||
expect(drossel.wartezeit('a@x.de')).toBe(GRUNDSPERRE_MS);
|
||||
});
|
||||
|
||||
it('gibt nach Ablauf der Sperre wieder frei', () => {
|
||||
const { uhr, vor } = stehendeUhr();
|
||||
const drossel = new Drossel(uhr);
|
||||
scheitern(drossel, 'a@x.de', FREIE_VERSUCHE);
|
||||
vor(GRUNDSPERRE_MS);
|
||||
expect(drossel.wartezeit('a@x.de')).toBe(0);
|
||||
});
|
||||
|
||||
it('verlängert beim nächsten Fehlversuch nach der Sperre', () => {
|
||||
const { uhr, vor } = stehendeUhr();
|
||||
const drossel = new Drossel(uhr);
|
||||
scheitern(drossel, 'a@x.de', FREIE_VERSUCHE);
|
||||
vor(GRUNDSPERRE_MS);
|
||||
drossel.fehlversuch('a@x.de');
|
||||
expect(drossel.wartezeit('a@x.de')).toBe(2 * GRUNDSPERRE_MS);
|
||||
});
|
||||
|
||||
it('setzt nach erfolgreicher Anmeldung zurück', () => {
|
||||
const { uhr } = stehendeUhr();
|
||||
const drossel = new Drossel(uhr);
|
||||
scheitern(drossel, 'a@x.de', FREIE_VERSUCHE - 1);
|
||||
drossel.erfolg('a@x.de');
|
||||
scheitern(drossel, 'a@x.de', FREIE_VERSUCHE - 1);
|
||||
expect(drossel.wartezeit('a@x.de')).toBe(0);
|
||||
});
|
||||
|
||||
it('vergisst Fehlversuche nach einer Stunde Ruhe', () => {
|
||||
const { uhr, vor } = stehendeUhr();
|
||||
const drossel = new Drossel(uhr);
|
||||
scheitern(drossel, 'a@x.de', FREIE_VERSUCHE - 1);
|
||||
vor(VERGESSEN_NACH_MS);
|
||||
drossel.fehlversuch('a@x.de');
|
||||
expect(drossel.wartezeit('a@x.de')).toBe(0);
|
||||
});
|
||||
|
||||
it('zählt jede Adresse für sich', () => {
|
||||
const { uhr } = stehendeUhr();
|
||||
const drossel = new Drossel(uhr);
|
||||
scheitern(drossel, 'a@x.de', FREIE_VERSUCHE);
|
||||
expect(drossel.wartezeit('a@x.de')).toBeGreaterThan(0);
|
||||
expect(drossel.wartezeit('b@x.de')).toBe(0);
|
||||
});
|
||||
|
||||
it('räumt auf, lässt eine laufende Sperre aber nicht verdrängen', () => {
|
||||
const { uhr } = stehendeUhr();
|
||||
const drossel = new Drossel(uhr);
|
||||
scheitern(drossel, 'opfer@x.de', FREIE_VERSUCHE);
|
||||
for (let i = 0; i < 10_050; i += 1) drossel.fehlversuch(`erfunden-${i}@x.de`);
|
||||
expect(drossel.groesse).toBeLessThanOrEqual(10_001);
|
||||
expect(drossel.wartezeit('opfer@x.de')).toBe(GRUNDSPERRE_MS);
|
||||
});
|
||||
});
|
||||
|
||||
describe('wartezeitText', () => {
|
||||
it('rundet auf ganze Minuten auf', () => {
|
||||
expect(wartezeitText(1)).toBe('in einer Minute');
|
||||
expect(wartezeitText(60_000)).toBe('in einer Minute');
|
||||
expect(wartezeitText(60_001)).toBe('in 2 Minuten');
|
||||
expect(wartezeitText(HOECHSTSPERRE_MS)).toBe('in 15 Minuten');
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,94 @@
|
||||
/**
|
||||
* Bremse gegen Passwortraten.
|
||||
*
|
||||
* Gezählt wird je E-Mail-Adresse – auch für Adressen, die es nicht gibt.
|
||||
* Sonst verriete die Sperre, welche Konten existieren (siehe E6).
|
||||
*
|
||||
* Die ersten Fehlversuche sind frei, danach verdoppelt sich die Sperre bis
|
||||
* zu einer Obergrenze. Die Obergrenze ist Absicht: Wer fremde Adressen
|
||||
* eintippt, soll den Ausbilder nicht für Stunden aussperren können.
|
||||
*
|
||||
* Der Zähler liegt im Speicher des einen Serverprozesses. Ein Neustart setzt
|
||||
* ihn zurück – das ist zugleich der Notausgang, falls man sich selbst
|
||||
* ausgesperrt hat. Siehe E42.
|
||||
*/
|
||||
|
||||
export const FREIE_VERSUCHE = 5;
|
||||
export const GRUNDSPERRE_MS = 60_000;
|
||||
export const HOECHSTSPERRE_MS = 15 * 60_000;
|
||||
export const VERGESSEN_NACH_MS = 60 * 60_000;
|
||||
const HOECHSTZAHL_EINTRAEGE = 10_000;
|
||||
|
||||
export type Stand = { fehlversuche: number; zuletzt: number; gesperrtBis: number };
|
||||
|
||||
/** Wie lange nach dem n-ten Fehlversuch gesperrt wird. */
|
||||
export function sperreFuer(fehlversuche: number): number {
|
||||
if (fehlversuche < FREIE_VERSUCHE) return 0;
|
||||
return Math.min(GRUNDSPERRE_MS * 2 ** (fehlversuche - FREIE_VERSUCHE), HOECHSTSPERRE_MS);
|
||||
}
|
||||
|
||||
export function nachFehlversuch(stand: Stand | undefined, jetzt: number): Stand {
|
||||
const bisher = stand && jetzt - stand.zuletzt < VERGESSEN_NACH_MS ? stand.fehlversuche : 0;
|
||||
const fehlversuche = bisher + 1;
|
||||
return { fehlversuche, zuletzt: jetzt, gesperrtBis: jetzt + sperreFuer(fehlversuche) };
|
||||
}
|
||||
|
||||
export function restsperre(stand: Stand | undefined, jetzt: number): number {
|
||||
return stand ? Math.max(0, stand.gesperrtBis - jetzt) : 0;
|
||||
}
|
||||
|
||||
/** „in 3 Minuten" – aufgerundet, damit niemand zu früh wiederkommt. */
|
||||
export function wartezeitText(ms: number): string {
|
||||
const minuten = Math.max(1, Math.ceil(ms / 60_000));
|
||||
return minuten === 1 ? 'in einer Minute' : `in ${minuten} Minuten`;
|
||||
}
|
||||
|
||||
export class Drossel {
|
||||
private staende = new Map<string, Stand>();
|
||||
|
||||
constructor(private uhr: () => number = Date.now) {}
|
||||
|
||||
/** Restliche Sperre in Millisekunden, 0 heißt: darf versuchen. */
|
||||
wartezeit(schluessel: string): number {
|
||||
return restsperre(this.staende.get(schluessel), this.uhr());
|
||||
}
|
||||
|
||||
fehlversuch(schluessel: string): void {
|
||||
const jetzt = this.uhr();
|
||||
this.staende.set(schluessel, nachFehlversuch(this.staende.get(schluessel), jetzt));
|
||||
if (this.staende.size > HOECHSTZAHL_EINTRAEGE) this.aufraeumen(jetzt);
|
||||
}
|
||||
|
||||
erfolg(schluessel: string): void {
|
||||
this.staende.delete(schluessel);
|
||||
}
|
||||
|
||||
get groesse(): number {
|
||||
return this.staende.size;
|
||||
}
|
||||
|
||||
/**
|
||||
* Wer massenhaft ausgedachte Adressen schickt, soll den Speicher nicht
|
||||
* füllen. Erst fällt weg, was ohnehin vergessen ist, dann das Älteste.
|
||||
* Eine laufende Sperre wird nie weggeräumt – sonst ließe sie sich mit
|
||||
* genug ausgedachten Adressen aus dem Speicher drängen.
|
||||
*/
|
||||
private aufraeumen(jetzt: number): void {
|
||||
for (const [schluessel, stand] of this.staende) {
|
||||
if (jetzt - stand.zuletzt >= VERGESSEN_NACH_MS) this.staende.delete(schluessel);
|
||||
}
|
||||
for (const [schluessel, stand] of this.staende) {
|
||||
if (this.staende.size <= HOECHSTZAHL_EINTRAEGE) break;
|
||||
if (stand.gesperrtBis <= jetzt) this.staende.delete(schluessel);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Eine Drossel pro Prozess, am globalThis wie die Datenbankverbindung, damit
|
||||
// das Neuladen im Entwicklungsbetrieb die Zähler nicht verdoppelt.
|
||||
const halter = globalThis as unknown as { __lernbarDrossel?: Drossel };
|
||||
|
||||
export function anmeldeDrossel(): Drossel {
|
||||
halter.__lernbarDrossel ??= new Drossel();
|
||||
return halter.__lernbarDrossel;
|
||||
}
|
||||
@@ -87,26 +87,38 @@ export function verlinkeGlossar(html: string, glossar: GlossarEintrag[]): string
|
||||
if (teil.trim() === '') continue;
|
||||
if (offen.some((element) => gemiedeneElemente.has(element))) continue;
|
||||
|
||||
let text = teil;
|
||||
// Ein gesetzter Verweis wird als festes Stück herausgelöst. Die folgenden
|
||||
// Muster durchsuchen nur noch den freien Text – sonst fände etwa „OU" sein
|
||||
// Gegenstück in der Erklärung von „Gruppenrichtlinie" im title-Attribut,
|
||||
// und mitten im Attribut entstünde ein zweiter Verweis.
|
||||
const stuecke: { text: string; fest: boolean }[] = [{ text: teil, fest: false }];
|
||||
for (const { muster: regex, eintrag } of muster) {
|
||||
if (bereitsVerlinkt.has(eintrag.begriff)) continue;
|
||||
|
||||
const gefunden = regex.exec(text);
|
||||
for (let s = 0; s < stuecke.length; s += 1) {
|
||||
const stueck = stuecke[s]!;
|
||||
if (stueck.fest) continue;
|
||||
|
||||
const gefunden = regex.exec(stueck.text);
|
||||
if (!gefunden) continue;
|
||||
|
||||
const erklaerung = eintrag.steht_fuer
|
||||
? `${eintrag.steht_fuer} – ${eintrag.erklaerung}`
|
||||
: eintrag.erklaerung;
|
||||
const verweis = `<a class="glossarbegriff" href="/glossar#${glossarAnker(eintrag.begriff)}" title="${maskiere(erklaerung)}">${gefunden[2]}</a>`;
|
||||
|
||||
text =
|
||||
text.slice(0, gefunden.index) +
|
||||
gefunden[1] +
|
||||
`<a class="glossarbegriff" href="/glossar#${glossarAnker(eintrag.begriff)}" title="${maskiere(erklaerung)}">${gefunden[2]}</a>` +
|
||||
text.slice(gefunden.index + gefunden[0].length);
|
||||
|
||||
stuecke.splice(
|
||||
s,
|
||||
1,
|
||||
{ text: stueck.text.slice(0, gefunden.index) + gefunden[1], fest: false },
|
||||
{ text: verweis, fest: true },
|
||||
{ text: stueck.text.slice(gefunden.index + gefunden[0].length), fest: false },
|
||||
);
|
||||
bereitsVerlinkt.add(eintrag.begriff);
|
||||
break;
|
||||
}
|
||||
teile[i] = text;
|
||||
}
|
||||
teile[i] = stuecke.map((stueck) => stueck.text).join('');
|
||||
}
|
||||
|
||||
return teile.join('');
|
||||
|
||||
@@ -122,6 +122,41 @@ describe('Glossarbegriffe verlinken', () => {
|
||||
expect(html).not.toContain('title="Ein "Anführungszeichen"');
|
||||
});
|
||||
|
||||
it('verlinkt nicht in die Erklärung eines schon gesetzten Verweises hinein', () => {
|
||||
// Die Erklärung von „Gruppenrichtlinie" enthält „OU". Ein zweiter Verweis
|
||||
// darf nicht im title-Attribut des ersten landen – sonst bricht das HTML auf.
|
||||
const eintraege = [
|
||||
{ begriff: 'Gruppenrichtlinie', formen: [], erklaerung: 'Verknüpft an eine OU – was zuletzt kommt, gewinnt.', siehe_auch: [] },
|
||||
{ begriff: 'OU', formen: [], erklaerung: 'Ein Ordner im Verzeichnis.', siehe_auch: [] },
|
||||
];
|
||||
const html = verlinkeGlossar('<p>Laufwerke per Gruppenrichtlinie zuordnen.</p>', eintraege);
|
||||
expect(html.match(/<a /g)).toHaveLength(1);
|
||||
expect(html).toContain('title="Verknüpft an eine OU – was zuletzt kommt, gewinnt."');
|
||||
expect(html).toContain('>Gruppenrichtlinie</a> zuordnen.');
|
||||
});
|
||||
|
||||
it('verlinkt beide Begriffe, wenn beide im Text stehen', () => {
|
||||
const eintraege = [
|
||||
{ begriff: 'Gruppenrichtlinie', formen: [], erklaerung: 'Verknüpft an eine OU.', siehe_auch: [] },
|
||||
{ begriff: 'OU', formen: [], erklaerung: 'Ein Ordner im Verzeichnis.', siehe_auch: [] },
|
||||
];
|
||||
const html = verlinkeGlossar('<p>Die Gruppenrichtlinie hängt an der OU.</p>', eintraege);
|
||||
expect(html.match(/<a /g)).toHaveLength(2);
|
||||
expect(html).toContain('>OU</a>.</p>');
|
||||
expect(html).toContain('title="Verknüpft an eine OU."');
|
||||
});
|
||||
|
||||
it('erzeugt für alle Handouts wohlgeformte Verweise', () => {
|
||||
// Gegen das echte Glossar und die echten Handouts: In keinem title-Attribut
|
||||
// darf ein weiterer Verweis stecken.
|
||||
for (const handout of alle.handouts) {
|
||||
if (!handout.wesentlich) continue;
|
||||
const html = verlinkeGlossar(handout.wesentlich.html, glossar);
|
||||
expect(html, handout.id).not.toMatch(/title="[^"]*<a /);
|
||||
expect((html.match(/<a /g) ?? []).length, handout.id).toBe((html.match(/<\/a>/g) ?? []).length);
|
||||
}
|
||||
});
|
||||
|
||||
it('lässt HTML unverändert, wenn das Glossar leer ist', () => {
|
||||
expect(verlinkeGlossar('<p>DNS</p>', [])).toBe('<p>DNS</p>');
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user