Skip to main content
Dateien “From External URL” (sowie die Dateien, die die Import API und web_fetch des KI-Assistenten herunterladen) werden vom linked-url-proxy-Dienst in jedem Ayakaleaf-Pro-Pod abgerufen. Er lehnt Adressen ab, die nicht öffentlich sind, sodass Benutzer darüber keine internen Dienste auslesen können. Die Funktion und ihre Einstellungen sind unter Externe URL beschrieben.

Konfiguration

30-config.yaml (additions)

Was auf Kubernetes blockiert wird

Der Proxy lehnt jede Adresse ab, die keine öffentliche Unicast-Adresse ist: Loopback, Link-Local (einschließlich der Cloud-Metadaten-Adresse 169.254.169.254), die privaten Bereiche 10.0.0.0/8, 172.16.0.0/12 und 192.168.0.0/16, den Carrier-Grade-NAT-Bereich 100.64.0.0/10 sowie deren IPv6-Entsprechungen. Pod- und Service-Netzwerke in diesen Bereichen, wie es bei kubeadm, flannel, Calico und den meisten verwalteten Clustern standardmäßig der Fall ist, werden daher ohne jede Einstellung blockiert, ebenso die clusterinternen Namen wie redis oder git-bridge, die auf sie aufgelöst werden. Öffentliche Adressen sind erlaubt. Wenn Ihre Knoten oder Ihr Load Balancer öffentliche Adressen haben, fügen Sie diese zu OVERLEAF_LINKED_URL_BLOCKED_NETWORKS hinzu (durch Leerzeichen oder Kommas getrennt), damit Benutzer darüber nicht die NodePorts oder eine Statusseite abrufen können. Wenn OVERLEAF_LINKED_URL_OUTBOUND_PROXY gesetzt ist, werden Hostnamen vom Proxy aufgelöst, sodass nur URLs geprüft werden, die eine IP-Adresse enthalten: Der Proxy muss Ihre internen Netzwerke dann selbst blockieren.

Mehrere Replikate

Nichts weiter: Jeder Pod ruft mit seinem eigenen linked-url-proxy und denselben Einstellungen ab.

Getestet auf Kubernetes

Auf Kubernetes 1.37 mit drei Replikaten, flannels Pod-Netzwerk 10.244.0.0/16 und kubeadms Service-Netzwerk 10.96.0.0/12 lehnte der Proxy ohne jedes OVERLEAF_LINKED_URL_BLOCKED_NETWORKS Downloads von der ClusterIP eines Service, von den clusterinternen Namen redis, garage und overleaf-1.overleaf-hl.overleaf.svc.cluster.local sowie von der Adresse eines Knotens ab. Unsere End-to-End-Tests bestehen außerdem für das Ablehnen von Loopback und der Cloud-Metadaten-Adresse über die Import API sowie dafür, dass der KI-Assistent nur die Seiten liest, die OVERLEAF_LINKED_URL_ALLOWED_RESOURCES erlaubt.
Zuletzt geändert am 2. November 2026