cPanel v76 で新規ドメインを追加した際に AutoSSL の証明書が正しく付与されない問題に遭遇した。
この記事では、CentOS 6.10 環境下で発生するこの一般的な問題の原因と、効果的な解決策を解説する。
環境
CentOS 6.10
cPanel v76.0.22
DNS サーバー 外部
エラー内容
生じたエラーの一例が下記
証明書の要求は行われており、ファイル認証用のファイルも正常に更新されている 状況だった。
Web サイトで"sakakitest"を確認しています...
Analyzing "sakakitest.dev"
TLS Status: Defective
Defect: NO_SSL: No SSL certificate is installed.
Performing DCV (Domain Control Validation)
Local HTTP DCV OK: sakakitest.dev
OK:
Local HTTP DCV OK: www.sakakitest.dev (via sakakitest.dev)
Local HTTP DCV OK: mail.sakakitest.dev (via sakakitest.dev)
OK:
Local HTTP DCV OK: cpanel.sakakitest.dev (via sakakitest.dev)
OK:
Local HTTP DCV OK: webdisk.sakakitest.dev (via sakakitest.dev)
Local HTTP DCV OK: webmail.sakakitest.dev (via sakakitest.dev)
Local HTTP DCV OK: autodiscover.sakakitest.dev (via sakakitest.dev)
WHM からステータスを確認すると証明書発行のジョブのステータスがペンディングになっていた。
原因
結論としては Sectigo の仕様変更が原因であり AutoSSL で要求するすべてのコモンネームがサーバーを向いていなければ証明書が正しく発行されないようだ。
今回 DNS を外部で管理しており、一部のドメインのみ cPanel サーバーに向けていたため問題が発生したようだ。
cPanel の DNS を権威サーバーにしている場合には、取得しようとする証明書と DNS の同期が取りやすくこの問題は生じにくいと思われる。
対策
cPanel versions 94.0.19, 98.0.13, 100.0.4, 102.0.0.で対策が取られているため CentOS7 以降の OS はアップデートで対応できる。
今回の OS はは CentOS6 で cPanel v76 だったため不要な証明書を AutoSSL から外した。
cPanel AutoSSL ドメイン無効の設定方法
WHM から一括設定できなかったので cPanel から行った。
ログイン後に SSL/TLS status をクリック一覧から無効にしたいサブドメインを選択して”Exclude Domains from AutoSSL”をクリックすると無効にできる。
まとめ
古い cPanel サーバーで AutoSSL のエラーを解消した。
cPanel の AutoSSL のサーバーは高負荷状態になることが多く、証明書取得に失敗することが多く本質劇な原因にたどり着くまでに時間がかかってしまった。
”TLS Status: Defectivel”で検索すると Let’s Encrypt を使いましょうみたいな身も蓋もないフォーラムが出てきて、問題が多い機能であることが伺える。
なお、v74 は Let’s Encrypt には対応していない……
最近 SSL 周りや cPanel の仕様が目まぐるしく 変化しており古い環境もいつまで利用させてもらえるかわからないが、なんとか利用できてよかった。
この記事が古い環境を利用している人の助けになれば幸いだ。
この記事を読む人は止むに止まれぬ事情があると思うが、cPanel v76, CentOS6 はすでに EOL を迎えており、できる限り新しい環境への移転を推奨と明記しておく。
参考
おしまい