| Both sides previous revisionPrevious revisionNext revision | Previous revision |
| servers:windows:nginx:lets_encrypt [2026/01/19 01:08] – [Renewal] Sean Rhone | servers:windows:nginx:lets_encrypt [2026/04/15 09:48] (current) – [Python] Sean Rhone |
|---|
| |
| * https://www.python.org/downloads/windows/ | * https://www.python.org/downloads/windows/ |
| * https://www.python.org/ftp/python/3.14.2/python-3.14.2-amd64.exe | * Last tested: ''python-3.14.4-amd64.exe'' ((2026/03/11: ''python-3.15.0a7-amd64.exe'' needed a Visual Studio build package for ''cffi'', which [[https://github.com/python-cffi/cffi/issues/23#issuecomment-1845861410|doesn't seem available pre-release]]; installing pre-selected VC build tools didn't work/likely needs more components)) |
| * Last tested: ''python-3.14.2-amd64.exe'' | |
| |
| * Install ''pip'' ((nothing else (admin, PATH, etc) is required and can be unchecked)) | * Install ''pip'' ((nothing else (admin, PATH, etc) is required and can be unchecked)) |
| ====== Settings ====== | ====== Settings ====== |
| |
| * :!: Change ''email'' | * https://eff-certbot.readthedocs.io/en/latest/using.html#certbot-command-line-options |
| | |
| | * :!: Set ''email'' |
| |
| MKDIR "%SystemDrive%\www\certbot" | MKDIR "%SystemDrive%\www\certbot" |
| |
| "notepad.exe" "%SystemDrive%\www\certbot\cli-custom.ini" | "%SystemRoot%\System32\notepad.exe" "%SystemDrive%\www\certbot\cli-custom.ini" |
| |
| <code> | <code> |
| verbose = "true" | verbose = "true" |
| | max-log-backups = "0" |
| text = "true" | text = "true" |
| non-interactive = "true" | non-interactive = "true" |
| uir = "true" | uir = "true" |
| staple-ocsp = "false" | staple-ocsp = "false" |
| | key-type = "ecdsa" |
| | elliptic-curve = "secp384r1" |
| |
| 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" | 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</code> | # End</code> |
| |
| ====== Obtain Certs Test ====== | ====== Obtain Certs ====== |
| |
| "netsh.exe" advfirewall firewall add rule name="Certbot (Standalone)" dir="in" action="allow" program="%LocalAppData%\Programs\Python\Python314\python.exe" protocol="tcp" localport="80" | * :!: If it passes the dry run, remove the ''--dry-run'' argument and re-run |
| | |
| | "%SystemRoot%\System32\netsh.exe" advfirewall firewall add rule name="Certbot (Standalone)" dir="in" action="allow" program="%LocalAppData%\Programs\Python\Python314\python.exe" protocol="tcp" localport="80" |
| |
| "%LocalAppData%\Programs\Python\Python314\Scripts\certbot.exe" "certonly" --config "%SystemDrive%\www\certbot\cli-custom.ini" --dry-run | "%LocalAppData%\Programs\Python\Python314\Scripts\certbot.exe" "certonly" --config "%SystemDrive%\www\certbot\cli-custom.ini" --dry-run |
| |
| "netsh.exe" advfirewall firewall delete rule name="Certbot (Standalone)" | "%SystemRoot%\System32\netsh.exe" advfirewall firewall delete rule name="Certbot (Standalone)" |
| |
| ====== Scripts ====== | ====== Scripts ====== |
| MKDIR "%SystemDrive%\www\scripts\certbot" | MKDIR "%SystemDrive%\www\scripts\certbot" |
| |
| "explorer.exe" "%SystemDrive%\www\scripts\certbot" | "%SystemRoot%\explorer.exe" "%SystemDrive%\www\scripts\certbot" |
| |
| ===== Renewal ===== | ===== Renewal ===== |
| |
| "notepad.exe" "%SystemDrive%\www\scripts\certbot\Renewal.bat" | "%SystemRoot%\System32\notepad.exe" "%SystemDrive%\www\scripts\certbot\Renewal.bat" |
| |
| <code> | <code> |
| |
| CALL "%SystemDrive%\www\scripts\certbot\Update.bat" | CALL "%SystemDrive%\www\scripts\certbot\Update.bat" |
| |
| TITLE Certbot Renewal | |
| |
| CALL "%SystemDrive%\www\scripts\nginx\Stop.bat" | CALL "%SystemDrive%\www\scripts\nginx\Stop.bat" |
| |
| "netsh.exe" advfirewall firewall add rule name="Certbot (Standalone)" dir="in" action="allow" program="%LocalAppData%\Programs\Python\Python314\python.exe" protocol="tcp" localport="80" | TITLE Certbot Renewal |
| | |
| | "%SystemRoot%\System32\netsh.exe" advfirewall firewall add rule name="Certbot (Standalone)" dir="in" action="allow" program="%LocalAppData%\Programs\Python\Python314\python.exe" protocol="tcp" localport="80" |
| "%LocalAppData%\Programs\Python\Python314\Scripts\certbot.exe" "certonly" --config "%SystemDrive%\www\certbot\cli-custom.ini" --quiet | "%LocalAppData%\Programs\Python\Python314\Scripts\certbot.exe" "certonly" --config "%SystemDrive%\www\certbot\cli-custom.ini" --quiet |
| "netsh.exe" advfirewall firewall delete rule name="Certbot (Standalone)" | "%SystemRoot%\System32\netsh.exe" advfirewall firewall delete rule name="Certbot (Standalone)" |
| |
| CALL "%SystemDrive%\www\scripts\nginx\Start.bat" | CALL "%SystemDrive%\www\scripts\nginx\Start.bat" |
| ===== Update ===== | ===== Update ===== |
| |
| "notepad.exe" "%SystemDrive%\www\scripts\certbot\Update.bat" | "%SystemRoot%\System32\notepad.exe" "%SystemDrive%\www\scripts\certbot\Update.bat" |
| |
| <code> | <code> |
| |
| ====== Task Scheduler ====== | ====== Task Scheduler ====== |
| |
| **** | |
| |
| taskschd.msc | |
| |
| ===== Renewal ===== | ===== Renewal ===== |
| * Weekly (Sunday) ''07:00:00 AM'' | * Weekly (Sunday) ''07:00:00 AM'' |
| |
| SCHTASKS /Create /SC "WEEKLY" /D "SUN" /TN "Certbot Renewal" /TR "%SystemDrive%\www\scripts\certbot\Renewal.bat" /ST "07:00" /F | "%SystemRoot%\System32\schtasks.exe" /Create /SC "WEEKLY" /D "SUN" /TN "Certbot Renewal" /TR "%SystemDrive%\www\scripts\certbot\Renewal.bat" /ST "07:00" /F |
| | |
| | ====== TODO ====== |
| | |
| | ===== ACME Clients ===== |
| | |
| | * https://letsencrypt.org/getting-started/#selecting-and-operating-an-acme-client-yourself |
| | * https://letsencrypt.org/docs/client-options/#clients-windows-/-iis |
| | * https://eff-certbot.readthedocs.io/en/stable/install.html#alternative-2-pip |
| | * https://certifytheweb.com/ |
| | * https://simple-acme.com/ |
| |