質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

Q&A

5回答

2475閲覧

Let's Encrypt の自動更新が実行されない

hidepon

総合スコア206

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

0グッド

0クリップ

投稿2018/12/14 06:37

編集2018/12/14 07:13

Let’sEncrypt の設定をしました。
設定の完了後にhttps から始まる形でアクセスをできることを確認しました。

そこで次の段階として
自動的に期限切れの状態から更新して利用できるようにと次のcron を設定したのですが、なぜか
自動更新されず、「セキュリティーの保護がなされていません」と表示されました。
どこが悪いのでしょうか?

00 04 01 * * certbot renew && systemctl restart httpd

ほかに設定が必要なのでしょうか?
よろしくお願いいたします。

(補足)
#インストール
yum -y install epel-release
yum -y install certbot python-certbot-apache
curl https://dl.eff.org/certbot-auto -o /usr/bin/certbot-auto
chmod 700 /usr/bin/certbot-auto
certbot-auto certonly --webroot -w /var/www/laravel/public -d hogehoge.jp --email hoge@hogehoge.jp
ls -l /etc/letsencrypt/live/hogehoge.jp/
#証明書設定
vi /etc/httpd/conf.d/ssl.conf
SSLCertificateFile /etc/letsencrypt/live/hogehoge.jp/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/hogehoge.jp/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/hogehoge.jp/chain.pem

systemctl stop httpd
systemctl start httpd
systemctl stop httpd
firewall-cmd --add-service=https --zone=public --permanent
firewall-cmd --reload

vi /etc/httpd/conf/httpd.conf
#追加
<ifModule mod_rewrite.c>
RewriteEngine On
LogLevel alert rewrite:trace3
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
</ifModule>
#再起動
systemctl start httpd

#定時自動更新
crontab -u root -e
00 04 01 * * certbot renew && systemctl restart httpd

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答5

0

rootのcronを利用して、実行内容をshファイルをつくって書き込み
フルパスで指定しsudoで実行してはどうでしょう?

投稿2018/12/14 06:44

yambejp

総合スコア114769

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2018/12/14 06:51

cron実行ユーザーがroot権限持ってないユーザーだからだね。
hidepon

2018/12/14 07:14

質問部分にどのようにインストール、設定したかを追記しました。よろしくお願いいたします
guest

0

CentOSならLet's Encrypt 総合ポータルLet's Encrypt の使い方に従ってインストール&設定すれば、/etc/cron.d/cerbotが自動的に作成されていませんか?
ちなみに以前に自分が設定した環境では、以下のようになっています。

bash

1$ sudo cat /etc/cron.d/certbot 2# /etc/cron.d/certbot: crontab entries for the certbot package 3# 4# Upstream recommends attempting renewal twice a day 5# 6# Eventually, this will be an opportunity to validate certificates 7# haven't been revoked, etc. Renewal will only occur if expiration 8# is within 30 days. 9SHELL=/bin/sh 10PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin 11 120 */12 * * * root test -x /usr/bin/certbot -a \! -d /run/systemd/system && perl -e 'sleep int(rand(43200))' && certbot -q renew

投稿2018/12/14 07:18

hichon

総合スコア5737

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

そこで次の段階として

自動的に期限切れの状態から更新して利用できるようにと次のcron を設定したのですが、なぜか
自動更新されず、「セキュリティーの保護がなされていません」と表示されました。
どこが悪いのでしょうか?

certbot renewは有効期限が30日未満の証明書を確認して更新します。すでに期限が切れている証明書の取得には使用できません。
現在のcronの設定では毎月1日の4時00分に実行するように見受けられますが、毎日/毎週実行してもいいと思います。(今の設定では毎月1日の4時00分に実行し、失敗したら更新されず、期限が切れます。)

投稿2018/12/14 07:24

ozwind918

総合スコア1140

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

certbot-auto certonly --webroot -w /var/www/laravel/public -d hogehoge.jp --email hoge@hogehoge.jp

crontab -u root -e
00 04 01 * * certbot renew && systemctl restart httpd

をみると インストールした時とコマンドが異なるようですが...

00 04 01 * * /usr/bin/certbot-auto renew --webroot-path /var/www/laravel/public --post-hook "/bin/systemctl reload httpd"

にすると どうでしょうか?

投稿2018/12/14 07:22

CHERRY

総合スコア25171

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

まず、rootのcrontabに設定していますか?

あとは、certbotはどこにインストールされていますか?/usr/bin /binとかじゃないと、フルパスでの指定が必要です。

いずれにせよ、エラーメールがcrontabのユーザー宛に飛んでいるはずですが。

投稿2018/12/14 06:57

otn

総合スコア84499

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hidepon

2018/12/14 07:14

質問部分にどのようにインストール、設定したかを追記しました。よろしくお願いいたします
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問