User Tools

Site Tools


servers:linux:nginx:lets_encrypt

Information

Prerequisites

Dependencies

sudo zypper install 'python313-certbot'

Settings

sudo mkdir -p '/etc/letsencrypt' && sudo -e '/etc/letsencrypt/cli-custom.ini'
verbose = 'true'
max-log-backups = '0'
text = 'true'
non-interactive = 'true'
standalone = 'true'
force-renewal = 'true'
agree-tos = 'true'

########################################
email = espionage724@x
########################################

no-eff-email = 'true'

rsa-key-size = '4096'
redirect = 'true'
hsts = 'true'
uir = 'true'
staple-ocsp = 'false'
key-type = 'ecdsa'
elliptic-curve = 'secp384r1'

pre-hook = systemctl stop 'nginx'
post-hook = systemctl start 'nginx'

domains = 'realmofespionage.xyz, wiki.realmofespionage.xyz, media.realmofespionage.xyz, blog.realmofespionage.xyz, social.realmofespionage.xyz, forums.realmofespionage.xyz, status.realmofespionage.xyz, files.realmofespionage.xyz, test.realmofespionage.xyz'

# End

Obtain Certs

  • :!: If it passes the dry run, remove the dry-run argument and re-run
sudo 'certbot' 'certonly' --config '/etc/letsencrypt/cli-custom.ini' --dry-run
sudo systemctl stop 'nginx'

Automatic Cert Renewal

Service

sudo -e '/etc/systemd/system/certbot-renew-custom.service'
[Service]
Type=oneshot

WorkingDirectory=/etc/letsencrypt

ExecStart='/usr/bin/certbot' 'certonly' --config '/etc/letsencrypt/cli-custom.ini' --quiet

ExecStartPost='/usr/bin/sync'

# End

Timer

  • Weekly (Sunday) 07:00:00 AM
sudo -e '/etc/systemd/system/certbot-renew-custom.timer' && sudo systemctl daemon-reload && sudo systemctl enable 'certbot-renew-custom.timer' --now
[Unit]
Description=Let's Encrypt Certificate Renewal
After=network-online.target
Wants=network-online.target

[Timer]
OnCalendar=Sun *-*-* 07:00:00
Persistent=true

[Install]
WantedBy=multi-user.target

# End
sudo systemctl start 'certbot-renew-custom' && sudo systemctl status 'certbot-renew-custom' -l
/var/www/wiki/data/pages/servers/linux/nginx/lets_encrypt.txt · Last modified: by Sean Rhone

Except where otherwise noted, content on this wiki is licensed under the following license: CC0 1.0 Universal
CC0 1.0 Universal Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki