web-dev-qa-db-ja.com

ssl.confおよびhttpd.confの可能な場所

pythonで、証明書ファイルと秘密鍵を取得し、ApacheサーバーにSSL証明書をインストールするスクリプトを作成しようとしています。私のマシンのssl.confファイルは次の場所にあります。ディレクトリ/etc/httpd/conf.d/は正常だと思いますが、分布に応じて、ssl.confファイルが存在できる他のディレクトリは何ですか?

そして、ssl.confはApache 2のみの機能ですか?実行中のサーバーがApache1の場合、httpd.confファイルを見つけて編集する必要がありますか?

1
Sean Nilan

仮想ホストごとに証明書を指定できます...(ほとんどすべての最新のブラウザーでサポートされているサーバー表示を利用します)。証明書を自動的にインストールするスクリプトを作成する限り...これは主にディストリビューション固有です(それを実現するために多くの追加のコーディングを行わない限り)ほとんどのRHELプラットフォーム(すべてではないにしても)は/ etc/httpdに何かを置きます/ ... debian-flavoredがそれを/ etc/Apache2/...に配置し、他のディストリビューションでどこに到達できるかを誰が知っているか。

1つの特定のディストリビューションに固執している場合は、構成を行うためのさまざまな方法もあることに注意してください。あなたはすべてを含む1つの単一の巨石構成ファイルを持つことができます...そしてあなたはそれを他の構成をロードするより小さなコンポーネントに分割することができます...(すなわちhttpd.confがconf.d/*。confをロードする方法)...あるいはサイトごと、モジュールごと、およびその他の12の方法で個別の構成に分割します...

ただし、デフォルトでは、Apache 1を実行しているほとんどのプラットフォーム...従来、すべてのApacheを構成する1つのメガリシック構成があります...追加の構成ファイルをロードするオプションはないと思います。 Apache 2.0.41では、ワイルドカードを使用したインクルードが導入され、次のようなことが可能になりました。

/etc/httpd/conf.d/*.conf
をインクルードします/etc/httpd/mods-enabled/*.loadをインクルードします

良い考えとして、可能な限り環境を標準化することを強くお勧めします。複数のタイプの構成とすべての複数のバージョンで複数の環境をサポートしようとすることは、絶対的な悪夢です。さらに、Apache1はEoLを超えています。確かに、修正プログラムはまだリリースされている可能性があります...しかし、私はどんな種類の安全な環境でもそれを信頼しません。 Apache1でしか利用できないものはまだ見つかりません。Apache2は8年間安定しています...アップグレードする時が来ました。

1
TheCompWiz

Apache 1では、mod_sslは組み込みモジュールではなく、SSLを有効にするためのいくつかの異なるモジュールがあり、ほとんどの場合、既存の構成ファイルに必要なディレクティブを含めるだけでよいと思います。

すべてのプラットフォームに適用される一般的なスクリプトを作成できるとは思えません。バリエーションが多すぎます。複雑な構成の場合、スクリプトは成功するのではなく、問題を解決することがほぼ確実です。

Sslに関連する構成をssl.confファイルに入れる必要はありません。約30の仮想ホストがあるホストでは、ssl.confはほとんど使用されていません。仮想ホスト固有の設定(証明書)をその仮想ホストの構成ファイルに保存します。

しかし、Debianベースのシステムに関する質問に答えるために、サーバーごとの設定は/etc/Apache2/mods-available/ssl.confにあります。

0
Zoredache

それはできません。あなたが持っている最も近いものはapxs -q SYSCONFDIR

ディストリビューション固有の処理が必要になります。

それでも、ランダムなシステム管理者は規則に従う必要はありません。

0
Mark Wagner

FWIW、記録しようとするApache Wikiページがあります ディストリビューション固有のレイアウト

0
Scott Bertilson