I think the remaining issue is getting LetsEncrypt and Certbot to work. I’m finding very little info on how they integrate into MiaB. Pointers to detailed info would be appreciated. I haven’t been able to find anything that covers process, file locations and config possibilities and how it all interoperates with nginx. Some of what I need is MiaB, some LE, some Certbot. It seems like the expectation is ‘it just all works together’, but I’m not seeing any errors or success. Is there any diagnostic or detailed architecture info for when it doesn’t?
Nothing is complaining, I get an LE folder in the ssl folder, but it looks like it only has account info. Since the certs are where the old system went bad at some point, I would like to make sure it’s done right here.
I would assume I can get a cert for the new box, even if it is only a single machine in the domain among many, and that all the different certs for aliases would set up after the DNS record points everything to it. But, I can’t get anything going for just one little 'ol machine…
Thanks again. Here is the Letsencrypt log (sanitized and “.” replaced with “,” otherwise I’m not allowed to post this…):
2024-07-18 08:32:02,143:DEBUG:certbot,_internal,main:certbot version: 1,21,0
2024-07-18 08:32:02,143:DEBUG:certbot,_internal,main:Location of certbot entry point: /usr/bin/certbot
2024-07-18 08:32:02,143:DEBUG:certbot,_internal,main:Arguments: [‘–register-unsafely-without-email’, ‘–agree-tos’, ‘–config-dir’, ‘/home/user-data/ssl/lets_encrypt’]
2024-07-18 08:32:02,143:DEBUG:certbot,_internal,main:Discovered plugins: PluginsRegistry(PluginEntryPoint#manual,PluginEntryPoint#null,PluginEntryPoint#standalone,PluginEntryPoint#webroot)
2024-07-18 08:32:02,153:DEBUG:certbot,_internal,log:Root logging level set at 30
2024-07-18 08:32:02,154:DEBUG:certbot,_internal,client:Registering without email!
2024-07-18 08:32:02,429:DEBUG:acme,client:Sending GET request to https: acme-v02,api,letsencrypt,org/directory,
2024-07-18 08:32:02,431:DEBUG:urllib3,connectionpool:Starting new HTTPS connection (1): acme-v02,api,letsencrypt,org:443
2024-07-18 08:32:03,072:DEBUG:urllib3,connectionpool:https: acme-v02,api,letsencrypt,org:443 “GET /directory HTTP/1,1” 200 746
2024-07-18 08:32:03,073:DEBUG:acme,client:Received response:
HTTP 200
Server: nginx
Date: Thu, 18 Jul 2024 12:32:03 GMT
Content-Type: application/json
Content-Length: 746
Connection: keep-alive
Cache-Control: public, max-age=0, no-cache
X-Frame-Options: DENY
Strict-Transport-Security: max-age=604800
{
“Dci-FZTjH3g”: “https: community,letsencrypt,org/t/adding-random-entries-to-the-directory/33417”,
“keyChange”: “https: acme-v02,api,letsencrypt,org/acme/key-change”,
“meta”: {
“caaIdentities”: [
“letsencrypt,org”
],
“termsOfService”: “https: letsencrypt,org/documents/LE-SA-v1,4-April-3-2024,pdf”,
“website”: “https: letsencrypt,org”
},
“newAccount”: “https: acme-v02,api,letsencrypt,org/acme/new-acct”,
“newNonce”: “https: acme-v02,api,letsencrypt,org/acme/new-nonce”,
“newOrder”: “https: acme-v02,api,letsencrypt,org/acme/new-order”,
“renewalInfo”: “https: acme-v02,api,letsencrypt,org/draft-ietf-acme-ari-03/renewalInfo”,
“revokeCert”: “https: acme-v02,api,letsencrypt,org/acme/revoke-cert”
}
2024-07-18 08:32:03,073:DEBUG:acme,client:Requesting fresh nonce
2024-07-18 08:32:03,073:DEBUG:acme,client:Sending HEAD request to https: acme-v02,api,letsencrypt,org/acme/new-nonce,
2024-07-18 08:32:03,123:DEBUG:urllib3,connectionpool:https: acme-v02,api,letsencrypt,org:443 “HEAD /acme/new-nonce HTTP/1,1” 200 0
2024-07-18 08:32:03,124:DEBUG:acme,client:Received response:
HTTP 200
Server: nginx
Date: Thu, 18 Jul 2024 12:32:03 GMT
Connection: keep-alive
Cache-Control: public, max-age=0, no-cache
Link: <https: acme-v02,api,letsencrypt,org/directory>;rel=“index”
Replay-Nonce: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
X-Frame-Options: DENY
Strict-Transport-Security: max-age=604800
2024-07-18 08:32:03,124:DEBUG:acme,client:Storing nonce: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
2024-07-18 08:32:03,124:DEBUG:acme,client:JWS payload:
b’{\n “termsOfServiceAgreed”: true,\n “contact”: \n}’
2024-07-18 08:32:03,127:DEBUG:acme,client:Sending POST request to https: acme-v02,api,letsencrypt,org/acme/new-acct:
{
“protected”: “xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx”,
“signature”: “xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx”,
“payload”: “xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx”
}
2024-07-18 08:32:03,243:DEBUG:urllib3,connectionpool:https: acme-v02,api,letsencrypt,org:443 “POST /acme/new-acct HTTP/1,1” 201 516
2024-07-18 08:32:03,244:DEBUG:acme,client:Received response:
HTTP 201
Server: nginx
Date: Thu, 18 Jul 2024 12:32:03 GMT
Content-Type: application/json
Content-Length: 516
Connection: keep-alive
Boulder-Requester: 1843953487
Cache-Control: public, max-age=0, no-cache
Link: <https: acme-v02,api,letsencrypt,org/directory>;rel=“index”, <https: letsencrypt,org/documents/LE-SA-v1,4-April-3-2024,pdf>;rel=“terms-of-service”
Location: https: acme-v02,api,letsencrypt,org/acme/acct/1843953487
Replay-Nonce: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
X-Frame-Options: DENY
Strict-Transport-Security: max-age=604800
{
“key”: {
“kty”: “RSA”,
“n”: “xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx”,
“e”: “AQAB”
},
“initialIp”: " xxxx:xxxx:0:a09::ce2b",
“createdAt”: “2024-07-18T12:32:03,218093624Z”,
“status”: “valid”
}
2024-07-18 08:32:03,245:DEBUG:acme,client:Storing nonce: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
2024-07-18 08:32:03,247:DEBUG:certbot,_internal,display,obj:Notifying user: Account registered,
2024-07-18 08:40:19,028:DEBUG:certbot,_internal,main:certbot version: 1,21,0
2024-07-18 08:40:19,029:DEBUG:certbot,_internal,main:Location of certbot entry point: /usr/bin/certbot
2024-07-18 08:40:19,029:DEBUG:certbot,_internal,main:Arguments: [‘–register-unsafely-without-email’, ‘–agree-tos’, ‘–config-dir’, ‘/home/user-data/ssl/lets_encrypt’]
2024-07-18 08:40:19,029:DEBUG:certbot,_internal,main:Discovered plugins: PluginsRegistry(PluginEntryPoint#manual,PluginEntryPoint#null,PluginEntryPoint#standalone,PluginEntryPoint#webroot)
2024-07-18 08:40:19,039:DEBUG:certbot,_internal,log:Root logging level set at 30
DEBUG:certbot,_internal,main:certbot version: 1,21,0
DEBUG:certbot,_internal,main:Location of certbot entry point: /usr/bin/certbot
DEBUG:certbot,_internal,main:Arguments:
DEBUG:certbot,_internal,main:Discovered plugins: PluginsRegistry(PluginEntryPoint#manual,PluginEntryPoint#null,PluginEntryPoint#standalone,PluginEntryPoint#webroot)
DEBUG:certbot,_internal,log:Root logging level set at 30
DEBUG:certbot,_internal,display,obj:Notifying user:
DEBUG:certbot,_internal,display,obj:Notifying user: No renewals were attempted,
DEBUG:certbot,_internal,display,obj:Notifying user: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
DEBUG:certbot,_internal,renewal:no renewal failures