Files
Strato-MCP/README.md
T

58 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# STRATO-DNS-MCP – Read-only-Prototyp
Dieser Prototyp prüft den undokumentierten HTTP-Leseweg des STRATO-
Kundenbereichs. Er kann sich anmelden und die CNAME-Einträge genau einer
konfigurierten DNS-Zone auflisten.
**Diese Version kann keine DNS-Einträge erstellen, ändern oder löschen.** Im
Quellcode existiert absichtlich keine Speichermethode.
## Technische Grundlage
STRATO dokumentiert für normale Hosting-Domains nur die Verwaltung im
Kunden-Login. Der öffentliche Certbot-Plugin
[`FlixMa/certbot-dns-strato`](https://github.com/FlixMa/certbot-dns-strato)
zeigt jedoch einen funktionsfähigen HTTP-Ablauf über
`https://www.strato.de/apps/CustomerService`. Der hier verwendete Leseweg wurde
ohne Certbot-Abhängigkeit neu und deutlich defensiver implementiert.
Referenzstand der Untersuchung:
`FlixMa/certbot-dns-strato@67df6dcfc3ef0035ec5aa5daf7c5b0bd8310d7fb`.
## Lokaler Test – noch nicht produktiv installieren
1. `strato.env.example` außerhalb von Git nach `strato.env` kopieren.
2. Dort Benutzername, Passwort und DNS-Zone eintragen.
3. Falls STRATO TOTP verlangt, zusätzlich TOTP-Secret und den bei STRATO
angezeigten Gerätenamen eintragen.
4. Image bauen und zunächst ausschließlich `strato_connection_status` sowie
`strato_list_cnames` testen.
Das Docker-Image wird direkt aus diesem Repository gebaut:
```sh
docker build -t strato-dns-mcp:readonly .
```
Die Offline-Tests benötigen keine Zugangsdaten und kontaktieren STRATO nicht:
```sh
python3 -m unittest -v tests/test_strato_readonly.py
```
Zugangsdaten, TOTP-Werte, Cookies und STRATO-Session-ID werden weder geloggt
noch als Toolausgabe zurückgegeben. Fehlermeldungen enthalten nur eine kurze
Fehlerklasse.
## Noch bewusst nicht enthalten
- kein Compose-Deployment
- keine Unraid-XML
- keine Hermes-Registrierung
- keine schreibenden Werkzeuge
- keine produktive Installation
Diese Teile kommen erst, wenn der Read-only-Test gegen das aktuelle STRATO-
Konto funktioniert. Falls sich der Login oder das HTML geändert hat, wird nur
der Parser angepasst; es findet kein Schreibversuch statt.