Amazon Linux 2023でスナップ経由でcertbotをインストールする方法

Amazon Linux 2023でスナップ経由でcertbotをインストールする方法

私は方法に関するこのガイドに従っています。Amazon Linux 2023でSSL / TLSを設定する。 CA署名証明書を取得するには、次の方法を使用することをお勧めします。証明書ロボット。 Certbotを入手するには、Snapをインストールすることをお勧めします。

いくつかの方法を試しましたが、前提条件をインストールできませんでした。

sudo yum install snapd
    Error: Unable to find a match: snapd

sudo amazon-linux-extras install epel
    sudo: amazon-linux-extras: command not found

sudo yum install -y amazon-linux-extras
    Error: Unable to find a match: amazon-linux-extras

ベストアンサー1

正直なところ、certbotを実行する理由はありません。実際には letcencrpyt とやり取りし、いくつかの設定ファイルをすばやく変更するのに十分なコードです。特にSnapの検疫機能は、実際にシステム修正を実行したい場合は役に立ちません。

Amazonはcertbotをインストールするためにsnapを使用することをお勧めしません。https://eff-certbot.readthedocs.io/en/stable/install.html#installationいくつかの方法の1つとしてリストされています。

同じページに記載されているpipメソッドを使用して、最新のcertbotを簡単にインストールできます。 snapを使用するよりもオーバーヘッドがはるかに少ないです(私は彼らの推奨事項が本当に好きではありません。また、pipに基づく説明にはいくつかのエラーがあると思います)。仕組みを簡単に見てください。

https://certbot.eff.org/instructions?ws=nginx&os=pip

# create an isolated python environment for certbot purposes alone
python3 -m venv /opt/certbot

# Modify environment for the current shell only to make python modify
# the virtual environment and not your system libraries
source /opt/certbot/bin/activate

# Install certbot
pip install certbot

それはすべてです。後で certbot をスタンドアロンプ​​ログラムとして実行するには、

/bin/bash -c "source /opt/cerbot/bin/activate; certbot" 

この方法。

もちろん、これを次のシェルスクリプトに入れることもできます。

/usr/bin/certbot:

#!/bin/bash
source /opt/certbot/bin/activate
/opt/certbot/bin/certbot "$@"

これを実行可能にし()以降は、chmod 755 /usr/bin/certbot単にコマンドとして使用してください。certbot

定期的に証明書を自動的に更新するようにシステムタイマーを設定することもできます。

これはとても簡単です。

  1. この内容で /lib/systemd/system/certbot.service ファイルを作成します。
[Unit]
Description=Certbot
Documentation=https://certbot.eff.org/docs

[Service]
Type=oneshot
ExecStart=/bin/bash -c "source /opt/cerbot/bin/activate; certbot -q renew" 
PrivateTmp=true

および/lib/systemd/system/certbot.timerファイル:

[Unit]
Description=Run certbot twice daily

[Timer]
OnCalendar=*-*-* 00,12:00:00
RandomizedDelaySec=43200
Persistent=true

[Install]
WantedBy=timers.target

このタイマーのソースコードは、Fedora パッケージングから直接提供されます。

このタイマーを有効にするには、systemctl enable --now certbot.timerその時点から必要に応じて証明書が自動的に更新されます。

また、AWSサポートチームにEメールを送信して、他のすべての大規模なLinuxディストリビューションに含まれている「certbot」というソフトウェアを使用することをお勧めしますがyum install certbot(インストールして上記のすべてを実行できるように)、certbotを含めないことにした理由を尋ねることもできます。 。 Amazon Linux 2023自体で。これは非常に愚かな間違いのようです。

おすすめ記事