我刚刚开始做自己的托管,似乎通常有选择文件位置的常见做法。
例如,我发现这个网站说有存储 SSL 证书的标准位置,这些位置因发行版而异:
Linux 对所有内容都有其指定的目录。您已经熟悉 /var、/etc 和其他目录,它们是文件系统层次标准 (FHS) 的一部分。
好吧,你猜怎么着,也有一个指定的位置来存储 SSL 证书。
Ubuntu:
/etc/ssl/certs/
中央操作系统:
/etc/pki/tls/certs/
这些位置是否有更正式的记录?我在想像“常见关键文件的 Ubuntu 标准文件位置”之类的东西。
我读了这个问题,似乎有时没有标准。但这篇文章似乎另有说明,至少在涉及某些文件时。
也许相关的是 nginx 配置文件夹的不同布局方式(配置文件保存在conf.d
某些发行版和sites-available
其他发行版中。这些差异到底来自哪里?据我所知,nginx 是一个发布的单个应用程序由单一组织。
对于文件的确切位置没有权威。阅读任何文档:如何指导、参考手册以及查看软件包安装的任何看起来像配置文件的内容。
很久以前有人着手构建启用 https 的 nginx,并且他们的打包决定在许多文档中重复出现。对系统上的每个包重复此操作,这为事物的位置建立了一组约定。
意识到即使是相同的源代码也可以进行大量修改并且仍然可以运行。配置文件,添加到支持脚本,非上游代码补丁,编译时间选项。不理想,但这些差异确实存在。
Red Hat/CentOS 和 Debian/Ubuntu 都提供了一个基于 Mozilla 工作的 ca-certificates 包,作为一个大捆绑包。但是除了系统 PKI 目录不同之外,更新包的工具也不同。Debian 有基于 openssl 的update-ca-certificates,而 EL 有update-ca-trust将其抽象为带有
trust
二进制文件的 p11-kit 库。PKI 是一个相当普遍的问题,所以要知道将证书放在其他地方很常见并且可以接受。Web 服务器的证书没有理由需要在系统存储中。Debian 手册的 httpd 配方表明:如果可用,不妨使用 Let's Encrypt 证书,默认情况下是在
/etc/letsencrypt/
.