ERROR: the templates_c directory doesn’t exist or isn’t writeable for the webserver
mail@ynm:~/postfixadmin$ ls -ld templates_c/
drwxr-xr-x 2 www-data www-data 4096 May 3 14:31 templates_c/
mail@ynm:~/postfixadmin$ whoami
mail
root@ynm:/# chown -R mail:mail /home/mail/postfixadmin/templates_c
root@ynm:/# chmod 755 /home/mail/postfixadmin/templates_c
A teljes lánc olvasásához szükséges könyvtárakra is kell “x” (execute) jog
sudo setfacl -m u:dovecot:–x /etc/letsencrypt
sudo setfacl -m u:dovecot:–x /etc/letsencrypt/live
sudo setfacl -m u:dovecot:–x /etc/letsencrypt/live/ynm.hu
A szimbolikus linkeket mutató fájlokat is engedélyezni kell
sudo setfacl -m u:dovecot:r /etc/letsencrypt/live/ynm.hu/fullchain.pem
sudo setfacl -m u:dovecot:r /etc/letsencrypt/live/ynm.hu/privkey.pem
sudo setfacl -m u:dovecot:r /etc/letsencrypt/live/ynm.hu/chain.pem
sudo setfacl -m u:dovecot:–x /etc/letsencrypt/archive
sudo setfacl -m u:dovecot:–x /etc/letsencrypt/archive/ynm.hu
Valódi fájlok olvasási joga
sudo setfacl -m u:dovecot:r /etc/letsencrypt/archive/ynm.hu/*.pem
Biztonsági előnyök:
- Pontos hozzáférés-szabályozás: Csak a
dovecotfelhasználónak adsz olvashatóságot, nem módosítod a csoportokat vagy a globális jogosultságokat (chmod 755), így más folyamat nem fér hozzá. - Nem kell áttenni vagy másolni a tanúsítványokat (ami rizikós lenne, főleg automatizálásnál).
- Jobb, mint chmod 644: A fájlokat nem teszed olvashatóvá mindenki számára, ami a tanúsítványoknál kifejezetten kerülendő.
Biztonsági megfontolások:
- A tanúsítványok (főleg a
privkey.pem) érzékeny adatok – ha egy támadó valamilyen módon futtat kódotdovecotfelhasználóként, akkor ezeket elolvashatja. - ACL jogosultságokat nem minden biztonsági eszköz vagy mentéskezelő követ figyelmesen, így dokumentálni kell, hogy ezek létrejöttek.
- A certbot frissítése után új fájlok jöhetnek létre, így a hozzáférés automatikusan nem öröklődik. Ez kezelhető
--deploy-hookscript segítségével.
Javasolt védelem:
- Tartsd karban a rendszered, és használj minimális jogosultságú felhasználókat minden szolgáltatáshoz.
- Ne futtass más folyamatokat
dovecotnéven. - Hosszú távon fontold meg egy külön tanúsítvány példány készítését Dovecot számára
postrenewhook-kal (pl. másolat/etc/dovecot/certs/könyvtárba, megfelelő jogosultságokkal).
Összegzés:
Az ACL használata ilyen módon biztonságos és ajánlott, főleg self-hosted rendszereknél, feltéve, hogy a Dovecot megfelelően szeparált, és nem engedsz mást futni a nevében.