Halten Sie in einer systemd-Servicedefinition die gesamte Umgebungszuweisung innerhalb der Anführungszeichen der Unit-Datei:

[Service]
Environment="NO_PROXY=localhost,127.0.0.1,::1,intranet.example"

Die Kommas sind Teil des Werts von NO_PROXY. systemd entfernt beim Aufbau der Umgebung die umgebenden Anführungszeichen; der Netzwerkclient erhält die Liste und interpretiert danach seine Bypass-Syntax. Ein weiteres Anführungszeichen mitten in einem bereits gequoteten Eintrag zu beginnen, erzeugt keine unabhängige Shell-Quoting-Ebene.

Unit-Dateien sind keine Shell-Skripte. Eine export-Anweisung oder ein vertrauter Variablenname liefert in einer Environment=-Direktive keine Shell-Expansion.

  1. Prüfen Sie die effektive Servicekonfiguration lokal und schwärzen Sie Geheimnisse.
  2. Nach der Änderung laden Sie die Servicedefinitionen neu und verwenden Sie das übliche Neustartverfahren des betroffenen Dienstes. Planen Sie die Auswirkungen auf laufende Arbeit ein, besonders bei einem gemeinsam genutzten Image-Daemon.
  3. Bestätigen Sie, dass der beabsichtigte Wert den neuen Prozess erreicht. Das bloße Neuladen einer Unit-Datei kann die Umgebung eines bestehenden Prozesses nicht ersetzen.

Erst danach untersuchen Sie das Domain- oder Subnetz-Matching des Clients. Eine Liste, die im Terminal funktioniert, hat den Dienst möglicherweise nie in derselben Form erreicht.

Ähnliche Artikel