sudo -u haproxy /usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid -Ds gibt einen anderen Fehler (in Bezug auf Ports) aus, sodass der Benutzer haproxy höchstwahrscheinlich nicht vom Dienst verwendet wird, andernfalls würde er weiter kommen
Ich kann die Datei als Benutzer haproxy zugreifen sudo -u haproxy cat /etc/haproxy/certificate.pem.
Bearbeiten:
Hier ist die aktualisierte Dienstkonfiguration basierend auf Ihrer Antwort:
Sie sind auf Fedora, die SELinux verwendet . Systemd-Dienste werden in einer sauberen Umgebung ausgeführt - sie werden nicht direkt von systemctl erzeugt - sie starten also unter anderem in einem anderen SELinux-Kontext (ich denke, die Standardeinstellung ist system_u:system_r:init_t:s0?).
Stellen Sie sicher, dass der richtige SELinux-Kontext festgelegt ist, und zwar sowohl für die Zertifikatdatei (mithilfe von ls -lZund chcon) als auch für den Haproxy-Prozess (möglicherweise SELinuxContext=in der systemd-Einheit).
Versuchen Sie zu laufen id, um den aktuellen Kontext (oder den Dienst) anzuzeigen.
Danke für die Antwort! Ich habe es ausprobiert, ohne Glück, siehe die Bearbeitung.
Martti Laine vor 9 Jahren
0
Eigentlich hätte ich es vielleicht mit etwas erreichen können (das letzte was ich getan habe war restorecon für das Zertifikat). Kann nach einem DNS-Update einwandfrei testen, danach kommentieren.
Martti Laine vor 9 Jahren
0
Ja es funktioniert. Vielen Dank!
Martti Laine vor 9 Jahren
0
Übrigens gehört SELinuxContext = zu dem Abschnitt [Service].
grawity vor 9 Jahren
1