Một số ứng dụng gặp lỗi khi www-data cố gắng gọi doveadm, thí dụ Password plugin của Roundcube hay Postfixadmin. Thông báo lỗi là không thể đọc các chứng chỉ Let’s Encrypt!
Có vài cách giải quyết tùy trường hợp, như sau:
Dùng hàm password_hash của PHP thay cho doveadm để sinh mật khẩu.
+ Với password addon của Roundcube xem ở đây
+ Với postfixadmin thì sửa như sau:
sed -i '/"doveadm pw"/i\
return empty(\$db_pwd)?'':password_hash(\$pw,constant("PASSWORD_".\$method));' /path/to/postfixadmin/functions.inc.php
sed -i "/crypt_password = pacrypt/a\
if(empty(\$crypt_password)) return password_verify(\$password,\$row['password']);" /path/to/postfixadmin/model/Login.php
Dùng acl để cấp quyền đọc cho www-data trên các thư mục archive và live của Let’s Encrypt
apt install acl -y
setfacl -m "u:www-data:rx" /etc/letsencrypt/{live/,archive/}
# Chú ý: Trong conf.d/10-ssl.conf phải có dòng
ssl_min_protocol = TLSv1.2
# Nếu không được nữa thì đành chuyển quyền sở hữu (free) của cả file và thư mục con
chown -R www-data /etc/letsencrypt/{live/,archive/}