Maschinelle Übersetzung — menschliche Überprüfung ausstehend.

Funktionen & Organisation

Gitrust vereint die Bausteine einer modernen Git-Forge rund um sechs Säulen: Speichersicherheit, regulatorische Konformität, Self-Hosting, Zusammenarbeit, Observability und Integration. Jede Funktion ist so konzipiert, dass sie einfach, auditierbar und ohne externe Abhängigkeiten bleibt.

mindmap
  root((Gitrust))
    Securite memoire
      Rust memory safe
      Zeroize des secrets
      SSH RSA 4096 bits
    Conformite ANSSI
      PA-074
      Audit fournisseurs
      SBOM CycloneDX
    Self-hosting
      Zero cloud
      Zero telemetrie
      Bare-metal ou VPS
    Integration
      HTTP natif
      SSH natif
      Clients Git standards
    Collaboration
      Multi-team
      Roles hierarchiques
      Permissions fines
    Observabilite
      SBOM exportable
      Dependency-Track
      Audit CVE

Glossar der Funktionen

Speichersicherheit

Rust memory-safe
100 % Rust-Basis mit #![forbid(unsafe_code)] auf den kritischen Crates. Kein undefiniertes Verhalten, keine ausnutzbaren Speicherlecks.
Strenge Lints
deny(unwrap_used, expect_used, panic, indexing_slicing) auf den gesamten Code angewendet. Fehler werden behandelt, niemals verschleiert.
Zeroize
Die Geheimnisse (Tokens, Hashes) implementieren das Trait Zeroize: Der Speicher wird bei der Zerstörung automatisch gelöscht.
Gehärtetes SSH
RSA-Schlüssel ≥ 4096 Bit erzwungen, schwache Algorithmen abgelehnt, SHA256-Fingerprints bei jeder Verbindung überprüft.

ANSSI-PA-074-Konformität

Lieferanten-Audit
Jede Abhängigkeit ist nachverfolgt, versioniert und auditierbar über das Cargo-Manifest und die integrierte SBOM CycloneDX.
Path Traversal blockiert
Systematische Validierung der Disk-Pfade (Owner + Slug): Ablehnung von .., / und \.
Protokollierung
Audit-Spuren für sensible Operationen: Erstellung, Freigabe, Löschung von Repositories, Schlüsselrotation, Berechtigungsänderung.

Self-Hosting

Souveränes Deployment
Ein Rust-Archiv, ein PostgreSQL, ein Disk-Volume. Keine Drittanbieter-Dienste, keine externen Netzwerkaufrufe.
Null CDN
Alle Assets (CSS, JS, Schriften) werden lokal ausgeliefert. Strikte CSP, die externe Domains blockiert.
Null Telemetrie
Keine Daten werden anderswo gemeldet als in Ihren eigenen Protokollen. Die Metriken bleiben bei Ihnen.

Zusammenarbeit

Hierarchische Rollen
Vier klare Rollen: Reader, Developer, Maintainer, Owner. Effektive Berechtigungen = max(Einzelperson, Team).
Geteilte Repositories
Individuelles oder teambasiertes Teilen, mit oder ohne Vererbung. Rechte werden kombiniert, niemals umgangen.
Organisationen
Multi-Team-Struktur mit Isolierung von Namensräumen und SSH-Schlüsseln.

Integration

Natives Git-HTTP
Vollständiges Smart HTTP (clone, fetch, push) ohne Proxy-Schicht. Kompatibel mit allen Standard-Git-Clients.
Natives Git-SSH
Integrierter SSH-Server (Port 2222 standardmäßig), Public-Key-Authentifizierung, feingranulare Hook-Verwaltung.
Erweiterbare Hooks
Erweiterungspunkte pre-receive, post-receive, update, um Ihre CI-Pipelines, Scanner und Benachrichtigungen anzubinden.
Dagger CI optional
Natives Triggern von Dagger-CI-Pipelines bei jedem Push über den post-receive-Hook. Reproduzierbare, portable und versionierte Builds im Repository.
Kohärente API
REST-Endpunkte für Automatisierung (Repository-Erstellung, Schlüsselverwaltung, Benutzereinladung).

Observability und Qualität

SBOM CycloneDX
Automatische Generierung der Software-Stückliste im Format CycloneDX 1.5, nach Dependency-Track exportierbar.
Schwachstellenanalyse
Kontinuierliche Integration mit Dependency-Track: Erkennung und Überwachung von CVEs auf allen Abhängigkeiten.
Strukturierte Logs
JSON-Logs, nutzbar durch jeden Aggregator (ELK, Loki, Graylog), ohne einen Parser anpassen zu müssen.

Entwickler-Workflow

flowchart LR
    Dev["Developpeur
git, SSH, HTTPS"] Gitrust["Gitrust
axum, HTMX, Rust"] PG[("PostgreSQL
metadata, permissions")] Repos[("Bare repos
disque local")] Dagger["Dagger CI
pipelines, post-receive"] DTrack["Dependency-Track
SBOM, CVE"] Dev -->|"git push"| Gitrust Gitrust -->|"core data"| PG Gitrust -->|"core data"| Repos Gitrust -.->|"hooks CI"| Dagger Gitrust -.->|"hooks CI"| DTrack

Bereit, die Kontrolle über Ihren Code zurückzugewinnen?

Gitrust wird schrittweise ausgerollt. Um Zugang zu einer Demo zu erhalten, Fragen zu stellen oder bei einer ANSSI-konformen Integration begleitet zu werden, kontaktieren Sie das Team.