From d6b2f7032eda9d7689fbae39a8278ce85f577a7e Mon Sep 17 00:00:00 2001 From: "Stuart D. Gathman" Date: Tue, 7 Sep 2021 21:45:22 -0400 Subject: [PATCH 1/4] Set default days before expiration in /etc/sysconfig/acme-tiny --- acme-tiny-sign.sh | 6 +++++- acme-tiny.conf | 4 ++++ acme-tiny.spec | 4 ++++ 3 files changed, 13 insertions(+), 1 deletion(-) create mode 100644 acme-tiny.conf diff --git a/acme-tiny-sign.sh b/acme-tiny-sign.sh index d2f1799..b4acea8 100755 --- a/acme-tiny-sign.sh +++ b/acme-tiny-sign.sh @@ -5,9 +5,13 @@ if test "$(id -u)" -eq 0; then exit 2 fi -DAYS="${1:-7}" +. /etc/sysconfig/acme-tiny +DAYS="${1:-$DAYS}" +test -n "$DAYS" || DAYS="7" if [[ "$DAYS" =~ ^[0-9]+$ ]]; then + echo "Days before expiration: $DAYS" secs=$(( $DAYS * 24 * 60 * 60 )) + exit else echo "Invalid number of days: $DAYS" exit 1 diff --git a/acme-tiny.conf b/acme-tiny.conf new file mode 100644 index 0000000..28e81fe --- /dev/null +++ b/acme-tiny.conf @@ -0,0 +1,4 @@ +# Default settings for acme-tiny wrapper script + +# Number of days before expiration to renew a certificate +DAYS=7 diff --git a/acme-tiny.spec b/acme-tiny.spec index fe3641c..29a6366 100644 --- a/acme-tiny.spec +++ b/acme-tiny.spec @@ -78,6 +78,7 @@ mkdir -p %{buildroot}%{_sbindir} mkdir -p %{buildroot}%{_libexecdir}/%{name} mkdir -p %{buildroot}%{_sharedstatedir}/acme/{private,csr,certs,.notify} mkdir -p %{buildroot}%{_sysconfdir}/%{name}/notify.d +mkdir -p %{buildroot}%{_sysconfdir}/sysconfig chmod 0700 %{buildroot}%{_sharedstatedir}/acme/private install -m 0755 acme-tiny-sign.sh %{buildroot}%{_libexecdir}/%{name}/sign @@ -87,6 +88,7 @@ ln -sf acme_tiny %{buildroot}%{_sbindir}/%{name} ln -sf %{_libexecdir}/%{name}/sign %{buildroot}%{_sbindir}/acme-tiny-sign ln -sf %{_libexecdir}/%{name}/notify %{buildroot}%{_sysconfdir}/%{name}/notify.sh install -m 0755 cert-check.py %{buildroot}%{_sbindir}/cert-check +install -m 0644 acme-tiny.conf %{buildroot}%{_sbindir}/sysconfig/%{name} install -m 0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/httpd/conf.d mkdir -p %{buildroot}%{_unitdir} install -pm 644 %{SOURCE6} %{buildroot}%{_unitdir} @@ -122,6 +124,7 @@ exit 0 %{_sbindir}/cert-check %{_sbindir}/%{name} %{_sysconfdir}/%{name} +%{_sysconfdir}/sysconfig/%{name} %files core %license LICENSE @@ -131,6 +134,7 @@ exit 0 %changelog * Tue Sep 7 2021 Stuart D. Gathman 4.1.1-1 - New upstream release +- Set days before expiration in /etc/sysconfig * Thu May 27 2021 Stuart D. Gathman 4.1.0-7 - Fix BZ#1839904 From 5c1698c70ef3359b7edd11537a4e3b3645976bc9 Mon Sep 17 00:00:00 2001 From: "Stuart D. Gathman" Date: Tue, 7 Sep 2021 21:45:22 -0400 Subject: [PATCH 2/4] Set default days before expiration in /etc/sysconfig/acme-tiny --- acme-tiny-sign.sh | 6 +++++- acme-tiny.conf | 4 ++++ acme-tiny.spec | 5 +++++ 3 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 acme-tiny.conf diff --git a/acme-tiny-sign.sh b/acme-tiny-sign.sh index d2f1799..b4acea8 100755 --- a/acme-tiny-sign.sh +++ b/acme-tiny-sign.sh @@ -5,9 +5,13 @@ if test "$(id -u)" -eq 0; then exit 2 fi -DAYS="${1:-7}" +. /etc/sysconfig/acme-tiny +DAYS="${1:-$DAYS}" +test -n "$DAYS" || DAYS="7" if [[ "$DAYS" =~ ^[0-9]+$ ]]; then + echo "Days before expiration: $DAYS" secs=$(( $DAYS * 24 * 60 * 60 )) + exit else echo "Invalid number of days: $DAYS" exit 1 diff --git a/acme-tiny.conf b/acme-tiny.conf new file mode 100644 index 0000000..28e81fe --- /dev/null +++ b/acme-tiny.conf @@ -0,0 +1,4 @@ +# Default settings for acme-tiny wrapper script + +# Number of days before expiration to renew a certificate +DAYS=7 diff --git a/acme-tiny.spec b/acme-tiny.spec index fe3641c..5e91304 100644 --- a/acme-tiny.spec +++ b/acme-tiny.spec @@ -24,6 +24,7 @@ Source8: README-fedora.md # simple script hook to kick services when cert is updated Source9: notify.sh Source10: acme-tiny-notify.service +Source11: acme-tiny.conf Requires(pre): shadow-utils # systemd macros are not defined unless systemd is present @@ -78,6 +79,7 @@ mkdir -p %{buildroot}%{_sbindir} mkdir -p %{buildroot}%{_libexecdir}/%{name} mkdir -p %{buildroot}%{_sharedstatedir}/acme/{private,csr,certs,.notify} mkdir -p %{buildroot}%{_sysconfdir}/%{name}/notify.d +mkdir -p %{buildroot}%{_sysconfdir}/sysconfig chmod 0700 %{buildroot}%{_sharedstatedir}/acme/private install -m 0755 acme-tiny-sign.sh %{buildroot}%{_libexecdir}/%{name}/sign @@ -92,6 +94,7 @@ mkdir -p %{buildroot}%{_unitdir} install -pm 644 %{SOURCE6} %{buildroot}%{_unitdir} install -pm 644 %{SOURCE7} %{buildroot}%{_unitdir} install -pm 644 %{SOURCE10} %{buildroot}%{_unitdir} +install -m 0644 %{SOURCE11} %{buildroot}%{_sbindir}/sysconfig/%{name} %pre getent group acme > /dev/null || groupadd -r acme @@ -122,6 +125,7 @@ exit 0 %{_sbindir}/cert-check %{_sbindir}/%{name} %{_sysconfdir}/%{name} +%{_sysconfdir}/sysconfig/%{name} %files core %license LICENSE @@ -131,6 +135,7 @@ exit 0 %changelog * Tue Sep 7 2021 Stuart D. Gathman 4.1.1-1 - New upstream release +- Set days before expiration in /etc/sysconfig * Thu May 27 2021 Stuart D. Gathman 4.1.0-7 - Fix BZ#1839904 From 0231e1b9b56373b60aa1485137c73826dbd73786 Mon Sep 17 00:00:00 2001 From: "Stuart D. Gathman" Date: Tue, 7 Sep 2021 21:45:22 -0400 Subject: [PATCH 3/4] Set default days before expiration in /etc/sysconfig/acme-tiny --- acme-tiny-sign.sh | 5 ++++- acme-tiny.conf | 4 ++++ acme-tiny.spec | 5 +++++ 3 files changed, 13 insertions(+), 1 deletion(-) create mode 100644 acme-tiny.conf diff --git a/acme-tiny-sign.sh b/acme-tiny-sign.sh index d2f1799..9999005 100755 --- a/acme-tiny-sign.sh +++ b/acme-tiny-sign.sh @@ -5,8 +5,11 @@ if test "$(id -u)" -eq 0; then exit 2 fi -DAYS="${1:-7}" +. /etc/sysconfig/acme-tiny +DAYS="${1:-$DAYS}" +test -n "$DAYS" || DAYS="7" if [[ "$DAYS" =~ ^[0-9]+$ ]]; then + echo "Days before expiration: $DAYS" secs=$(( $DAYS * 24 * 60 * 60 )) else echo "Invalid number of days: $DAYS" diff --git a/acme-tiny.conf b/acme-tiny.conf new file mode 100644 index 0000000..28e81fe --- /dev/null +++ b/acme-tiny.conf @@ -0,0 +1,4 @@ +# Default settings for acme-tiny wrapper script + +# Number of days before expiration to renew a certificate +DAYS=7 diff --git a/acme-tiny.spec b/acme-tiny.spec index fe3641c..05f2df8 100644 --- a/acme-tiny.spec +++ b/acme-tiny.spec @@ -24,6 +24,7 @@ Source8: README-fedora.md # simple script hook to kick services when cert is updated Source9: notify.sh Source10: acme-tiny-notify.service +Source11: acme-tiny.conf Requires(pre): shadow-utils # systemd macros are not defined unless systemd is present @@ -78,6 +79,7 @@ mkdir -p %{buildroot}%{_sbindir} mkdir -p %{buildroot}%{_libexecdir}/%{name} mkdir -p %{buildroot}%{_sharedstatedir}/acme/{private,csr,certs,.notify} mkdir -p %{buildroot}%{_sysconfdir}/%{name}/notify.d +mkdir -p %{buildroot}%{_sysconfdir}/sysconfig chmod 0700 %{buildroot}%{_sharedstatedir}/acme/private install -m 0755 acme-tiny-sign.sh %{buildroot}%{_libexecdir}/%{name}/sign @@ -92,6 +94,7 @@ mkdir -p %{buildroot}%{_unitdir} install -pm 644 %{SOURCE6} %{buildroot}%{_unitdir} install -pm 644 %{SOURCE7} %{buildroot}%{_unitdir} install -pm 644 %{SOURCE10} %{buildroot}%{_unitdir} +install -m 0644 %{SOURCE11} %{buildroot}%{_sysconfdir}/sysconfig/%{name} %pre getent group acme > /dev/null || groupadd -r acme @@ -122,6 +125,7 @@ exit 0 %{_sbindir}/cert-check %{_sbindir}/%{name} %{_sysconfdir}/%{name} +%{_sysconfdir}/sysconfig/%{name} %files core %license LICENSE @@ -131,6 +135,7 @@ exit 0 %changelog * Tue Sep 7 2021 Stuart D. Gathman 4.1.1-1 - New upstream release +- Set days before expiration in /etc/sysconfig * Thu May 27 2021 Stuart D. Gathman 4.1.0-7 - Fix BZ#1839904 From 63da791110847177a61d3089821569e0bc9a704f Mon Sep 17 00:00:00 2001 From: "Stuart D. Gathman" Date: Tue, 17 May 2022 23:10:44 -0400 Subject: [PATCH 4/4] Add missing dependency on python3 --- acme-tiny.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/acme-tiny.spec b/acme-tiny.spec index 605194d..fceb923 100644 --- a/acme-tiny.spec +++ b/acme-tiny.spec @@ -9,7 +9,7 @@ Name: acme-tiny Version: 5.0.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Tiny auditable script to issue, renew Let's Encrypt certificates License: MIT @@ -50,7 +50,7 @@ acme_tiny on installed CSRs as the acme user for privilege separation. %package core Summary: Core python module of acme-tiny -Requires: openssl +Requires: openssl python3 %if 0%{?rhel} >= 5 && 0%{?rhel} < 7 # EL6 uses python2.6, which does not include argparse Requires: python-argparse @@ -133,6 +133,9 @@ exit 0 %{_sbindir}/acme_tiny %changelog +* Tue May 17 2022 Stuart D. Gathman 5.0.1-2 +- Add missing python3 dependency for new version + * Thu Oct 28 2021 Stuart D. Gathman 5.0.1-1 - New upstream release