FreeBSD上のcertbot

FreeBSD上でLetsencryptのSSL/TSL証明書を管理するにあたっての注意点などのメモ。

環境

  • FreeBSD 14.1
  • Python 3.11

certbotのインストール方法

FreeBSD上にcertbotをインストールする方法はいくつがあるが、ここでは次の二種類を比較する。

  • portsからインストール
  • pipでインストール

以前はportsからインストールしていた。が、現在はPython仮想環境上にpipでインストールする方法に変更している。

理由は、パッケージ管理がpipの方が楽なこと。

以前、certbotが依存しているパッケージの不具合により、そのパッケージのバージョンを戻さないとcertbotが動作しなくなってしまったことがある。このとき、portsから入れたものは旧バージョンに戻すのがとても大変だった。やればできないことはないが現実的ではない、という程度に大変だった。

かといって、その依存パッケージが正式に不具合対応されるまで待とうにも、数か月かかった記憶がある。長すぎる。その間、なにがしかのパッチを自力で当てるなりする以外、certbotを利用する方法がない。

一方で、pipならバージョン指定してロールバックするのもコマンド一発で簡単。

こうした事情から、pipインストールに移行した。

証明書の保存場所

certbotはインストール方法により、次のようにデフォルトの証明書保管ディレクトリが異なる。

  • portsからインストール: /usr/local/etc/letsencrypt
  • pipからインストール: /etc/letsencrypt

最初はこれに気づかず、設定pathを変更しそこねて、証明書の期限切れを起こしてしまった。確実に同じ場所にインストールさせるには、--config-dir オプションで指定しておくのがよい。

タイトルとURLをコピーしました