> For the complete documentation index, see [llms.txt](https://wiki.lucysecurity.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://wiki.lucysecurity.com/lucy-wiki-de/anleitungen/lucy-installieren/architektur.md).

# Architektur

### Übersicht

Dieses Dokument beschreibt die wichtigsten strukturellen Elemente und Einstellungen von Lucy.

<figure><img src="/files/233668348ab03e0321e39f894f7e35f88d307388" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
"LUST" ist der zentrale Lizenzierungs- und Content-Server, der von Lucy Security verwaltet wird.
{% endhint %}

### Betriebssystem

* **Ubuntu 20.04.4 LTS**: Lucy läuft auf einem 64-Bit-Ubuntu-20.04.4-LTS-System ohne zusätzliche Patches oder Härtung. Updates werden über einen selbst gehosteten Repository-Mirror verwaltet.

### Webserver

* **Apache 2.4.41**: Verwendet "mod-security" und "mod-headers" für erhöhte Sicherheit.

### Datenbank

* **PostgreSQL 14.8**: Speichert alle zugehörigen Daten mit AES-256-CBC-Verschlüsselung auf Spaltenebene.

### Zwischenspeicher

* **Redis 5.0.7**: Wird als Aufgabenwarteschlange verwendet, um Daten zwischen Benutzern und System-Workern zu übergeben.

### Anwendung

* **PHP v8.2.6 und Python 3.8.10**: Lucy ist hauptsächlich eine PHP-Anwendung, die das Yii-Framework verwendet, mit einigen Hintergrundskripten in Python.

### Sicherheit

* **OWASP Top 10 / 2017**: Entspricht den OWASP-Sicherheitsstandards.
* **Firewall und SSL**: Benutzerdefiniert [Firewall-Regeln](/lucy-wiki-de/anwendungsreferenz/einstellungen/allgemeine-systemeinstellungen/firewall.md) und [SSL-Konfigurationen](/lucy-wiki-de/anwendungsreferenz/einstellungen/allgemeine-systemeinstellungen/ssl-einstellungen.md).
* **Benutzerkonten**: "phishing"- und "support"-Konten für spezifische Funktionen und Support-Zwecke.

### Ordner

* **/opt/phishing**: Hauptverzeichnis mit Systemcode, Benutzerdateien und Einstellungen.

### Protokolle

* **Apache-Protokolle**: Befindet sich in `/var/logs/apache2`.
* **Anwendungsprotokolle**: Befindet sich in `/opt/phishing/runtime`.

### Kritische Dienste

* **Dienste**: Apache2, PostgreSQL, Redis-Server und Supervisor sind kritische Dienste.

### Installation und Updates

Docker-basierte Installation mit nahtlosen Updates über APT innerhalb des Containers.

* Container teilen sich den Kernel des Host-Betriebssystems und ermöglichen so einen schnellen Start und eine effiziente RAM-Nutzung.
* Verwendet geschichtete Dateisysteme für eine effiziente Festplattennutzung und Image-Downloads.
* Gewährleistet Anwendungsisolierung, indem es als separater Prozess im Userspace ausgeführt wird.
* Nicht an eine bestimmte Infrastruktur gebunden, sodass der Betrieb auf jedem Computer, jeder Infrastruktur oder in jeder Cloud möglich ist.

### Netzwerkkommunikation

* **Ausgehende Kommunikation**: Wird von LUCY für Lizenzserver-Updates, Schwachstellenprüfungen und verschiedene optionale Dienste benötigt.
  * **Lizenzserver (LUST)**: Updates und Vorlagen über HTTPS.
  * **Schwachstellenprüfungen**: Verbindung über Port 80 zu static.nvd.nist.gov für die NIST-CVE-Datenbank.
  * **Update-Server**: Zugriff auf update.phishing-server.com und update1.phishing-server.com über die Ports 80 und 443.
  * **Optionale Dienste**: DNS, URL-Verkürzung
* **Eingehende Kommunikation**: Benötigt die Ports 80 und 443 für den Webzugriff sowie Port 25 für E-Mail-Antworten.
* **Kommunikation bei Malware-Simulationen**: Verwendet HTTP/HTTPS zur Datenerfassung während der Simulationen.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://wiki.lucysecurity.com/lucy-wiki-de/anleitungen/lucy-installieren/architektur.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
