Bitnami RedmineをLet’s Encryptを使ってSSL化するときに、エラーが発生しました。
Azureポータルでhttpsのポートを許可していなかったことが原因でした。再度実行してもエラーになりました。単純にやり直してもうまくいかないようです。
以下の公式サイトの指示通りにして、リカバリーできましたのでメモを残しておきます。
前提条件
Microsoft Azureの仮想マシンにBitnami Redmineをインストールしています。SSLの設定は、bncert-toolを使って行い途中でエラーになったという前提です。
- OS:CentOS7.7
- Bitnami Redmine:Bitnami Redmine4.1.1-7
- SSL証明書:Let’s Encrypt
解決方法
以下の公式サイトを確認します。
https://docs.bitnami.com/general/how-to/generate-install-lets-encrypt-ssl/
公式サイトのページの中程に「トラブルシューティング」または「」と記された箇所があります。
まずは、Bitnami Redmineがインストールされている仮想マシンにTera Termなどのターミナルエミュレータを使ってログインします。rootでログインしましょう。
次のコマンドを実行します。
# crontab -e
このコマンドを実行すると、エディタでcronを編集できるようになります。わたしの環境ではviエディタでcron設定ファイルが開きました。
ファイルの中の証明書の更新に関連する行/コマンドをすべて削除します。わたしの環境の場合、以下の1行を削除しました。
0 0 * * * /opt/redmine/letsencrypt/lego --path /opt/redmine/letsencrypt --email="メールアドレス" --http --http-timeout 30 --http.webroot /opt/redmine/apps/letsencrypt --domains=ドメイン名 renew && /opt/redmine/apache2/bin/httpd -f /opt/redmine/apache2/conf/httpd.conf -k graceful # bncert-autorenew
削除できたらファイルを保存して閉じましょう。わたしの環境では、これで解決しました。
これでも解決できない場合は、bitnamiユーザのcronジョブを削除する必要があるようです。
# crontab -e -u bitnami
bitnamiユーザが不明の場合は、下記の場所を探してみることができます。わたしの環境ではrootだけが表示されました。rootユーザのcronジョブのみ存在しています。他のユーザのcronジョブも存在する場合は、内容を確認してみると良いと思います。
# cd /var/spool/cron/ # ls root
最後にBitnamiを再起動します。
# cd j/opt/redmine/ これはbitnamiインストールフォルダなのでそれぞれの環境に合わせてください。 # ./ctlscript.sh start
動作テスト
もう一度、Let’s Encryptの設定をしてみましょう。以下の記事でまとめています。
[sitecard subtitle=関連記事 url=https://coeure.co.jp/blog/infrastructure/microsoft-azure/azure-redmine-letsencrypt-210218 target=blank]
うまくSSL接続ができるようになればOKです。今回は、ここまでです。

