在使用我们encryption时,以下目录只能由root访问:
/etc/letsencrypt/live/ /etc/letsencrypt/archive/
启动MariaDB时,它以“mysql”用户身份运行,因此当您尝试使用Let's Encrypt证书启用SSL时,您会收到一条错误消息。
[Warning] SSL error: SSL_CTX_set_default_verify_paths failed
这是迄今为止的预期行为。 当我执行时:
chmod 755 /etc/letsencrypt/live/ chmod 755 /etc/letsencrypt/archive/
这允许MariaDB启用SSL,在连接到MariaDB时可以使用以下命令进行检查:
show variables like '%ssl%'
那么,问题是这是一个多大的安全问题。 Nginx可以使用让我们使用默认权限对证书进行encryption,尽pipe它在我的系统上以用户“nginx”的身份运行,但由于它使用<1024以下的端口,所以似乎以比MariaDB更高的权限运行。
chmod 755使letsencrypt私钥文件“世界可读”在我的系统…丑陋。 您只能通过SSH公钥authentication连接到我的服务器,root不允许login。 被允许login的用户除了su root之外不能做任何事情,所以甚至在系统上的暴力似乎也是不可能的。 还有一些系统上的其他sftp用户是chroot,无法访问/ etc / …
所以我应该是安全的,但我不知道是否有任何解决scheme,而不使letsencrypt目录世界可读。 (当然,除了使用MariaDB的自签名证书)