← 返回 Skills 市场
arn0ld87

Fisi

作者 Alexander Schneider · GitHub ↗ · v1.1.0 · MIT-0
cross-platform ✓ 安全检测通过
153
总下载
0
收藏
0
当前安装
2
版本数
在 OpenClaw 中安装
/install fisi
功能描述
Unterstützt bei FiSi-Ausbildungsthemen wie Netzwerke, Server-Admin, Datenbanken, Scripting, Sicherheit, Virtualisierung, Prüfungsvorbereitung und Projektarbeit.
使用说明 (SKILL.md)

FiSi-Skill: Fachinformatiker für Systemintegration

Überblick

Dieser Skill unterstützt dich umfassend bei deiner Umschulung zum Fachinformatiker für Systemintegration. Er deckt alle relevanten Themenbereiche ab und hilft sowohl bei theoretischen Konzepten als auch bei praktischen Aufgaben.

Themenbereiche

1. Netzwerke (Network Infrastructure)

  • OSI-Modell, TCP/IP-Stack
  • IP-Adressierung, Subnetting (IPv4/IPv6)
  • Routing-Protokolle (RIP, OSPF, BGP)
  • VLANs, Trunking, Spanning-Tree
  • DHCP, DNS, NAT
  • VPN-Konfigurationen
  • Netzwerksicherheit, Firewalls

2. Server-Administration

  • Linux-Server: Debian/Ubuntu, RHEL/CentOS, SUSE
    • User-Management, Permissions
    • Package-Management (apt, yum, zypper)
    • Services: Apache, Nginx, SSH, Samba, NFS
    • Log-Analyse, Monitoring
  • Windows-Server: Active Directory, GPOs, DNS, DHCP, WSUS
    • PowerShell-Scripting
    • Rollen und Features

3. Datenbanken

  • SQL-Grundlagen (SELECT, INSERT, UPDATE, DELETE, JOINs)
  • Datenbank-Design, Normalisierung
  • MySQL, PostgreSQL, SQLite
  • Backup-Strategien, Replikation

4. Scripting & Automatisierung

  • Bash: Shell-Skripte, Textverarbeitung (grep, sed, awk)
  • Python: Automatisierung, API-Integration
  • PowerShell: Windows-Administration
  • YAML: Konfigurationsdateien (Ansible, Docker)

5. Virtualisierung & Cloud

  • VMware, Hyper-V, KVM
  • Docker, Kubernetes
  • Cloud-Plattformen: AWS, Azure, Google Cloud
  • IaaS, PaaS, SaaS-Modelle

6. IT-Sicherheit

  • Verschlüsselung (SSL/TLS, PGP, AES)
  • Authentifizierung (LDAP, Kerberos, 2FA)
  • Security Hardening
  • OWASP Top 10
  • Incident Response

7. Storage

  • RAID-Level (0, 1, 5, 6, 10)
  • SAN, NAS, DAS
  • ZFS, LVM
  • Backup-Strategien (3-2-1-Regel)

8. Soft Skills & Projektmanagement

  • AGILE, SCRUM, Kanban
  • Dokumentation
  • Kundenkommunikation
  • Wirtschaftlichkeitsberechnung

Prüfungsvorbereitung (AP1 & AP2)

Abschlussprüfung Teil 1 (AP1)

  • Zeitraum: Mitte der Ausbildung
  • Inhalte: Grundlagen aller oben genannten Bereiche
  • Fokus: Verständnis, Basis-Konfigurationen

Abschlussprüfung Teil 2 (AP2)

  • Zeitraum: Ende der Ausbildung
  • Inhalte: Vertiefte Themen, Projektarbeit, Wirtschaftlichkeit
  • Fokus: Praxis, Konzepte, Entscheidungsbegründungen

Arbeitsweise

  1. Verstehen: Ich analysiere deine Anfrage und stelle bei Bedarf Rückfragen
  2. Erklären: Konzepte werden verständlich und praxisnah erklärt
  3. Anwenden: Ich liefere Code-Snippets, Konfigurationsbeispiele, Schritt-für-Schritt-Anleitungen
  4. Überprüfen: Bei Code/Configs gebe ich Feedback und Verbesserungsvorschläge
  5. Zusammenfassen: Wichtige Punkte werden hervorgehoben

Code- und Config-Qualität

Ich achte auf:

  • Best Practices: Sichere, effiziente Lösungen
  • Kommentare: Erklärungen im Code
  • Fehlerbehandlung: Robuste Skripte
  • Dokumentation: Nachvollziehbare Konfigurationen

Typische Aufgabenformate

  • "Erkläre mir [Konzept]"
  • "Wie richte ich [Service] ein?"
  • "Debugge dieses Skript"
  • "Erstelle ein Konzept für [Anforderung]"
  • "Berechne [wirtschaftliche Aufgabe]"
  • "Was ist der Unterschied zwischen X und Y?"
  • "Hilf mir bei der Prüfungsvorbereitung für [Thema]"

Beispiele und Musterlösungen

Subnetting-Berechnung (IPv4)

Aufgabenstellung: Berechne Subnetze bei gegebenem Netz und erforderlicher Host-Zahl.

Vorgehensweise:

  1. Bestimme die benötigte Host-Anzahl (plus 2 für Netzwerk- und Broadcast-Adresse)
  2. Finde die nächste potenz von 2: 2^n >= required_hosts
  3. Berechne Subnetzmaske: /32 - n oder 255.255.255.x
  4. Berechne Netzadresse, erster/letzter Host und Broadcast

Beispiel: 192.168.10.0/24, benötigt 6 Subnetze mit mindestens 20 Hosts

Subnetz Netzadresse Nutzbarer Bereich Broadcast
1 192.168.10.0 192.168.10.1 - 192.168.10.30 192.168.10.31
2 192.168.10.32 192.168.10.33 - 192.168.10.62 192.168.10.63
3 192.168.10.64 192.168.10.65 - 192.168.10.94 192.168.10.95

Berechnung: Für 20+ Hosts braucht man 5 Bits (2^5=32). Subnetzmaske: /27 (255.255.255.224).

Linux Dateiberechtigungen

Aufgabe: Verzeichnis /var/www/projekt konfigurieren:

  • Besitzer (www-data): Lesen, Schreiben, Ausführen (rwx)
  • Gruppe (webentwickler): Lesen, Ausführen (r-x)
  • Andere: Kein Zugriff (---)
  • Neue Dateien erben Gruppe webentwickler

Befehle:

# Besitzer und Gruppe setzen
sudo chown www-data:webentwickler /var/www/projekt

# Berechtigungen: rwxr-x--- (750)
sudo chmod 750 /var/www/projekt

# SGID-Bit setzen (Gruppenvererbung)
sudo chmod g+s /var/www/projekt
# oder: sudo chmod 2750 /var/www/projekt

Oktalnotation:

  • 7 = rwx (4+2+1) → Besitzer
  • 5 = r-x (4+0+1) → Gruppe
  • 0 = --- (0+0+0) → Andere
  • 2 = SGID-Bit (spezielle Berechtigung)

Docker-Containerisierung

Container vs. Virtuelle Maschinen:

  • Container: Teilen den Host-Kernel, leichtgewichtig, schneller Start (Sekunden), geringer Overhead
  • VM: Eigenes Betriebssystem, schwerer, langsamerer Start (Minuten), höherer Ressourcenverbrauch

Dockerfile für Node.js-Backend:

# Multi-Stage Build für optimierte Image-Größe
FROM node:18-alpine AS builder
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production

FROM node:18-alpine
RUN addgroup -g 1001 -S nodejs && adduser -S nodeuser -u 1001
WORKDIR /app
COPY --from=builder --chown=nodeuser:nodejs /app/node_modules ./node_modules
COPY --chown=nodeuser:nodejs . .
USER nodeuser
EXPOSE 3000
CMD ["node", "server.js"]

docker-compose.yml (Node.js + PostgreSQL + Nginx):

version: '3.8'

services:
  backend:
    build: ./backend
    ports:
      - "3000:3000"
    environment:
      - DATABASE_URL=postgresql://user:pass@db:5432/appdb
    depends_on:
      - db
    networks:
      - appnet

  db:
    image: postgres:15-alpine
    environment:
      - POSTGRES_USER=user
      - POSTGRES_PASSWORD=pass
      - POSTGRES_DB=appdb
    volumes:
      - db_data:/var/lib/postgresql/data
    networks:
      - appnet

  nginx:
    image: nginx:alpine
    ports:
      - "80:80"
    volumes:
      - ./nginx.conf:/etc/nginx/nginx.conf:ro
    depends_on:
      - backend
    networks:
      - appnet

volumes:
  db_data:

networks:
  appnet:

Sicherheitshinweise:

  • Nicht als root innerhalb des Containers laufen lassen
  • .dockerignore erstellen (node_modules, .env, .git ausschließen)
  • Multi-Stage Build verwenden für kleinere Images
  • Offizielle Base Images aus Docker Hub verwenden

RAID-Level Vergleich

Aufgabe: Fileserver mit 8 Festplatten à 2 TB konfigurieren. Vergleiche RAID 1, RAID 5 und RAID 10.

Vergleichstabelle:

RAID-Level Nutzbare Kapazität Lesen Schreiben Max. Ausfälle
RAID 1 (Spiegelung) 8 TB (50%) Sehr gut Gut 7 Platten*
RAID 5 (Striping + Parität) 14 TB (87.5%) Gut Mäßig 1 Platte
RAID 10 (Spiegel + Stripe) 8 TB (50%) Sehr gut Sehr gut Bis zu 4 Platten**

* Bei 4 gespiegelten Paaren: Ein Ausfall pro Paar tolerierbar ** Bei RAID 10: Bis zu 50% Ausfälle, solange kein Paar komplett ausfällt

Berechnung:

  • RAID 1: 8 Platten in 4 gespiegelten Paaren → 4×2 TB = 8 TB
  • RAID 5: (8−1)×2 TB = 14 TB (eine Platte für Parität)
  • RAID 10: (8÷2)×2 TB = 8 TB (50% für Spiegelung)

Empfehlung für Dokumentenserver: RAID 10 – Begründung: Höchste Performance bei Lese- und Schreibzugriffen (wichtig für viele gleichzeitige Benutzer), gute Ausfallsicherheit, schneller Rebuild bei Plattenausfall.

SQL JOIN-Abfragen

Tabellen: kunden (id, name, ort) und bestellungen (id, kunden_id, produkt, betrag)

Aufgabe (a): Alle Kunden mit Bestellungen anzeigen (auch ohne Bestellungen)

-- LEFT JOIN: Alle Kunden, auch ohne Bestellung
SELECT k.name, b.produkt, b.betrag
FROM kunden k
LEFT JOIN bestellungen b ON k.id = b.kunden_id;

Aufgabe (b): Gesamtumsatz pro Kunde berechnen

-- GROUP BY mit Aggregatfunktion SUM
SELECT k.name, COALESCE(SUM(b.betrag), 0) AS gesamtumsatz
FROM kunden k
LEFT JOIN bestellungen b ON k.id = b.kunden_id
GROUP BY k.id, k.name;

Aufgabe (c): Nur Kunden mit mehr als 500 EUR Umsatz

-- HAVING filtert auf Aggregat-Ergebnisse
SELECT k.name, SUM(b.betrag) AS gesamtumsatz
FROM kunden k
JOIN bestellungen b ON k.id = b.kunden_id
GROUP BY k.id, k.name
HAVING SUM(b.betrag) > 500;

JOIN-Typen im Vergleich (Venn-Diagramm-Prinzip):

INNER JOIN:        LEFT JOIN:         RIGHT JOIN:
   ╔═══╗            ╔═══════╗          ╔═══════╗
   ║ ▓▓║            ║▓▓▓▓▓▓▓║          ║▓▓▓▓▓▓▓║
A  ║▓▓▓ ║ B      A   ║▓▓▓▓▓▓▓║ B     A   ║▓▓▓▓▓▓▓║ B
   ║▓▓▓▓║            ║▓▓▓▓▓▓▓║          ║▓▓▓▓▓▓▓║
   ╚═══╝            ╚═══════╝          ╚═══════╝
  (Nur Schnitt)    (A komplett)       (B komplett)
JOIN Beschreibung Verwendung
INNER JOIN Nur passende Zeilen beider Tabellen (Schnittmenge) Wenn Daten in beiden Tabellen existieren müssen
LEFT JOIN Alle Zeilen der linken Tabelle, passende der rechten (A gesamt) Wenn alle Datensätze der Haupttabelle erhalten bleiben sollen
RIGHT JOIN Alle Zeilen der rechten Tabelle, passende der linken (B gesamt) Selten verwendet (umgekehrter LEFT JOIN)

OSI-Modell Schichten

Aufgabe: Ordne Protokolle und Geräte den korrekten OSI-Schichten zu.

OSI-Schichten-Übersicht:

Schicht Name Protokolle/Geräte Einheit Schlüsselbegriffe
7 Anwendung HTTP, HTTPS, FTP, SMTP, DNS Daten TLS/SSL, Port 443
6 Darstellung TLS, SSL, ASCII, JPEG, MPEG Daten Verschlüsselung, Kompression
5 Sitzung NetBIOS, RPC, PPTP Daten Sitzungsmanagement
4 Transport TCP, UDP, SCTP Segment Port-Nummern, Segmentierung
3 Netzwerk IP, ICMP, ARP, Router Paket IP-Adressen, Routing
2 Sicherung Ethernet, PPP, Switch, MAC Frame MAC-Adressen, VLAN
1 Bitübertragung Hub, Kabel, Glasfaser, Funk Bit Bits, elektrische/optische Signale

Datenkapselung bei HTTPS-Aufruf:

  1. Schicht 7 (Anwendung): Browser sendet HTTP-Request
  2. Schicht 6 (Darstellung): TLS verschlüsselt die Daten
  3. Schicht 5 (Sitzung): Sitzung wird etabliert
  4. Schicht 4 (Transport): TCP-Segment mit Port 443 erstellt
  5. Schicht 3 (Netzwerk): IP-Paket mit Ziel-IP-Adresse erstellt
  6. Schicht 2 (Sicherung): Ethernet-Frame mit MAC-Adressen erstellt
  7. Schicht 1 (Bitübertragung): Bits werden als elektrische/optische Signale gesendet

Merksatz (oben nach unten): „Alle Tiefen Säufer Nennen Das Feiern” (Anwendung, Transport, Sitzung, Darstellung, Netzwerk, Daten, Bit)

Backup-Strategien (3-2-1-Regel)

Aufgabe: Unternehmen mit 500 GB Daten, täglich 20 GB Änderungen, Backup-Fenster 22:00–06:00. Entwirf ein Backup-Konzept.

Die 3-2-1-Regel:

  • 3 Kopien der Daten (1 Produktiv + 2 Backups)
  • 2 unterschiedliche Speichermedien (z.B. NAS + Cloud)
  • 1 Kopie Offsite (Cloud oder externes Rechenzentrum)

Backup-Arten im Vergleich:

Backup-Typ Bezugspunkt Backup-Zeit Wiederherstellung Speicherbedarf
Vollbackup Komplett Lang (500 GB) Schnell Hoch (500 GB/Tag)
Differentiell Letztes Vollbackup Mittel (~20 GB) Mittel Mittel
Inkrementell Letztes Backup Kurz (~20 GB) Langsam (Kette) Niedrig

Beispiel-Berechnung (Woche):

  • Sonntag: Vollbackup (500 GB)
  • Mo–Sa: Inkrementell (je 20 GB × 6 = 120 GB)
  • Gesamt: ~620 GB pro Woche

RPO und RTO definieren:

  • RPO (Recovery Point Objective): Max. Datenverlust = 24 Stunden (tägliches Backup)
  • RTO (Recovery Time Objective): Max. Ausfallzeit = 4 Stunden (bei Vollrestore)

IT-Sicherheit: Verschlüsselung

Symmetrische vs. Asymmetrische Verschlüsselung:

Eigenschaft Symmetrisch Asymmetrisch
Schlüssel Gleicher Schlüssel Schlüsselpaar (öffentlich/privat)
Geschwindigkeit Sehr schnell Langsam
Algorithmen AES, ChaCha20, 3DES RSA, ECDSA, DSA
Einsatz Große Datenmengen Schlüsselaustausch, Signaturen

TLS-Handshake (HTTPS-Verbindung):

  1. Client Hello: Browser sendet unterstützte Cipher Suites + Zufallswert
  2. Server Hello: Server wählt Cipher Suite, sendet Zertifikat + Zufallswert
  3. Schlüsselaustausch: Client verschlüsselt Pre-Master-Secret mit Server-Public-Key
  4. Session Keys: Aus Pre-Master-Secret werden symmetrische Session Keys abgeleitet
  5. Verschlüsselte Übertragung: Ab jetzt symmetrische Verschlüsselung (AES)

Warum beide Verfahren kombiniert?

  • Asymmetrisch = sicherer Schlüsselaustausch, aber langsam
  • Symmetrisch = schnell für große Datenmengen, aber Schlüsselverteilung problematisch
  • Hybrid: Asymmetrisch für den Schlüsseltausch, symmetrisch für die Datenübertragung

Forward Secrecy (PFS):

  • Verwendet temporäre Session Keys statt statischer Private Keys
  • Bei Kompromittierung eines Keys werden vergangene Sessions nicht entschlüsselbar
  • TLS 1.3 erzwingt PFS (z.B. mit ECDHE)

Empfohlene Schlüssellängen:

Algorithmus Schlüssellänge Sicherheitsstufe
AES 256 Bit Hohe Sicherheit
RSA 2048-4096 Bit Mindestens 2048 Bit
ECDSA/ECDH 256 Bit (P-256) Empfohlen statt RSA
ChaCha20 256 Bit Alternative zu AES

Active Directory Design

Aufgabe: Mittelständisches Unternehmen mit Abteilungen Vertrieb, Entwicklung, Verwaltung strukturieren.

OU-Struktur:

corp.local
├── OU=Benutzer
│   ├── OU=Vertrieb
│   ├── OU=Entwicklung
│   └── OU=Verwaltung
├── OU=Computer
│   ├── OU=Clients
│   └── OU=Server
└── OU=Gruppen
    └── OU=Sicherheitsgruppen

AGDLP-Prinzip (Account → Global → Domain Local → Permission):

  1. Benutzer in globale Sicherheitsgruppen (nach Abteilung)
  2. Globale Gruppen in domain-lokale Gruppen (nach Ressource)
  3. Domain-lokale Gruppen erhalten Berechtigungen

Beispiel GPO – Passwortrichtlinie:

# GPO erstellen und verknüpfen
New-GPO -Name "Passwortrichtlinie" | New-GPLink -Target "OU=Benutzer,DC=corp,DC=local"

# Einstellungen konfigurieren (Gruppenrichtlinienverwaltung)
# Computerkonfiguration → Windows-Einstellungen → Sicherheitseinstellungen → Kontorichtlinien

GPO-Einstellungen:

Richtlinie Wert Beschreibung
Min. Kennwortlänge 12 Zeichen Komplexität erforderlich
Kennwortablauf 90 Tage Regelmäßiger Wechsel
Bildschirmsperre 10 Min. Automatische Sperre
Kontosperrung 5 Fehlversuche Schutz vor Brute-Force

VLAN-Konfiguration

Aufgabe: Büro mit Abteilungen Verwaltung (VLAN 10), Technik (VLAN 20), Gäste (VLAN 30) trennen.

Tagged vs. Untagged (802.1Q):

Typ Bezeichnung Beschreibung
Untagged Access Port Endgeräte-Port, kein VLAN-Tag
Tagged Trunk Port Uplink zwischen Switches, mehrere VLANs

Switch-Konfiguration (Beispiel Cisco):

# VLANs erstellen
vlan 10
 name Verwaltung
vlan 20
 name Technik
vlan 30
 name Gaeste

# Access-Ports konfigurieren
interface gi0/1
 switchport mode access
 switchport access vlan 10

# Trunk-Port konfigurieren
interface gi0/24
 switchport mode trunk
 switchport trunk allowed vlan 10,20,30

Inter-VLAN-Routing (Router-on-a-Stick):

# Router-Subinterfaces
interface gi0/0.10
 encapsulation dot1Q 10
 ip address 192.168.10.1 255.255.255.0

interface gi0/0.20
 encapsulation dot1Q 20
 ip address 192.168.20.1 255.255.255.0

Sicherheit: Gäste-VLAN isoliert, kein Zugriff auf interne VLANs (Firewall-Regel).

Bash-Scripting

Aufgabe: Backup-Skript erstellen, das /home-Verzeichnisse archiviert und alte Backups löscht.

#!/bin/bash
# backup.sh - Automatisiertes Home-Verzeichnis-Backup

# Konfiguration
BACKUP_DIR="/backup"
SOURCE_DIR="/home"
RETENTION_DAYS=7
DATE=$(date +%Y%m%d_%H%M%S)
BACKUP_FILE="home_backup_${DATE}.tar.gz"

# Funktion: Fehlerbehandlung
cleanup() {
    echo "Fehler aufgetreten. Bereinige..."
    rm -f "${BACKUP_DIR}/tmp_*"
    exit 1
}
trap cleanup ERR

# Prüfung: Backup-Verzeichnis existiert?
if [ ! -d "$BACKUP_DIR" ]; then
    echo "Erstelle Backup-Verzeichnis..."
    mkdir -p "$BACKUP_DIR" || { echo "Fehler: Kann Verzeichnis nicht erstellen"; exit 1; }
fi

# Backup erstellen
echo "Starte Backup von $SOURCE_DIR..."
tar -czf "${BACKUP_DIR}/${BACKUP_FILE}" "$SOURCE_DIR" 2>/dev/null

# Prüfung erfolgreich?
if [ $? -eq 0 ]; then
    echo "Backup erfolgreich: ${BACKUP_FILE}"
    logger -t backup "Home-Verzeichnis gesichert"
else
    echo "Backup fehlgeschlagen!"
    exit 1
fi

# Alte Backups löschen (Retention)
find "$BACKUP_DIR" -name "home_backup_*.tar.gz" -mtime +$RETENTION_DAYS -delete
echo "Backups älter als $RETENTION_DAGE Tage gelöscht"

# Übersicht anzeigen
du -sh "${BACKUP_DIR}/home_backup_"*.tar.gz | tail -5

Wichtige Bash-Konstrukte:

Konstrukt Beschreibung Beispiel
if [ ] Bedingung testen if [ -f datei ]
for var in Schleife for i in {1..10}
while While-Schleife while read line
$? Exit-Code if [ $? -eq 0 ]
> / >> Umleiten/Anhängen echo "log" >> datei
|| / && Oder / Und `befehl

PowerShell für Windows

Aufgabe: AD-Benutzer anlegen und Systemdienste überwachen.

# Benutzerverwaltung
New-ADUser -Name "Max Mustermann" `
    -SamAccountName "mmustermann" `
    -UserPrincipalName "[email protected]" `
    -Path "OU=Entwicklung,OU=Benutzer,DC=corp,DC=local" `
    -AccountPassword (ConvertTo-SecureString "P@ssw0rd!" -AsPlainText -Force) `
    -Enabled $true `
    -ChangePasswordAtLogon $true

# Mehrere Benutzer aus CSV importieren
Import-Csv "C:\\users.csv" | ForEach-Object {
    New-ADUser -Name $_.Name -SamAccountName $_.SAM `
        -Path "OU=Benutzer,DC=corp,DC=local" -Enabled $true
}

# Systemdienste prüfen
Get-Service | Where-Object {$_.Status -eq "Running" -and $_.StartType -eq "Auto"} |
    Select-Object Name, DisplayName, Status | Export-Csv "C:\\services.csv"

# Remote-Computer verwalten (WinRM erforderlich)
Invoke-Command -ComputerName "SERVER01" -ScriptBlock {
    Get-Process | Sort-Object CPU -Descending | Select-Object -First 5
}

PowerShell-Operatoren:

Operator Beschreibung Beispiel
-eq Gleich $a -eq $b
-ne Ungleich $status -ne "Running"
-like Wildcard $name -like "*Admin*"
-match Regex $email -match "@corp.local$"
` ` Pipe
$() Subexpression Write-Host "CPU: $($proc.CPU)"

Firewall-Regeln (iptables)

Aufgabe: Webserver absichern – SSH, HTTP und HTTPS erlauben, restlichen Traffic blockieren.

# Alle bestehenden Regeln löschen
iptables -F
iptables -X

# Standard-Policy: Alles verbieten
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

# Loopback erlauben
iptables -A INPUT -i lo -j ACCEPT

# Established connections erlauben
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# SSH (Port 22) erlauben
iptables -A INPUT -p tcp --dport 22 -j ACCEPT

# HTTP (Port 80) und HTTPS (Port 443) erlauben
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT

# ICMP (Ping) begrenzt erlauben
iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/second -j ACCEPT

# Alles andere loggen und verwerfen
iptables -A INPUT -j LOG --log-prefix "FIREWALL-DROP:"
iptables -A INPUT -j DROP

iptables-Optionen:

Option Bedeutung Beispiel
-A Anhängen (Append) -A INPUT
-P Policy setzen -P INPUT DROP
-p Protokoll -p tcp
--dport Zielport --dport 22
-j Jump (Ziel) -j ACCEPT
-m Modul laden -m state

Output-Formate

Je nach Aufgabe:

  • Erklärungen: Fließtext mit Beispielen
  • Code: Bash, Python, PowerShell, SQL
  • Configs: Apache, Nginx, SSH, Firewall-Regeln
  • Tabellen: Vergleich, Übersicht
  • Diagramme: Architekturentwürfe (Mermaid)
  • Checklisten: Prüfungsvorbereitung, Projektplanung
安全使用建议
This skill appears to be a coherent FiSi training assistant and is mostly safe as documentation and examples. Before running any commands it suggests: 1) be aware it expects to run Bash scripts — only allow execution in a sandbox or VM if you want to test commands; 2) ask the skill author what "Serena-Tools" refers to and whether it requires installation or credentials; 3) review any provided commands (especially those using sudo, rm -rf, systemctl, docker) before executing them on production hosts; 4) do not paste real credentials or secret files into the skill. If you need higher assurance, request the author to declare required binaries/tools and to remove or clearly mark any destructive commands.
功能分析
Type: OpenClaw Skill Name: fisi Version: 1.1.0 The 'fisi' skill bundle is an educational tool designed to assist IT System Integration trainees with curriculum topics like networking, server administration, and exam preparation. The content consists of standard technical documentation and benign code examples (Bash, PowerShell, SQL, Docker) across files like SKILL.md and various reference markdowns in the assets/ and references/ directories. No indicators of data exfiltration, malicious execution, or harmful prompt injection were identified.
能力评估
Purpose & Capability
Name, description and the included reference assets (networking, Linux, Docker, encryption, ports, etc.) align with the stated purpose of FiSi training support. However, SKILL.md's compatibility line claims the skill "Benötigt Bash-Zugriff für Scriptausführung, Serena-Tools für Code-Analyse" while the registry metadata lists no required binaries or tools — Serena-Tools is not explained and is not declared as a required binary or env var.
Instruction Scope
The instructions and examples are focused on teaching/configuring system administration topics and include concrete commands and config snippets (chmod, chown, docker, systemctl, networking examples). There is no instruction to read unrelated host secrets or to exfiltrate data. Note: many examples use privileged commands (sudo, system-level changes) and the skill states it uses Bash to run scripts — allow execution only in a controlled/sandboxed environment and review commands before running them.
Install Mechanism
No install spec or code files that would download or install external code — the skill is instruction-only and ships reference documents. This is low-risk from an install mechanism perspective.
Credentials
The skill declares no required environment variables or credentials, which is appropriate for a teaching/reference assistant. The only concern is the SKILL.md mention of "Serena-Tools" (unspecified) which could require additional tooling or credentials; if that tool needs access or secrets they are not declared here.
Persistence & Privilege
The skill does not request always:true and has no special persistence or system-wide configuration changes declared. Autonomous invocation is allowed (platform default) but does not appear combined with additional broad privileges.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install fisi
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /fisi 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.1.0
Updated SKILL.md with version field
v1.0.0
Initial release of the FiSi skill for Fachinformatiker für Systemintegration. - Umfassende Unterstützung für FiSi-Ausbildung/Umschulung: Netzwerke, Server, Datenbanken, Scripting, IT-Sicherheit, Cloud, Virtualisierung und mehr - Enthält Prüfungsvorbereitung (AP1/AP2), Projektarbeitshilfen, Hausaufgabenunterstützung, Code-Reviews und Konfigurationsberatung - Bietet Beispiele, Musterlösungen und Schritt-für-Schritt-Anleitungen für typische FiSi-Aufgaben - Kompatibilitätshinweis: Benötigt Bash-Zugriff für Scriptausführung, Serena-Tools für Code-Analyse - Strukturierte Übersicht zu allen prüfungsrelevanten Bereichen und praxisnahen Aufgabenstellungen
元数据
Slug fisi
版本 1.1.0
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 2
常见问题

Fisi 是什么?

Unterstützt bei FiSi-Ausbildungsthemen wie Netzwerke, Server-Admin, Datenbanken, Scripting, Sicherheit, Virtualisierung, Prüfungsvorbereitung und Projektarbeit. 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 153 次。

如何安装 Fisi?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install fisi」即可一键安装,无需额外配置。

Fisi 是免费的吗?

是的,Fisi 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

Fisi 支持哪些平台?

Fisi 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Fisi?

由 Alexander Schneider(@arn0ld87)开发并维护,当前版本 v1.1.0。

💬 留言讨论