Я только начинаю заниматься собственным хостингом, и, похоже, существуют общие правила выбора мест размещения файлов.
Например, я нашелэтот сайткоторый говорит, что существуют стандартные места для хранения SSL-сертификатов, которые различаются в зависимости от дистрибутива:
В Linux есть свои назначенные каталоги для всего. Вы уже знакомы с /var, /etc и другими каталогами, которые являются частью Стандарта иерархии файловой системы (FHS).
Ну, представьте себе, есть также специальное место для хранения SSL-сертификатов.
Убунту:
/etc/ssl/certs/
CentOS:
/etc/pki/tls/certs/
Задокументированы ли эти расположения где-либо более формально? Я представляю себе что-то вроде "Стандартные расположения файлов Ubuntu для общих критических файлов".
Я читаюэтот вопрос, и кажется, что иногда стандарта нет. Но эта статья, кажется, говорит об обратном, по крайней мере, когда дело касается определенных файлов.
Возможно, это связано с различными способами компоновки папки конфигурации nginx (файлы конфигурации сохраняются в conf.d
в одних дистрибутивах и в в sites-available
других). Откуда вообще берутся эти различия? Насколько мне известно, nginx — это единое приложение, выпущенное одной организацией.
решение1
Нет никаких полномочий относительно того, куда именно должны идти файлы. Прочитайте любую документацию: руководства, справочные руководства и просмотрите все, что пакет устанавливает и что выглядит как файл конфигурации.
Кто-то давно начал создавать nginx с поддержкой https, и его решения по упаковке повторялись во многих документах. Повторите для каждого пакета в системе, что создает набор соглашений о том, где что находится.
Поймите, что даже тот же исходный код может быть сильно изменен и все еще функционировать. Файлы конфигурации, добавленные в поддерживающие скрипты, исправления кода, которые не являются upstream, параметры времени компиляции. Не идеально, но эти различия существуют.
Red Hat/CentOS и Debian/Ubuntu поставляют пакет ca-certificates, основанный на работе Mozilla, как большой пакет. Но, помимо того, что системный каталог PKI отличается, также отличаются и инструменты для обновления пакета. Debian имеетобновление-ca-сертификатовкоторый основан на openssl, в то время как EL имеетобновление-ca-trustкоторый абстрагирует это в библиотеку p11-kit с trust
двоичным файлом.
PKI — это довольно общая проблема, поэтому знайте, что размещение сертификатов в других местах — обычное дело и может быть приемлемым. Нет причин, по которым сертификат веб-сервера должен находиться в системном хранилище.Рецепт httpd из справочника Debianпоказывает только это: можно было бы также использовать сертификаты Let's Encrypt, если они доступны, а они по умолчанию находятся в /etc/letsencrypt/
.