0
爲什麼systemd
會清理子進程的環境變量?爲什麼systemd乾淨的環境變量?
爲什麼systemd
會清理子進程的環境變量?爲什麼systemd乾淨的環境變量?
這種設計導致子進程更加可靠,一致的,明確的和潛在的更安全的環境中執行。
考慮這樣子進程,可以通過設置一個環境,可觸發安全漏洞的情況下,變量,並且父進程有一個允許設置該環境變量的缺陷。
如man systemd.exec所述,您可以使用Environment=
,EnvironmentFile=
和PassEnvironment=
來顯式管理其他環境變量。
通過環境變量控制過程是「遠處行爲」設計的一個例子,其中可變全局狀態觸發應用程序中的遠程變化。因爲聲明變量的地方並不靠近使用它們的地方,所以更容易出現混淆,錯誤和意外行爲。這裏額外的嚴謹性和清晰度降低了相關的風險。