41874


**現状**  
・[リンク](https://certbot.eff.org/#centosrhel7-nginx)の通り進めています

[code]

    sudo yum install certbot-nginx
    
[/code]

・cerbot がどこへインストールされたか分からないので調べているのですが、

[code]

    ls /usr/bin/
    
[/code]

> certbot -> /usr/bin/certbot-2  
>  certbot-2

* * *

**予定**  
・「/etc/cron.d/」の下にhogeファイル配置

* * *

**環境**  
・CentOS7  
・Nginx  
・Let’s Encrypt  
・certbot

* * *

**Q1**  
・リンク先のcronジョブ例では「&& certbot renew」と記載されていますが、パスを記載する必要はない？

**Q2**  
・certbotはどこにインストールされているのでしょうか？  
・「certbot -> /usr/bin/certbot-2」はシンボリックリンク？

**Q3**  
・「/etc/cron.d/hoge」でcertbotのパスを記載するとしたら

[code]

    0 1 * * * /usr/bin/certbot renew && systemctl restart nginx
    
[/code]

あるいは、下記？？

[code]

    0 1 * * * /usr/bin/certbot-2 renew && systemctl restart nginx
    
[/code]


CC BY-SA 3.0
2018-02-20T04:35:15.397
41859
2018-02-20T14:26:31.027
2018-02-20T04:42:57.533
7886
7886
question
centos ssl letsencrypt
Let’s Encrypt で SSL証明書を自動更新したいのですが、cron設定する際のcertbotのパス指定について


> Q1

フルパスを記述するか、/etc/cron.d/hoge ファイルにPATHを記述すればいいと思います。  
例）

[code]

    SHELL=/bin/bash
    PATH=/sbin:/bin:/usr/sbin:/usr/bin  ←コマンドサーチパスを「:」区切りで複数かけます
    MAILTO=root
    0 1 * * * root /usr/bin/certbot renew && systemctl restart nginx
    
[/code]

> Q2

`/usr/bin/certbot` にインストールされてます。  
`/usr/bin/certbot` はシンボリックリンクで、実体は `/usr/bin/certbot-2` という意味です。

パッケージの中身は rpm コマンドで確認できます。

[code]

    $ rpm -ql certbot-nginx
    
[/code]

> Q3

`/usr/bin/certbot` で良いと思います。

あと、/etc/cron.d/ の下のファイルは、実行ユーザを書く必要があるので、次の形式で書いて下さい。

[code]

    .---------------- minute (0 - 59)
    |  .------------- hour (0 - 23)
    |  |  .---------- day of month (1 - 31)
    |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
    |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
    |  |  |  |  |
    *  *  *  *  * user-name  command to be executed
    
[/code]


CC BY-SA 3.0
2018-02-20T14:26:31.027
41874
2018-02-20T14:26:31.027
5008
41859
answer