Služba systemd dosáhne na proxy, ale ne na soubor CA
Když nastavení certifikátu proxy funguje jen v interaktivním shellu, prověřte přístup uživatele služby k souboru a omezení systemd.
Nainstalovali jste schválený balíček CA a požadavek funguje v terminálu. Služba stále hlásí chybu načítání certifikátu. Před změnou IP proxy ověřte, zda tento proces může otevřít stejný soubor.
Služba může běžet jako jiný uživatel Unixu, startovat v jiném adresáři nebo vidět omezený souborový systém. Cesta platná pro vaše přihlášení není automaticky platná pro ni.
Začněte absolutní cestou
Zkontrolujte cestu nastavenou ve skutečném klientovi. U curl například --cacert vybírá balíček CA cíle; HTTPS proxy má samostatné volby CA proxy. Jiní klienti používají vlastní konfigurační klíče nebo proměnné prostředí.
Prohlédněte soubor i adresáře, které k němu vedou:
namei -l /home/alex/certs/approved-ca.pem
systemctl show example.service -p User -p Group -p ProtectHome -p RootDirectory
Jde o diagnostické příklady, ne o pokyn zpřístupnit soubor k zápisu všem. Práva průchodu adresáři jsou stejně důležitá jako právo číst konečný soubor.
Oprávnění nemusí být celý problém
S ProtectHome=yes znepřístupní systemd službě standardní umístění domovských adresářů. Změna režimu souboru certifikátu neodstraní omezení jmenného prostoru. Nastavený kořenový adresář také může změnit, na co absolutní cesta uvnitř služby odkazuje.
Použijte vhodné místo pro konfiguraci služby, například adresář pod /etc určený aplikaci, a udělte pouze nutné čtení. Aktualizujte cestu CA klienta. Neodstraňujte nesouvisející omezení souborového systému jen proto, že první kopie byla ve vašem osobním domovském adresáři.
Čtěte první užitečnou chybu
«Nelze načíst soubor CA» a «řetězec certifikátů není důvěryhodný» jsou různé chyby. První může nastat před jakýmkoli ověřováním. Druhá může znamenat, že čitelný balíček obsahuje nesprávnou autoritu nebo je použit pro nesprávné TLS spojení.
Po opravě přístupu testujte znovu z kontextu služby. Úspěšný příkaz v terminálu zůstává užitečným srovnáním, ale nedokazuje, jaké soubory služba vidí ani jaké nastavení důvěry její klient používá.