質問: ### 経緯 ローカルでテスト環境を構築しています。 HitchというTLS Proxyツールで下記の証明書をまとめた.pemを指定する必要があります。 ・証明書 ・中間証明 ・秘密鍵 ・Diffie-Hellman 参考にしているページはLet’s encryptの使用を前提ですが、ローカルなのでopensslコマンドで自己証明書を使用しています。 ``` openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/nginx/cert.key -out /etc/nginx/cert.crt ``` これですと中間証明が発行出来ません。 ### 試した事 別の参考にしたページでキーと証明書が合体させたpemを指定していたので試しました ``` cat example.com.key example.crt > combined.pem ``` 下記のエラーが表示されます。 ``` Invalid parameter 'pem-file': Unable to stat x509 certificate PEM file ``` ### 質問 1)そもそもですが、ローカル環境で自己証明書を動作させる事は可能ですか? 1-1) (もしわかれば教えて下さい)自己証明書によりブラウザでWarning表示が出ますが、ページの閲覧自体はできるかと思います。しかし、hitchではエラーとなってしまう場合はあるのでしょうか? 2) 「Unable to stat x509 certificate PEM」について元となる鍵と証明書は-x509で発行しているのですが、この表示されます。原因はどこにあるのでしょうか? やはりcatで合成させるのが原因ですか? --- わかりにくい文章で申し訳ございません。バックエンドの知識がまだあまりなく学習している所です。 間違っている部分など多々あるかと思います。アドバイス頂ければ幸いです。 何卒よろしくお願い致します。 ### 追記 「Hitch 1.4とVarnish 5.2でHTTP/2なMagento環境を作る」 https://principle-works.jp/blog/making-http-2-magento-environment-with-hitch-1-4-and-varnish-5-2/ 上記のサイトを参考に、Hitch+Varnish+Docker+自己証明書+Magentoで構築したいと考えております。 現段階でVarnish+Docker+自己証明書+Magentoまでは動作確認が出来ており、Hitchを加える事でhttp/2で対応させたい考えております。 現状、HitchからVarnishへの接続は出来ているのですが、その後Backend fetch エラーとなり失敗しております。Web上ではVarnish(Backend fitch error)と表示されます。 私の考察でcertbotへの証明確認を失敗しているのではないかと考えております。理由としてはopensslコマンドで証明書を発行した際に所有確認の為のポート設定を行っていないからです。よってこのポートに参照行っても何もでるはずがないのでおかしいと考えております。
回答: > > Invalid parameter 'pem-file': Unable to stat x509 certificate PEM file > > > 「pem-file」という設定パラメータに指定されたパスにファイルが存在しないと考えられます。ソースコード中の問題のエラーメッセージを出す処理はここです。statが失敗していますね。