메일송신 mailJS , 영/한 전환 적용ㅁ

This commit is contained in:
Wind
2026-02-15 11:12:43 +09:00
parent 6e9a7ed81b
commit a0a212e41c
43 changed files with 6713 additions and 536 deletions

View File

@@ -0,0 +1,608 @@
2026-02-15 01:51:49,888:DEBUG:certbot._internal.main:certbot version: 5.3.0
2026-02-15 01:51:49,889:DEBUG:certbot._internal.main:Location of certbot entry point: /opt/certbot/bin/certbot
2026-02-15 01:51:49,889:DEBUG:certbot._internal.main:Arguments: ['--config', '/etc/letsencrypt.ini', '--work-dir', '/tmp/letsencrypt-lib', '--logs-dir', '/data/logs', '--cert-name', 'npm-6', '--agree-tos', '--authenticator', 'webroot', '-m', 'windpacer@hanmocnn.co.kr', '--preferred-challenges', 'http', '--domains', 'git.hanmocnn.co.kr']
2026-02-15 01:51:49,889:DEBUG:certbot._internal.main:Discovered plugins: PluginsRegistry(PluginEntryPoint#manual,PluginEntryPoint#null,PluginEntryPoint#standalone,PluginEntryPoint#webroot)
2026-02-15 01:51:49,906:DEBUG:certbot._internal.log:Root logging level set at 30
2026-02-15 01:51:49,907:DEBUG:certbot._internal.plugins.selection:Requested authenticator webroot and installer None
2026-02-15 01:51:49,907:DEBUG:certbot._internal.plugins.selection:Single candidate plugin: * webroot
Description: Saves the necessary validation files to a .well-known/acme-challenge/ directory within the nominated webroot path. A separate HTTP server must be running and serving files from the webroot path. HTTP challenge only (wildcards not supported).
Interfaces: Authenticator, Plugin
Entry point: EntryPoint(name='webroot', value='certbot._internal.plugins.webroot:Authenticator', group='certbot.plugins')
Initialized: <certbot._internal.plugins.webroot.Authenticator object at 0xffffa0e50390>
Prep: True
2026-02-15 01:51:49,908:DEBUG:certbot._internal.plugins.selection:Selected authenticator <certbot._internal.plugins.webroot.Authenticator object at 0xffffa0e50390> and installer None
2026-02-15 01:51:49,908:INFO:certbot._internal.plugins.selection:Plugins selected: Authenticator webroot, Installer None
2026-02-15 01:51:50,141:DEBUG:certbot._internal.main:Picked account: <Account(RegistrationResource(body=Registration(key=None, contact=(), agreement=None, status=None, terms_of_service_agreed=None, only_return_existing=None, external_account_binding=None), uri='https://acme-v02.api.letsencrypt.org/acme/acct/3064386906', new_authzr_uri=None, terms_of_service=None), ce2ddac5740bb12d4d6591b7fa1728af, Meta(creation_dt=datetime.datetime(2026, 2, 14, 22, 37, tzinfo=datetime.timezone.utc), creation_host='312f7928d5ba', register_to_eff=None))>
2026-02-15 01:51:50,142:DEBUG:acme.client:Sending GET request to https://acme-v02.api.letsencrypt.org/directory.
2026-02-15 01:51:50,147:DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): acme-v02.api.letsencrypt.org:443
2026-02-15 01:51:50,678:DEBUG:urllib3.connectionpool:https://acme-v02.api.letsencrypt.org:443 "GET /directory HTTP/1.1" 200 1033
2026-02-15 01:51:50,679:DEBUG:acme.client:Received response:
HTTP 200
Server: nginx
Date: Sun, 15 Feb 2026 01:51:50 GMT
Content-Type: application/json
Content-Length: 1033
Connection: keep-alive
Cache-Control: public, max-age=0, no-cache
X-Frame-Options: DENY
Strict-Transport-Security: max-age=604800
{
"H0mgb220UuM": "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"
],
"profiles": {
"classic": "https://letsencrypt.org/docs/profiles#classic",
"shortlived": "https://letsencrypt.org/docs/profiles#shortlived",
"tlsclient": "https://letsencrypt.org/docs/profiles#tlsclient",
"tlsserver": "https://letsencrypt.org/docs/profiles#tlsserver"
},
"termsOfService": "https://letsencrypt.org/documents/LE-SA-v1.6-August-18-2025.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/acme/renewal-info",
"revokeCert": "https://acme-v02.api.letsencrypt.org/acme/revoke-cert"
}
2026-02-15 01:51:50,680:DEBUG:certbot._internal.display.obj:Notifying user: Requesting a certificate for git.hanmocnn.co.kr
2026-02-15 01:51:50,687:DEBUG:acme.client:Requesting fresh nonce
2026-02-15 01:51:50,687:DEBUG:acme.client:Sending HEAD request to https://acme-v02.api.letsencrypt.org/acme/new-nonce.
2026-02-15 01:51:50,843:DEBUG:urllib3.connectionpool:https://acme-v02.api.letsencrypt.org:443 "HEAD /acme/new-nonce HTTP/1.1" 200 0
2026-02-15 01:51:50,844:DEBUG:acme.client:Received response:
HTTP 200
Server: nginx
Date: Sun, 15 Feb 2026 01:51:50 GMT
Connection: keep-alive
Cache-Control: public, max-age=0, no-cache
Link: <https://acme-v02.api.letsencrypt.org/directory>;rel="index"
Replay-Nonce: NeKnt8TGdBzHxUclyNbZW9s3_Zgksoml2Lq4pfk94QLSB9SdukQ
X-Frame-Options: DENY
Strict-Transport-Security: max-age=604800
2026-02-15 01:51:50,844:DEBUG:acme.client:Storing nonce: NeKnt8TGdBzHxUclyNbZW9s3_Zgksoml2Lq4pfk94QLSB9SdukQ
2026-02-15 01:51:50,844:DEBUG:acme.client:JWS payload:
b'{\n "identifiers": [\n {\n "type": "dns",\n "value": "git.hanmocnn.co.kr"\n }\n ]\n}'
2026-02-15 01:51:50,850:DEBUG:acme.client:Sending POST request to https://acme-v02.api.letsencrypt.org/acme/new-order:
{
"protected": "eyJhbGciOiAiUlMyNTYiLCAia2lkIjogImh0dHBzOi8vYWNtZS12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL2FjY3QvMzA2NDM4NjkwNiIsICJub25jZSI6ICJOZUtudDhUR2RCekh4VWNseU5iWlc5czNfWmdrc29tbDJMcTRwZms5NFFMU0I5U2R1a1EiLCAidXJsIjogImh0dHBzOi8vYWNtZS12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL25ldy1vcmRlciJ9",
"signature": "qAt8eXKNxxIDV6XMGdk18fBntRW7vcOUV0PZTTDSghKJeeenaQzg4Qz1BDHYaPfkAmEZ6z-TtzeTZvewo3COOxe6qqUOeSOKsWs2GP6SIBSqWoGem8DFRpqk3FVk0vmXIoiupF3plySfrpK5C0gbOGya5OtDDC3nY1UYnFC9aYefhHWqUL61zmQHSA_XCukwwgPP8PgOQ3Cbyi7KSaLAVjp27VKmxGCt6IqmlkZi1VpT8nxXfYpMwQ-VQKDwnSgG7FtjwgSZnJCd2IIJnM3kkaIv-FO51nivhU1pUcxXvk_pnZtLv86_O65fmTLhFlTASOKiaDnoffI-FhZE0KOTvg",
"payload": "ewogICJpZGVudGlmaWVycyI6IFsKICAgIHsKICAgICAgInR5cGUiOiAiZG5zIiwKICAgICAgInZhbHVlIjogImdpdC5oYW5tb2Nubi5jby5rciIKICAgIH0KICBdCn0"
}
2026-02-15 01:51:51,040:DEBUG:urllib3.connectionpool:https://acme-v02.api.letsencrypt.org:443 "POST /acme/new-order HTTP/1.1" 201 352
2026-02-15 01:51:51,040:DEBUG:acme.client:Received response:
HTTP 201
Server: nginx
Date: Sun, 15 Feb 2026 01:51:50 GMT
Content-Type: application/json
Content-Length: 352
Connection: keep-alive
Boulder-Requester: 3064386906
Cache-Control: public, max-age=0, no-cache
Link: <https://acme-v02.api.letsencrypt.org/directory>;rel="index"
Location: https://acme-v02.api.letsencrypt.org/acme/order/3064386906/480408820986
Replay-Nonce: NeKnt8TGHmpTiA8eUyeODagzdJZLQFsIFH4bWqSCTp34fwUNaU4
X-Frame-Options: DENY
Strict-Transport-Security: max-age=604800
{
"status": "pending",
"expires": "2026-02-22T01:51:50Z",
"identifiers": [
{
"type": "dns",
"value": "git.hanmocnn.co.kr"
}
],
"authorizations": [
"https://acme-v02.api.letsencrypt.org/acme/authz/3064386906/658839462036"
],
"finalize": "https://acme-v02.api.letsencrypt.org/acme/finalize/3064386906/480408820986"
}
2026-02-15 01:51:51,040:DEBUG:acme.client:Storing nonce: NeKnt8TGHmpTiA8eUyeODagzdJZLQFsIFH4bWqSCTp34fwUNaU4
2026-02-15 01:51:51,041:DEBUG:acme.client:JWS payload:
b''
2026-02-15 01:51:51,045:DEBUG:acme.client:Sending POST request to https://acme-v02.api.letsencrypt.org/acme/authz/3064386906/658839462036:
{
"protected": "eyJhbGciOiAiUlMyNTYiLCAia2lkIjogImh0dHBzOi8vYWNtZS12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL2FjY3QvMzA2NDM4NjkwNiIsICJub25jZSI6ICJOZUtudDhUR0htcFRpQThlVXllT0RhZ3pkSlpMUUZzSUZINGJXcVNDVHAzNGZ3VU5hVTQiLCAidXJsIjogImh0dHBzOi8vYWNtZS12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL2F1dGh6LzMwNjQzODY5MDYvNjU4ODM5NDYyMDM2In0",
"signature": "xD5_zw4XMvY1xlo89Kw8bnTshAIEzOReJhnmZtVJoDWODLY0tZyeNLnS5As4aNG3urUYk_2V-DdHxWa3KVqNnUoWiU3zEk4NYrAfc12VEIdJpn3XhrTtgrM7t1qhXO8RjIt_9QwR1jjmp7moDIIFHsUw-pDmzGGQTh619IhVl7aPb--Szq0F-EmOD1r1T9bD3YgrKLSw47qPwytNmwnshzT8p-c9oGrU577S5DN2Wqorzbx0BSW_--DAoc2kVkdkrKs-nNrfSaY07bxQGDQXQNnSdYgyiIJKu1F-wB22KUBes5ms6o8k1FqOLXyNgymzjUcuZ0hfYe3sZ6E4TlHrWQ",
"payload": ""
}
2026-02-15 01:51:51,203:DEBUG:urllib3.connectionpool:https://acme-v02.api.letsencrypt.org:443 "POST /acme/authz/3064386906/658839462036 HTTP/1.1" 200 826
2026-02-15 01:51:51,204:DEBUG:acme.client:Received response:
HTTP 200
Server: nginx
Date: Sun, 15 Feb 2026 01:51:51 GMT
Content-Type: application/json
Content-Length: 826
Connection: keep-alive
Boulder-Requester: 3064386906
Cache-Control: public, max-age=0, no-cache
Link: <https://acme-v02.api.letsencrypt.org/directory>;rel="index"
Replay-Nonce: 4AH-2vvBn0w9qfwZhLqSAyLL6pOKIlFnF7FvghSQeN3TK7jb0WM
X-Frame-Options: DENY
Strict-Transport-Security: max-age=604800
{
"identifier": {
"type": "dns",
"value": "git.hanmocnn.co.kr"
},
"status": "pending",
"expires": "2026-02-22T01:51:50Z",
"challenges": [
{
"type": "tls-alpn-01",
"url": "https://acme-v02.api.letsencrypt.org/acme/chall/3064386906/658839462036/wUR-nQ",
"status": "pending",
"token": "lYADYtOgtUUXj8WVH2qa0AW6RT8-qr577RV-yS7nYY0"
},
{
"type": "dns-01",
"url": "https://acme-v02.api.letsencrypt.org/acme/chall/3064386906/658839462036/muacBg",
"status": "pending",
"token": "lYADYtOgtUUXj8WVH2qa0AW6RT8-qr577RV-yS7nYY0"
},
{
"type": "http-01",
"url": "https://acme-v02.api.letsencrypt.org/acme/chall/3064386906/658839462036/WBcYRQ",
"status": "pending",
"token": "lYADYtOgtUUXj8WVH2qa0AW6RT8-qr577RV-yS7nYY0"
}
]
}
2026-02-15 01:51:51,204:DEBUG:acme.client:Storing nonce: 4AH-2vvBn0w9qfwZhLqSAyLL6pOKIlFnF7FvghSQeN3TK7jb0WM
2026-02-15 01:51:51,205:DEBUG:acme.challenges:tls-alpn-01 was not recognized, full message: {'type': 'tls-alpn-01', 'url': 'https://acme-v02.api.letsencrypt.org/acme/chall/3064386906/658839462036/wUR-nQ', 'status': 'pending', 'token': 'lYADYtOgtUUXj8WVH2qa0AW6RT8-qr577RV-yS7nYY0'}
2026-02-15 01:51:51,205:INFO:certbot._internal.auth_handler:Performing the following challenges:
2026-02-15 01:51:51,205:INFO:certbot._internal.auth_handler:http-01 challenge for Identifier(typ=IdentifierType(dns), value='git.hanmocnn.co.kr')
2026-02-15 01:51:51,206:INFO:certbot._internal.plugins.webroot:Using the webroot path /data/letsencrypt-acme-challenge for all unmatched domains.
2026-02-15 01:51:51,206:DEBUG:certbot._internal.plugins.webroot:Creating root challenges validation dir at /data/letsencrypt-acme-challenge/.well-known/acme-challenge
2026-02-15 01:51:51,207:DEBUG:certbot._internal.plugins.webroot:Attempting to save validation to /data/letsencrypt-acme-challenge/.well-known/acme-challenge/lYADYtOgtUUXj8WVH2qa0AW6RT8-qr577RV-yS7nYY0
2026-02-15 01:51:51,208:DEBUG:acme.client:JWS payload:
b'{}'
2026-02-15 01:51:51,212:DEBUG:acme.client:Sending POST request to https://acme-v02.api.letsencrypt.org/acme/chall/3064386906/658839462036/WBcYRQ:
{
"protected": "eyJhbGciOiAiUlMyNTYiLCAia2lkIjogImh0dHBzOi8vYWNtZS12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL2FjY3QvMzA2NDM4NjkwNiIsICJub25jZSI6ICI0QUgtMnZ2Qm4wdzlxZndaaExxU0F5TEw2cE9LSWxGbkY3RnZnaFNRZU4zVEs3amIwV00iLCAidXJsIjogImh0dHBzOi8vYWNtZS12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL2NoYWxsLzMwNjQzODY5MDYvNjU4ODM5NDYyMDM2L1dCY1lSUSJ9",
"signature": "NBWiYVLMnqzqVjVd9e2EOtYQIaoXr58024Qvuw6w-bluVIrcYqsRzjqIYI6xMcmuOAArmP0ARse7Fe7Nfdv0y6XvMQqhZyX3ttOp3LzCKLKARrz0ze-VI6Qit6OhFHUb-4M8ly-bU50uETtv-suWUD2N7mzTPHgJYsV4bCnNw-06YfRev5KGyu-pkZnXb_5BkbvAVqLCWGZpHLZ9P2maQSK38isRzRRvg_Yph53XTkm7_Apt48RvyciOSvRpxT0y4GitmuL_S6kqaiJUJnsQXAi8iZT6AlNd4JfWgy-IKNd-pLeJML9Jp5Ml6VMEY8cjpGbC4rvRAEO4ghJ_gMNV2A",
"payload": "e30"
}
2026-02-15 01:51:51,374:DEBUG:urllib3.connectionpool:https://acme-v02.api.letsencrypt.org:443 "POST /acme/chall/3064386906/658839462036/WBcYRQ HTTP/1.1" 200 195
2026-02-15 01:51:51,375:DEBUG:acme.client:Received response:
HTTP 200
Server: nginx
Date: Sun, 15 Feb 2026 01:51:51 GMT
Content-Type: application/json
Content-Length: 195
Connection: keep-alive
Boulder-Requester: 3064386906
Cache-Control: public, max-age=0, no-cache
Link: <https://acme-v02.api.letsencrypt.org/directory>;rel="index", <https://acme-v02.api.letsencrypt.org/acme/authz/3064386906/658839462036>;rel="up"
Location: https://acme-v02.api.letsencrypt.org/acme/chall/3064386906/658839462036/WBcYRQ
Replay-Nonce: NeKnt8TGCVoX15XqxHcH8EwLY7mU0fhc5iu-W8E95dWPI9_TGIQ
X-Frame-Options: DENY
Strict-Transport-Security: max-age=604800
{
"type": "http-01",
"url": "https://acme-v02.api.letsencrypt.org/acme/chall/3064386906/658839462036/WBcYRQ",
"status": "pending",
"token": "lYADYtOgtUUXj8WVH2qa0AW6RT8-qr577RV-yS7nYY0"
}
2026-02-15 01:51:51,375:DEBUG:acme.client:Storing nonce: NeKnt8TGCVoX15XqxHcH8EwLY7mU0fhc5iu-W8E95dWPI9_TGIQ
2026-02-15 01:51:51,376:INFO:certbot._internal.auth_handler:Waiting for verification...
2026-02-15 01:51:52,376:DEBUG:acme.client:JWS payload:
b''
2026-02-15 01:51:52,381:DEBUG:acme.client:Sending POST request to https://acme-v02.api.letsencrypt.org/acme/authz/3064386906/658839462036:
{
"protected": "eyJhbGciOiAiUlMyNTYiLCAia2lkIjogImh0dHBzOi8vYWNtZS12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL2FjY3QvMzA2NDM4NjkwNiIsICJub25jZSI6ICJOZUtudDhUR0NWb1gxNVhxeEhjSDhFd0xZN21VMGZoYzVpdS1XOEU5NWRXUEk5X1RHSVEiLCAidXJsIjogImh0dHBzOi8vYWNtZS12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL2F1dGh6LzMwNjQzODY5MDYvNjU4ODM5NDYyMDM2In0",
"signature": "N6i0RDdH_G5bVERBFzfAVluCZhhP2xSxxI7hxgoPJMPZM70W3Qh9XWQE_nhQ4MKRuTmMeWT8tCk6bd-EJaengkWN1gNIVvO52HigUYqZaIMF0GD0nbk4IBchm-fSbmP6-iypz0l-NiOwVQlQ-bzcZpjzaEXaJJ0UN42bJNKwuri_JGsg1plUK0tryOkH5prUI1Uie21HHJI41SGT02mUBsPRGR6Ef3xAVPjNYJUt73iG780B6fQgYxz81h_P2tFI5-BKzLq-Z6k2S_dDbE4qvRmB6yGEyhMa32myHj_uvGTviXnkUeCN145_rVW-uwTyMc3xf78O6bSK-eNPW-A2nA",
"payload": ""
}
2026-02-15 01:51:52,540:DEBUG:urllib3.connectionpool:https://acme-v02.api.letsencrypt.org:443 "POST /acme/authz/3064386906/658839462036 HTTP/1.1" 200 826
2026-02-15 01:51:52,541:DEBUG:acme.client:Received response:
HTTP 200
Server: nginx
Date: Sun, 15 Feb 2026 01:51:52 GMT
Content-Type: application/json
Content-Length: 826
Connection: keep-alive
Boulder-Requester: 3064386906
Cache-Control: public, max-age=0, no-cache
Link: <https://acme-v02.api.letsencrypt.org/directory>;rel="index"
Replay-Nonce: 4AH-2vvB1NFpJwJJf_Ae4W9KuOSW8LOksIsULxEYip-Juqi8PIQ
X-Frame-Options: DENY
Strict-Transport-Security: max-age=604800
{
"identifier": {
"type": "dns",
"value": "git.hanmocnn.co.kr"
},
"status": "pending",
"expires": "2026-02-22T01:51:50Z",
"challenges": [
{
"type": "http-01",
"url": "https://acme-v02.api.letsencrypt.org/acme/chall/3064386906/658839462036/WBcYRQ",
"status": "pending",
"token": "lYADYtOgtUUXj8WVH2qa0AW6RT8-qr577RV-yS7nYY0"
},
{
"type": "dns-01",
"url": "https://acme-v02.api.letsencrypt.org/acme/chall/3064386906/658839462036/muacBg",
"status": "pending",
"token": "lYADYtOgtUUXj8WVH2qa0AW6RT8-qr577RV-yS7nYY0"
},
{
"type": "tls-alpn-01",
"url": "https://acme-v02.api.letsencrypt.org/acme/chall/3064386906/658839462036/wUR-nQ",
"status": "pending",
"token": "lYADYtOgtUUXj8WVH2qa0AW6RT8-qr577RV-yS7nYY0"
}
]
}
2026-02-15 01:51:52,541:DEBUG:acme.client:Storing nonce: 4AH-2vvB1NFpJwJJf_Ae4W9KuOSW8LOksIsULxEYip-Juqi8PIQ
2026-02-15 01:51:52,542:DEBUG:acme.challenges:tls-alpn-01 was not recognized, full message: {'type': 'tls-alpn-01', 'url': 'https://acme-v02.api.letsencrypt.org/acme/chall/3064386906/658839462036/wUR-nQ', 'status': 'pending', 'token': 'lYADYtOgtUUXj8WVH2qa0AW6RT8-qr577RV-yS7nYY0'}
2026-02-15 01:51:55,542:DEBUG:acme.client:JWS payload:
b''
2026-02-15 01:51:55,547:DEBUG:acme.client:Sending POST request to https://acme-v02.api.letsencrypt.org/acme/authz/3064386906/658839462036:
{
"protected": "eyJhbGciOiAiUlMyNTYiLCAia2lkIjogImh0dHBzOi8vYWNtZS12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL2FjY3QvMzA2NDM4NjkwNiIsICJub25jZSI6ICI0QUgtMnZ2QjFORnBKd0pKZl9BZTRXOUt1T1NXOExPa3NJc1VMeEVZaXAtSnVxaThQSVEiLCAidXJsIjogImh0dHBzOi8vYWNtZS12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL2F1dGh6LzMwNjQzODY5MDYvNjU4ODM5NDYyMDM2In0",
"signature": "aeilg5d0s3qXqzNgy5o4cI0bUyNxIYqVvjXF8tvdBmsE1iUpYFYWDzXl7oEmAxua5q8E2U6JkBHdgPJ_vsZd3z6B_557GAG1AVnOQacxvVpHLkvw-m8BVVYkonCM19Fb0NbYRJHfhNGXn_EnoiXmuOfkcdBmjk-7vj3lT2tPcjQTNBdJu7i6QZHdP5ucPjJYSbRzZbd_LLI385LPvFmgAZBlCL_0dYBUNrP2uqNF45WNaceJUqIjYyUb5tRGF4xjXqcQD2rg2EndgVKCEHRF2fTheOjD-2jeoADDgf0E6OC8eVc704K_vASf6nsVQPnof9U3A8EjijoEH1a6kpsxEQ",
"payload": ""
}
2026-02-15 01:51:55,717:DEBUG:urllib3.connectionpool:https://acme-v02.api.letsencrypt.org:443 "POST /acme/authz/3064386906/658839462036 HTTP/1.1" 200 826
2026-02-15 01:51:55,718:DEBUG:acme.client:Received response:
HTTP 200
Server: nginx
Date: Sun, 15 Feb 2026 01:51:55 GMT
Content-Type: application/json
Content-Length: 826
Connection: keep-alive
Boulder-Requester: 3064386906
Cache-Control: public, max-age=0, no-cache
Link: <https://acme-v02.api.letsencrypt.org/directory>;rel="index"
Replay-Nonce: 4AH-2vvB61k-bHUD2nLTVwKznjz8siFeraoWuDQ8EfVBNIm65n0
X-Frame-Options: DENY
Strict-Transport-Security: max-age=604800
{
"identifier": {
"type": "dns",
"value": "git.hanmocnn.co.kr"
},
"status": "pending",
"expires": "2026-02-22T01:51:50Z",
"challenges": [
{
"type": "tls-alpn-01",
"url": "https://acme-v02.api.letsencrypt.org/acme/chall/3064386906/658839462036/wUR-nQ",
"status": "pending",
"token": "lYADYtOgtUUXj8WVH2qa0AW6RT8-qr577RV-yS7nYY0"
},
{
"type": "dns-01",
"url": "https://acme-v02.api.letsencrypt.org/acme/chall/3064386906/658839462036/muacBg",
"status": "pending",
"token": "lYADYtOgtUUXj8WVH2qa0AW6RT8-qr577RV-yS7nYY0"
},
{
"type": "http-01",
"url": "https://acme-v02.api.letsencrypt.org/acme/chall/3064386906/658839462036/WBcYRQ",
"status": "pending",
"token": "lYADYtOgtUUXj8WVH2qa0AW6RT8-qr577RV-yS7nYY0"
}
]
}
2026-02-15 01:51:55,718:DEBUG:acme.client:Storing nonce: 4AH-2vvB61k-bHUD2nLTVwKznjz8siFeraoWuDQ8EfVBNIm65n0
2026-02-15 01:51:55,719:DEBUG:acme.challenges:tls-alpn-01 was not recognized, full message: {'type': 'tls-alpn-01', 'url': 'https://acme-v02.api.letsencrypt.org/acme/chall/3064386906/658839462036/wUR-nQ', 'status': 'pending', 'token': 'lYADYtOgtUUXj8WVH2qa0AW6RT8-qr577RV-yS7nYY0'}
2026-02-15 01:51:58,719:DEBUG:acme.client:JWS payload:
b''
2026-02-15 01:51:58,724:DEBUG:acme.client:Sending POST request to https://acme-v02.api.letsencrypt.org/acme/authz/3064386906/658839462036:
{
"protected": "eyJhbGciOiAiUlMyNTYiLCAia2lkIjogImh0dHBzOi8vYWNtZS12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL2FjY3QvMzA2NDM4NjkwNiIsICJub25jZSI6ICI0QUgtMnZ2QjYxay1iSFVEMm5MVFZ3S3puano4c2lGZXJhb1d1RFE4RWZWQk5JbTY1bjAiLCAidXJsIjogImh0dHBzOi8vYWNtZS12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL2F1dGh6LzMwNjQzODY5MDYvNjU4ODM5NDYyMDM2In0",
"signature": "Bf3p3q3x5ird5lIrcYEqZFpBjd7vZp3yT_VhYkDIOkm40183LdxR5LDHsSfrKxFeqKdRBQuPfUuCpRBrelnYNi9o0Cd0QAIPiX1Hi42d66kJxgRyXfK7RdoJCU-Uz-mxqdjjyfNccdvfMLw5q1G3h0_OIF9uG9aqgvzfiHlqRjkgWCKssljiK8inROYYBdnwagXLY8pczDgBBTkFixYe5jWERqNy707OWr8221oirH7pLJOKPKHhX3auh83Ag7sYCJjdfRQQy23T4aO361QbGoc-iDQaJh0OdffiwWcK9eXDZcsnffnAmw-fOcPfkAGQ7dFFp_ID4nRtUVGseutg7g",
"payload": ""
}
2026-02-15 01:51:58,935:DEBUG:urllib3.connectionpool:https://acme-v02.api.letsencrypt.org:443 "POST /acme/authz/3064386906/658839462036 HTTP/1.1" 200 777
2026-02-15 01:51:58,936:DEBUG:acme.client:Received response:
HTTP 200
Server: nginx
Date: Sun, 15 Feb 2026 01:51:58 GMT
Content-Type: application/json
Content-Length: 777
Connection: keep-alive
Boulder-Requester: 3064386906
Cache-Control: public, max-age=0, no-cache
Link: <https://acme-v02.api.letsencrypt.org/directory>;rel="index"
Replay-Nonce: NeKnt8TGIbNKaCBMKC63TiK-p6jRjvD008EcbuzJwDcYDsYMei8
X-Frame-Options: DENY
Strict-Transport-Security: max-age=604800
{
"identifier": {
"type": "dns",
"value": "git.hanmocnn.co.kr"
},
"status": "valid",
"expires": "2026-03-17T01:51:57Z",
"challenges": [
{
"type": "http-01",
"url": "https://acme-v02.api.letsencrypt.org/acme/chall/3064386906/658839462036/WBcYRQ",
"status": "valid",
"validated": "2026-02-15T01:51:51Z",
"token": "lYADYtOgtUUXj8WVH2qa0AW6RT8-qr577RV-yS7nYY0",
"validationRecord": [
{
"url": "http://git.hanmocnn.co.kr/.well-known/acme-challenge/lYADYtOgtUUXj8WVH2qa0AW6RT8-qr577RV-yS7nYY0",
"hostname": "git.hanmocnn.co.kr",
"port": "80",
"addressesResolved": [
"222.117.41.51"
],
"addressUsed": "222.117.41.51"
}
]
}
]
}
2026-02-15 01:51:58,937:DEBUG:acme.client:Storing nonce: NeKnt8TGIbNKaCBMKC63TiK-p6jRjvD008EcbuzJwDcYDsYMei8
2026-02-15 01:51:58,937:DEBUG:certbot._internal.error_handler:Calling registered functions
2026-02-15 01:51:58,937:INFO:certbot._internal.auth_handler:Cleaning up challenges
2026-02-15 01:51:58,938:DEBUG:certbot._internal.plugins.webroot:Removing /data/letsencrypt-acme-challenge/.well-known/acme-challenge/lYADYtOgtUUXj8WVH2qa0AW6RT8-qr577RV-yS7nYY0
2026-02-15 01:51:58,938:DEBUG:certbot._internal.plugins.webroot:All challenges cleaned up
2026-02-15 01:51:58,938:DEBUG:certbot._internal.client:CSR: CSR(file=None, data=b'-----BEGIN CERTIFICATE REQUEST-----\nMIIBKDCBrwIBADAAMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE3ZB1deeblgoVMoPU\nK2iFU5FbwLKFHWK/JtLfmdLhuzQRDtQMR3pV5A4W8NWINvFWEcWdRH2Rqv0uIwWe\nsQZYRHcCcCGIZvYcF+dmwsZ1jLge9RSo/+kLdhLXyZ754afZoDAwLgYJKoZIhvcN\nAQkOMSEwHzAdBgNVHREEFjAUghJnaXQuaGFubW9jbm4uY28ua3IwCgYIKoZIzj0E\nAwIDaAAwZQIwaW490qutHUvSKLq5U2DIOTyCJERSKZFL13USO3MYRJbSBz11vK7r\nAgJ7e4qKXzqWAjEA8ONFmEjWmt2839uiJ6vbkLL7Jq5n2Uh8a9LdcNA5cybkohXZ\n0tSqH7xYtqphQHJK\n-----END CERTIFICATE REQUEST-----\n', form='pem')
2026-02-15 01:51:58,939:DEBUG:certbot._internal.client:Will poll for certificate issuance until 2026-02-15 01:53:28.939521
2026-02-15 01:51:58,940:DEBUG:acme.client:JWS payload:
b'{\n "csr": "MIIBKDCBrwIBADAAMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE3ZB1deeblgoVMoPUK2iFU5FbwLKFHWK_JtLfmdLhuzQRDtQMR3pV5A4W8NWINvFWEcWdRH2Rqv0uIwWesQZYRHcCcCGIZvYcF-dmwsZ1jLge9RSo_-kLdhLXyZ754afZoDAwLgYJKoZIhvcNAQkOMSEwHzAdBgNVHREEFjAUghJnaXQuaGFubW9jbm4uY28ua3IwCgYIKoZIzj0EAwIDaAAwZQIwaW490qutHUvSKLq5U2DIOTyCJERSKZFL13USO3MYRJbSBz11vK7rAgJ7e4qKXzqWAjEA8ONFmEjWmt2839uiJ6vbkLL7Jq5n2Uh8a9LdcNA5cybkohXZ0tSqH7xYtqphQHJK"\n}'
2026-02-15 01:51:58,944:DEBUG:acme.client:Sending POST request to https://acme-v02.api.letsencrypt.org/acme/finalize/3064386906/480408820986:
{
"protected": "eyJhbGciOiAiUlMyNTYiLCAia2lkIjogImh0dHBzOi8vYWNtZS12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL2FjY3QvMzA2NDM4NjkwNiIsICJub25jZSI6ICJOZUtudDhUR0liTkthQ0JNS0M2M1RpSy1wNmpSanZEMDA4RWNidXpKd0RjWURzWU1laTgiLCAidXJsIjogImh0dHBzOi8vYWNtZS12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL2ZpbmFsaXplLzMwNjQzODY5MDYvNDgwNDA4ODIwOTg2In0",
"signature": "Ukf2rgjKwRIhy_p0rhlecNFkjSaEyuOoxgZ3lO2zYspObZ2xUft9pdZkpYYeBBPZijLo0z_BjPzUZxKi7da69adu2bVbHRmMEVtlilSY346fAU7oo4NUl8Vs7db33H4FeM623R-EGnTozPzeVAu6nzAwlzg5q7LUSjXy_fEP1f7u1mDDI8o81qnEhmje-UiLRAVsYg88gNf_NIo3Bhfb5tyPcJV12OXHxnGo-4Yisd3IH-x5k0aVzKp6CZ6wgW70Lgtx6cW222yUrk-3MBSFBO3n5WGn2e1dKX0tBqiYcuEoqrSH8qf50bIL41g8ty5SjzONuyIUo_KUaLTIRUZBZw",
"payload": "ewogICJjc3IiOiAiTUlJQktEQ0Jyd0lCQURBQU1IWXdFQVlIS29aSXpqMENBUVlGSzRFRUFDSURZZ0FFM1pCMWRlZWJsZ29WTW9QVUsyaUZVNUZid0xLRkhXS19KdExmbWRMaHV6UVJEdFFNUjNwVjVBNFc4TldJTnZGV0VjV2RSSDJScXYwdUl3V2VzUVpZUkhjQ2NDR0ladlljRi1kbXdzWjFqTGdlOVJTb18ta0xkaExYeVo3NTRhZlpvREF3TGdZSktvWklodmNOQVFrT01TRXdIekFkQmdOVkhSRUVGakFVZ2hKbmFYUXVhR0Z1Ylc5amJtNHVZMjh1YTNJd0NnWUlLb1pJemowRUF3SURhQUF3WlFJd2FXNDkwcXV0SFV2U0tMcTVVMkRJT1R5Q0pFUlNLWkZMMTNVU08zTVlSSmJTQnoxMXZLN3JBZ0o3ZTRxS1h6cVdBakVBOE9ORm1FaldtdDI4Mzl1aUo2dmJrTEw3SnE1bjJVaDhhOUxkY05BNWN5YmtvaFhaMHRTcUg3eFl0cXBoUUhKSyIKfQ"
}
2026-02-15 01:52:01,344:DEBUG:urllib3.connectionpool:https://acme-v02.api.letsencrypt.org:443 "POST /acme/finalize/3064386906/480408820986 HTTP/1.1" 200 454
2026-02-15 01:52:01,344:DEBUG:acme.client:Received response:
HTTP 200
Server: nginx
Date: Sun, 15 Feb 2026 01:52:01 GMT
Content-Type: application/json
Content-Length: 454
Connection: keep-alive
Boulder-Requester: 3064386906
Cache-Control: public, max-age=0, no-cache
Link: <https://acme-v02.api.letsencrypt.org/directory>;rel="index"
Location: https://acme-v02.api.letsencrypt.org/acme/order/3064386906/480408820986
Replay-Nonce: 4AH-2vvBzRXHMbksCZ9MitMQBxuAI6PDVAP-3e54n20kYQvuOz0
X-Frame-Options: DENY
Strict-Transport-Security: max-age=604800
{
"status": "valid",
"expires": "2026-02-22T01:51:50Z",
"identifiers": [
{
"type": "dns",
"value": "git.hanmocnn.co.kr"
}
],
"authorizations": [
"https://acme-v02.api.letsencrypt.org/acme/authz/3064386906/658839462036"
],
"finalize": "https://acme-v02.api.letsencrypt.org/acme/finalize/3064386906/480408820986",
"certificate": "https://acme-v02.api.letsencrypt.org/acme/cert/054e36e9f42aabaf70387418b62af9b2ae9a"
}
2026-02-15 01:52:01,345:DEBUG:acme.client:Storing nonce: 4AH-2vvBzRXHMbksCZ9MitMQBxuAI6PDVAP-3e54n20kYQvuOz0
2026-02-15 01:52:02,345:DEBUG:acme.client:JWS payload:
b''
2026-02-15 01:52:02,350:DEBUG:acme.client:Sending POST request to https://acme-v02.api.letsencrypt.org/acme/order/3064386906/480408820986:
{
"protected": "eyJhbGciOiAiUlMyNTYiLCAia2lkIjogImh0dHBzOi8vYWNtZS12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL2FjY3QvMzA2NDM4NjkwNiIsICJub25jZSI6ICI0QUgtMnZ2QnpSWEhNYmtzQ1o5TWl0TVFCeHVBSTZQRFZBUC0zZTU0bjIwa1lRdnVPejAiLCAidXJsIjogImh0dHBzOi8vYWNtZS12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL29yZGVyLzMwNjQzODY5MDYvNDgwNDA4ODIwOTg2In0",
"signature": "jIOWDfbpSclKLuMx3QNoqmW8J4i1EJ1IYnOzI3eV2bSQkEFKG5OE5NOnL72UA1PpQZnlvc95NYjxoW2tjBlXQKKHAqoAmiq0ivoAQhb14KcV8TZKs7QqG6_broa6iXrBUHpEzK4njjtDoDYwczCt-lQgLNczaflbLBsAX-BkoGSQRYyg4NxblkbT-gGYqd5r5WKCDahRQS4jXSF0pyY8Nym6dipk5JVWoRqqRGWzMpcvLtArLqdJTT2aHdWLP4FfO79_eASLhRHb-65Hbzqvel0OAXDKf1oFlIQqOpyxyvXU4EeSkVTfo15TIPn8gwwWGuPrJicVtj-OX0uFIJywRw",
"payload": ""
}
2026-02-15 01:52:02,549:DEBUG:urllib3.connectionpool:https://acme-v02.api.letsencrypt.org:443 "POST /acme/order/3064386906/480408820986 HTTP/1.1" 200 454
2026-02-15 01:52:02,550:DEBUG:acme.client:Received response:
HTTP 200
Server: nginx
Date: Sun, 15 Feb 2026 01:52:02 GMT
Content-Type: application/json
Content-Length: 454
Connection: keep-alive
Cache-Control: public, max-age=0, no-cache
Link: <https://acme-v02.api.letsencrypt.org/directory>;rel="index"
Location: https://acme-v02.api.letsencrypt.org/acme/order/3064386906/480408820986
Replay-Nonce: NeKnt8TGkqXwrDlo3sRFrYaf3v4XwpOPFLYdKHKI5vRZk1dZOn0
X-Frame-Options: DENY
Strict-Transport-Security: max-age=604800
{
"status": "valid",
"expires": "2026-02-22T01:51:50Z",
"identifiers": [
{
"type": "dns",
"value": "git.hanmocnn.co.kr"
}
],
"authorizations": [
"https://acme-v02.api.letsencrypt.org/acme/authz/3064386906/658839462036"
],
"finalize": "https://acme-v02.api.letsencrypt.org/acme/finalize/3064386906/480408820986",
"certificate": "https://acme-v02.api.letsencrypt.org/acme/cert/054e36e9f42aabaf70387418b62af9b2ae9a"
}
2026-02-15 01:52:02,551:DEBUG:acme.client:Storing nonce: NeKnt8TGkqXwrDlo3sRFrYaf3v4XwpOPFLYdKHKI5vRZk1dZOn0
2026-02-15 01:52:02,551:DEBUG:acme.client:JWS payload:
b''
2026-02-15 01:52:02,555:DEBUG:acme.client:Sending POST request to https://acme-v02.api.letsencrypt.org/acme/cert/054e36e9f42aabaf70387418b62af9b2ae9a:
{
"protected": "eyJhbGciOiAiUlMyNTYiLCAia2lkIjogImh0dHBzOi8vYWNtZS12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL2FjY3QvMzA2NDM4NjkwNiIsICJub25jZSI6ICJOZUtudDhUR2txWHdyRGxvM3NSRnJZYWYzdjRYd3BPUEZMWWRLSEtJNXZSWmsxZFpPbjAiLCAidXJsIjogImh0dHBzOi8vYWNtZS12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL2NlcnQvMDU0ZTM2ZTlmNDJhYWJhZjcwMzg3NDE4YjYyYWY5YjJhZTlhIn0",
"signature": "nz8-mSztJHODU29TN2pD_L46rJK8QVsmtb1_QbSXQRyk754h8k1Q8XSnP8tzOcKtA395gCZWX3hP1oeBxnjUOFM8tT7jBT41GP5BjL0Qvy5xhReAiIX4e6JKtAcV8p4ooW8vBLwhPao8NkebadKwRSN5XzprOAvEQnzUN7mMrTykTRPSl81nkAVg0I5iD8y8PqS16ZrlpJdaeuECh_YnZVAiA64Q1bUY1vOCfY6z655MlhdxGOhE1EziZRjFrWR8zAXsSO5r_5lMd04JUujOK7bR_PVNdgWHirPx-KwaaOIzghYgbG86saj_I7oK-54fxmZCoc-jX2rQ5zeZSduHUw",
"payload": ""
}
2026-02-15 01:52:02,716:DEBUG:urllib3.connectionpool:https://acme-v02.api.letsencrypt.org:443 "POST /acme/cert/054e36e9f42aabaf70387418b62af9b2ae9a HTTP/1.1" 200 2893
2026-02-15 01:52:02,717:DEBUG:acme.client:Received response:
HTTP 200
Server: nginx
Date: Sun, 15 Feb 2026 01:52:02 GMT
Content-Type: application/pem-certificate-chain
Content-Length: 2893
Connection: keep-alive
Cache-Control: public, max-age=0, no-cache
Link: <https://acme-v02.api.letsencrypt.org/directory>;rel="index", <https://acme-v02.api.letsencrypt.org/acme/cert/054e36e9f42aabaf70387418b62af9b2ae9a/1>;rel="alternate"
Replay-Nonce: NeKnt8TGUmr5hRmt5v4kyV_zjaCxjD5GACGBv7voiKKjqOzNOfw
X-Frame-Options: DENY
Strict-Transport-Security: max-age=604800
-----BEGIN CERTIFICATE-----
MIIDpTCCAyugAwIBAgISBU426fQqq69wOHQYtir5sq6aMAoGCCqGSM49BAMDMDIx
CzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MQswCQYDVQQDEwJF
NzAeFw0yNjAyMTUwMDUzMjlaFw0yNjA1MTYwMDUzMjhaMB0xGzAZBgNVBAMTEmdp
dC5oYW5tb2Nubi5jby5rcjB2MBAGByqGSM49AgEGBSuBBAAiA2IABN2QdXXnm5YK
FTKD1CtohVORW8CyhR1ivybS35nS4bs0EQ7UDEd6VeQOFvDViDbxVhHFnUR9kar9
LiMFnrEGWER3AnAhiGb2HBfnZsLGdYy4HvUUqP/pC3YS18me+eGn2aOCAhcwggIT
MA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDATAMBgNVHRMBAf8E
AjAAMB0GA1UdDgQWBBRaL2bTWA0MjQBBBgZygk0nxCro8jAfBgNVHSMEGDAWgBSu
SJ7chx1EoG/aouVgdAR4wpwAgDAyBggrBgEFBQcBAQQmMCQwIgYIKwYBBQUHMAKG
Fmh0dHA6Ly9lNy5pLmxlbmNyLm9yZy8wHQYDVR0RBBYwFIISZ2l0Lmhhbm1vY25u
LmNvLmtyMBMGA1UdIAQMMAowCAYGZ4EMAQIBMC0GA1UdHwQmMCQwIqAgoB6GHGh0
dHA6Ly9lNy5jLmxlbmNyLm9yZy8yNy5jcmwwggEFBgorBgEEAdZ5AgQCBIH2BIHz
APEAdwBkEcRspBLsp4kcogIuALyrTygH1B41J6vq/tUDyX3N8AAAAZxe/1qdAAAE
AwBIMEYCIQDwNplXasmzKSLIez7kR/jYwBmY+92fo0Oe9xTRW/LYwQIhALQ+kEkk
pUvSpkEcvMoHJVABdfGiHZZbWkgt7CSOPBySAHYAFoMtq/CpJQ8P8DqlRf/Iv8gj
0IdL9gQpJ/jnHzMT9foAAAGcXv9irwAABAMARzBFAiBKJHYXSD4GUqumXq5TLt3A
HS9ZM08kl/NzaSz0eNoTAgIhAMldLvgzn+UR9VyLT3n2KT6n82wIo035yLwnogk5
KY/lMAoGCCqGSM49BAMDA2gAMGUCMQDBWHS4t+nwA0lkvbQcsUqQq3uabapszHs1
ZVOVAO4J+Vfx3wgTRO8Dx8F33rBWndYCMGC0CN463ukm+NgQt/ByckZ2/rxaUm9S
AhNC3oI5CvlMIrXyWD67+cCSiTNiQIuD7A==
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIEVzCCAj+gAwIBAgIRAKp18eYrjwoiCWbTi7/UuqEwDQYJKoZIhvcNAQELBQAw
TzELMAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2Vh
cmNoIEdyb3VwMRUwEwYDVQQDEwxJU1JHIFJvb3QgWDEwHhcNMjQwMzEzMDAwMDAw
WhcNMjcwMzEyMjM1OTU5WjAyMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNTGV0J3Mg
RW5jcnlwdDELMAkGA1UEAxMCRTcwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAARB6AST
CFh/vjcwDMCgQer+VtqEkz7JANurZxLP+U9TCeioL6sp5Z8VRvRbYk4P1INBmbef
QHJFHCxcSjKmwtvGBWpl/9ra8HW0QDsUaJW2qOJqceJ0ZVFT3hbUHifBM/2jgfgw
gfUwDgYDVR0PAQH/BAQDAgGGMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcD
ATASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBSuSJ7chx1EoG/aouVgdAR4
wpwAgDAfBgNVHSMEGDAWgBR5tFnme7bl5AFzgAiIyBpY9umbbjAyBggrBgEFBQcB
AQQmMCQwIgYIKwYBBQUHMAKGFmh0dHA6Ly94MS5pLmxlbmNyLm9yZy8wEwYDVR0g
BAwwCjAIBgZngQwBAgEwJwYDVR0fBCAwHjAcoBqgGIYWaHR0cDovL3gxLmMubGVu
Y3Iub3JnLzANBgkqhkiG9w0BAQsFAAOCAgEAjx66fDdLk5ywFn3CzA1w1qfylHUD
aEf0QZpXcJseddJGSfbUUOvbNR9N/QQ16K1lXl4VFyhmGXDT5Kdfcr0RvIIVrNxF
h4lqHtRRCP6RBRstqbZ2zURgqakn/Xip0iaQL0IdfHBZr396FgknniRYFckKORPG
yM3QKnd66gtMst8I5nkRQlAg/Jb+Gc3egIvuGKWboE1G89NTsN9LTDD3PLj0dUMr
OIuqVjLB8pEC6yk9enrlrqjXQgkLEYhXzq7dLafv5Vkig6Gl0nuuqjqfp0Q1bi1o
yVNAlXe6aUXw92CcghC9bNsKEO1+M52YY5+ofIXlS/SEQbvVYYBLZ5yeiglV6t3S
M6H+vTG0aP9YHzLn/KVOHzGQfXDP7qM5tkf+7diZe7o2fw6O7IvN6fsQXEQQj8TJ
UXJxv2/uJhcuy/tSDgXwHM8Uk34WNbRT7zGTGkQRX0gsbjAea/jYAoWv0ZvQRwpq
Pe79D/i7Cep8qWnA+7AE/3B3S/3dEEYmc0lpe1366A/6GEgk3ktr9PEoQrLChs6I
tu3wnNLB2euC8IKGLQFpGtOO/2/hiAKjyajaBP25w1jF0Wl8Bbqne3uZ2q1GyPFJ
YRmT7/OXpmOH/FVLtwS+8ng1cAmpCujPwteJZNcDG0sF2n/sc0+SQf49fdyUK0ty
+VUwFj9tmWxyR/M=
-----END CERTIFICATE-----
2026-02-15 01:52:02,717:DEBUG:acme.client:Storing nonce: NeKnt8TGUmr5hRmt5v4kyV_zjaCxjD5GACGBv7voiKKjqOzNOfw
2026-02-15 01:52:02,717:DEBUG:acme.client:JWS payload:
b''
2026-02-15 01:52:02,722:DEBUG:acme.client:Sending POST request to https://acme-v02.api.letsencrypt.org/acme/cert/054e36e9f42aabaf70387418b62af9b2ae9a/1:
{
"protected": "eyJhbGciOiAiUlMyNTYiLCAia2lkIjogImh0dHBzOi8vYWNtZS12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL2FjY3QvMzA2NDM4NjkwNiIsICJub25jZSI6ICJOZUtudDhUR1VtcjVoUm10NXY0a3lWX3pqYUN4akQ1R0FDR0J2N3ZvaUtLanFPek5PZnciLCAidXJsIjogImh0dHBzOi8vYWNtZS12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL2NlcnQvMDU0ZTM2ZTlmNDJhYWJhZjcwMzg3NDE4YjYyYWY5YjJhZTlhLzEifQ",
"signature": "aTci7u9FnehWBU47wxbqDk_wQMGYWTZ17fy0whShTkXp1gcAO8M_DnkNnOzHUZuuC1rSqMv-y3qHuxBBjJFkwx-Ho8YLu5mhyFCAQf46VOSeoTwz4DabP6Sr5OrJ-4PhtuPFdqr9ie1cZEGuzkYUSiCsjX-hdRJtw5cci1BR36DMELHIXKXGAml65MDbIcKHyxcvbtSxkW768HLeStjkzt60g3yay8TEj_WSHCYSAvHWrUBWFov_jefguOq31sKGu-fS5B-qiMbxBYo6E3ADP7qRVtvQ2QJXRAGBMXgr8UQTRmSK0buO7limyayfbOG-7CfrbUH9mw60pRfK4xyy0Q",
"payload": ""
}
2026-02-15 01:52:02,883:DEBUG:urllib3.connectionpool:https://acme-v02.api.letsencrypt.org:443 "POST /acme/cert/054e36e9f42aabaf70387418b62af9b2ae9a/1 HTTP/1.1" 200 2328
2026-02-15 01:52:02,884:DEBUG:acme.client:Received response:
HTTP 200
Server: nginx
Date: Sun, 15 Feb 2026 01:52:02 GMT
Content-Type: application/pem-certificate-chain
Content-Length: 2328
Connection: keep-alive
Cache-Control: public, max-age=0, no-cache
Link: <https://acme-v02.api.letsencrypt.org/directory>;rel="index", <https://acme-v02.api.letsencrypt.org/acme/cert/054e36e9f42aabaf70387418b62af9b2ae9a/0>;rel="alternate"
Replay-Nonce: NeKnt8TGzFhXu6tguKanBavnkUUb9vcvolh2BEjWZPFJHUOKePA
X-Frame-Options: DENY
Strict-Transport-Security: max-age=604800
-----BEGIN CERTIFICATE-----
MIIDpTCCAyugAwIBAgISBU426fQqq69wOHQYtir5sq6aMAoGCCqGSM49BAMDMDIx
CzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MQswCQYDVQQDEwJF
NzAeFw0yNjAyMTUwMDUzMjlaFw0yNjA1MTYwMDUzMjhaMB0xGzAZBgNVBAMTEmdp
dC5oYW5tb2Nubi5jby5rcjB2MBAGByqGSM49AgEGBSuBBAAiA2IABN2QdXXnm5YK
FTKD1CtohVORW8CyhR1ivybS35nS4bs0EQ7UDEd6VeQOFvDViDbxVhHFnUR9kar9
LiMFnrEGWER3AnAhiGb2HBfnZsLGdYy4HvUUqP/pC3YS18me+eGn2aOCAhcwggIT
MA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDATAMBgNVHRMBAf8E
AjAAMB0GA1UdDgQWBBRaL2bTWA0MjQBBBgZygk0nxCro8jAfBgNVHSMEGDAWgBSu
SJ7chx1EoG/aouVgdAR4wpwAgDAyBggrBgEFBQcBAQQmMCQwIgYIKwYBBQUHMAKG
Fmh0dHA6Ly9lNy5pLmxlbmNyLm9yZy8wHQYDVR0RBBYwFIISZ2l0Lmhhbm1vY25u
LmNvLmtyMBMGA1UdIAQMMAowCAYGZ4EMAQIBMC0GA1UdHwQmMCQwIqAgoB6GHGh0
dHA6Ly9lNy5jLmxlbmNyLm9yZy8yNy5jcmwwggEFBgorBgEEAdZ5AgQCBIH2BIHz
APEAdwBkEcRspBLsp4kcogIuALyrTygH1B41J6vq/tUDyX3N8AAAAZxe/1qdAAAE
AwBIMEYCIQDwNplXasmzKSLIez7kR/jYwBmY+92fo0Oe9xTRW/LYwQIhALQ+kEkk
pUvSpkEcvMoHJVABdfGiHZZbWkgt7CSOPBySAHYAFoMtq/CpJQ8P8DqlRf/Iv8gj
0IdL9gQpJ/jnHzMT9foAAAGcXv9irwAABAMARzBFAiBKJHYXSD4GUqumXq5TLt3A
HS9ZM08kl/NzaSz0eNoTAgIhAMldLvgzn+UR9VyLT3n2KT6n82wIo035yLwnogk5
KY/lMAoGCCqGSM49BAMDA2gAMGUCMQDBWHS4t+nwA0lkvbQcsUqQq3uabapszHs1
ZVOVAO4J+Vfx3wgTRO8Dx8F33rBWndYCMGC0CN463ukm+NgQt/ByckZ2/rxaUm9S
AhNC3oI5CvlMIrXyWD67+cCSiTNiQIuD7A==
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIICtzCCAjygAwIBAgIRAMWKhaLGI0XgqMRSU4efWTowCgYIKoZIzj0EAwMwTzEL
MAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2VhcmNo
IEdyb3VwMRUwEwYDVQQDEwxJU1JHIFJvb3QgWDIwHhcNMjQwMzEzMDAwMDAwWhcN
MjcwMzEyMjM1OTU5WjAyMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNTGV0J3MgRW5j
cnlwdDELMAkGA1UEAxMCRTcwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAARB6ASTCFh/
vjcwDMCgQer+VtqEkz7JANurZxLP+U9TCeioL6sp5Z8VRvRbYk4P1INBmbefQHJF
HCxcSjKmwtvGBWpl/9ra8HW0QDsUaJW2qOJqceJ0ZVFT3hbUHifBM/2jgfgwgfUw
DgYDVR0PAQH/BAQDAgGGMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDATAS
BgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBSuSJ7chx1EoG/aouVgdAR4wpwA
gDAfBgNVHSMEGDAWgBR8Qpau3ktIO/qS+J6Mz22LqXI3lTAyBggrBgEFBQcBAQQm
MCQwIgYIKwYBBQUHMAKGFmh0dHA6Ly94Mi5pLmxlbmNyLm9yZy8wEwYDVR0gBAww
CjAIBgZngQwBAgEwJwYDVR0fBCAwHjAcoBqgGIYWaHR0cDovL3gyLmMubGVuY3Iu
b3JnLzAKBggqhkjOPQQDAwNpADBmAjEA/e5N+wjAk945cpaFxGaeMC13fyvdbNzX
lRg9HNdElxi5mXdI4az2CykNU07iFwqEAjEAihPCDkw4b1BvfLg8VNLLuaMpn1Rb
Z1682chR6zNRCseyie4SjyTCdkvsAa+omQSf
-----END CERTIFICATE-----
2026-02-15 01:52:02,884:DEBUG:acme.client:Storing nonce: NeKnt8TGzFhXu6tguKanBavnkUUb9vcvolh2BEjWZPFJHUOKePA
2026-02-15 01:52:02,885:INFO:certbot._internal.client:Non-standard path(s), might not work with crontab installed by your operating system package manager
2026-02-15 01:52:02,900:DEBUG:certbot._internal.storage:Creating directory /etc/letsencrypt/archive/npm-6.
2026-02-15 01:52:02,900:DEBUG:certbot._internal.storage:Creating directory /etc/letsencrypt/live/npm-6.
2026-02-15 01:52:02,900:DEBUG:certbot._internal.storage:Writing certificate to /etc/letsencrypt/live/npm-6/cert.pem.
2026-02-15 01:52:02,900:DEBUG:certbot._internal.storage:Writing private key to /etc/letsencrypt/live/npm-6/privkey.pem.
2026-02-15 01:52:02,900:DEBUG:certbot._internal.storage:Writing chain to /etc/letsencrypt/live/npm-6/chain.pem.
2026-02-15 01:52:02,901:DEBUG:certbot._internal.storage:Writing full chain to /etc/letsencrypt/live/npm-6/fullchain.pem.
2026-02-15 01:52:02,901:DEBUG:certbot._internal.storage:Writing README to /etc/letsencrypt/live/npm-6/README.
2026-02-15 01:52:02,912:DEBUG:certbot.configuration:Var account=ce2ddac5740bb12d4d6591b7fa1728af (set by user).
2026-02-15 01:52:02,912:DEBUG:certbot.configuration:Var key_type=ecdsa (set by user).
2026-02-15 01:52:02,912:DEBUG:certbot.configuration:Var elliptic_curve=secp384r1 (set by user).
2026-02-15 01:52:02,912:DEBUG:certbot.configuration:Var preferred_chain=ISRG Root X1 (set by user).
2026-02-15 01:52:02,912:DEBUG:certbot.configuration:Var pref_challs=['http-01'] (set by user).
2026-02-15 01:52:02,912:DEBUG:certbot.configuration:Var config_dir=/etc/letsencrypt (set by user).
2026-02-15 01:52:02,912:DEBUG:certbot.configuration:Var work_dir=/tmp/letsencrypt-lib (set by user).
2026-02-15 01:52:02,912:DEBUG:certbot.configuration:Var logs_dir=/data/logs (set by user).
2026-02-15 01:52:02,913:DEBUG:certbot._internal.plugins.selection:Requested authenticator webroot and installer None
2026-02-15 01:52:02,913:DEBUG:certbot._internal.plugins.selection:Requested authenticator webroot and installer None
2026-02-15 01:52:02,913:DEBUG:certbot.configuration:Var webroot_path=['/data/letsencrypt-acme-challenge'] (set by user).
2026-02-15 01:52:02,913:DEBUG:certbot.configuration:Var webroot_map={'git.hanmocnn.co.kr': '/data/letsencrypt-acme-challenge'} (set by user).
2026-02-15 01:52:02,915:DEBUG:certbot._internal.display.obj:Notifying user:
Successfully received certificate.
Certificate is saved at: /etc/letsencrypt/live/npm-6/fullchain.pem
Key is saved at: /etc/letsencrypt/live/npm-6/privkey.pem
This certificate expires on 2026-05-16.
These files will be updated when the certificate renews.
2026-02-15 01:52:02,915:DEBUG:certbot._internal.display.obj:Notifying user: NEXT STEPS:
2026-02-15 01:52:02,915:DEBUG:certbot._internal.display.obj:Notifying user: - The certificate will need to be renewed before it expires. Certbot can automatically renew the certificate in the background, but you may need to take steps to enable that functionality. See https://certbot.org/renewal-setup for instructions.
2026-02-15 01:52:02,919:DEBUG:certbot._internal.display.obj:Notifying user: If you like Certbot, please consider supporting our work by:
* Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
* Donating to EFF: https://eff.org/donate-le