Compare commits

...

5 Commits

Author SHA1 Message Date
d26a6e5ec8 fix: create self-signed certificate for local use
Some checks failed
Continuous Delivery / build_n_upload (push) Has been cancelled
2026-04-11 16:18:34 +02:00
3d50d99368 fix: remove ssl entries if skipping certbot
Some checks failed
Continuous Delivery / build_n_upload (push) Has been cancelled
2026-04-04 06:59:18 +02:00
3a9d39de4c doc: fix dnf command search 2026-04-04 06:47:43 +02:00
d7d87e0162 feat: add skip certbot option
Some checks failed
Continuous Delivery / build_n_upload (push) Has been cancelled
2026-04-04 06:38:58 +02:00
48792673dc fix: use absolute path in service file 2026-03-15 18:21:11 +01:00
3 changed files with 37 additions and 21 deletions

View File

@@ -72,7 +72,7 @@ Some commands to deploy the RPM package on server
- Show available versions: - Show available versions:
```shell ```shell
dnf --showduplicates netoik-rp dnf search --showduplicates netoik-rp
``` ```
- Create certbot ovh credentials here: - Create certbot ovh credentials here:
@@ -98,6 +98,11 @@ Some commands to deploy the RPM package on server
set +a set +a
``` ```
- Install or upgrade without certbot (for testing environment)
```shell
SKIP_CERTBOT=true dnf --nogpgcheck --refresh --assumeyes --best install netoik-rp
```
# Security Notes # Security Notes

View File

@@ -2,4 +2,4 @@
Description=Renew certbot certificates Description=Renew certbot certificates
[Service] [Service]
ExecStart=certbot_renew ExecStart=/usr/sbin/certbot_renew

View File

@@ -22,14 +22,19 @@ Install the reverse proxy called nginx with a predefined configuration and with
%make_install %make_install
%post %post
if [ -z $SKIP_CERTBOT ]; then
# Check required OVH variables
if [ -z $OVH_ENDPOINT ]; then echo "Missing env var OVH_ENDPOINT!" 1>&2; exit 1; fi
if [ -z $OVH_APPLICATION_NAME ]; then echo "Missing env var OVH_APPLICATION_KEY!" 1>&2; exit 1; fi
if [ -z $OVH_APPLICATION_DESCRIPTION ]; then echo "Missing env var OVH_APPLICATION_DESCRIPTION!" 1>&2; exit 1; fi
if [ -z $OVH_APPLICATION_KEY ]; then echo "Missing env var OVH_APPLICATION_KEY!" 1>&2; exit 1; fi
if [ -z $OVH_APPLICATION_SECRET ]; then echo "Missing env var OVH_APPLICATION_SECRET!" 1>&2; exit 1; fi
if [ -z $OVH_CONSUMER_KEY ]; then echo "Missing env var OVH_CONSUMER_KEY!" 1>&2; exit 1; fi
# Replace secrets in ovh.ini # Replace secrets in ovh.ini
envsubst < %{_sysconfdir}/certbot/ovh.ini > %{_sysconfdir}/certbot/.ovh.ini.new envsubst < %{_sysconfdir}/certbot/ovh.ini > %{_sysconfdir}/certbot/.ovh.ini.new
if cmp --silent %{_sysconfdir}/certbot/.ovh.ini.new %{_sysconfdir}/certbot/ovh.ini; then
rm %{_sysconfdir}/certbot/.ovh.ini.new
else
mv %{_sysconfdir}/certbot/.ovh.ini.new %{_sysconfdir}/certbot/ovh.ini mv %{_sysconfdir}/certbot/.ovh.ini.new %{_sysconfdir}/certbot/ovh.ini
chmod 600 %{_sysconfdir}/certbot/ovh.ini chmod 600 %{_sysconfdir}/certbot/ovh.ini
fi
# Create virtualenv with certot # Create virtualenv with certot
if [ ! -d "/opt/certbot" ]; then if [ ! -d "/opt/certbot" ]; then
@@ -48,6 +53,12 @@ if [ ! -f "%{_sysconfdir}/letsencrypt/ssl-dhparams.pem" ]; then
openssl dhparam -out %{_sysconfdir}/letsencrypt/ssl-dhparams.pem 2048 openssl dhparam -out %{_sysconfdir}/letsencrypt/ssl-dhparams.pem 2048
fi fi
else
# Skipping certbot, so create self-signed certificate
mkdir --parents /etc/letsencrypt/live/netoik.io
openssl req -newkey rsa:4096 -nodes -keyout /etc/letsencrypt/live/netoik.io/privkey.pem -x509 -days 365 -out /etc/letsencrypt/live/netoik.io/fullchain.pem -subj "/C=US/ST=State/L=City/O=Organization/OU=Department/CN=netoik.io"
fi
# Restart services # Restart services
systemctl daemon-reload systemctl daemon-reload
systemctl reenable nginx.service certbot-renew.timer systemctl reenable nginx.service certbot-renew.timer