Lua-resty-auto-ssl: 만료된 도메인이 ν¬μ°©λ˜μ§€ μ•Šκ³  allow_domain이 κ°±μ‹  μ‹œ μ‹€ν–‰λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

에 λ§Œλ“  2018λ…„ 07μ›” 11일  Β·  7μ½”λ©˜νŠΈ  Β·  좜처: auto-ssl/lua-resty-auto-ssl

μžλ™ν™”λœ μΈμ¦μ„œ 갱신에 λŒ€ν•΄ 두 가지 κ΄€λ ¨ λ¬Έμ œκ°€ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€.

-Auto-ssl은 도메인이 μœ νš¨ν•˜λ‹€κ³  μƒκ°ν•˜μ§€λ§Œ ν›„μ΄μ¦ˆλŠ” 도메인이 λͺ‡ κ°œμ›” 전에 λ§Œλ£Œλ˜μ–΄ μƒν™˜ μƒνƒœλΌκ³  ν‘œμ‹œν•©λ‹ˆλ‹€.
-allow_domain이 μžλ™ 갱신을 μœ„ν•΄ μ‹€ν–‰λ˜μ§€ μ•ŠλŠ” 것 κ°™μŠ΅λ‹ˆλ‹€.

만료된 도메인(μ–΄λ””μ—μ„œλ„ ν™•μΈλ˜μ§€ μ•ŠμŒ)
WHOIS 데이터:
λ ˆμ§€μŠ€νŠΈλ¦¬ 만료 λ‚ μ§œ: 2018-05-22T01:19:25Z
도메인 μƒνƒœ: μƒν™˜ κΈ°κ°„ https://icann.org/epp#redemptionPeriod

2018/07/06 17:58:11 [error] 3233#3233: *42151 [lua] lets_encrypt.lua:41: issue_cert(): auto-ssl: dehydrated failed: env HOOK_SECRET=74b9b9da3dc257b6f00948fc00b9117beab9fb356fb129a22dd6893c18a9cca3 HOOK_SERVER_PORT=8999 /usr/local/openresty/luajit/bin/resty-auto-ssl/dehydrated --cron --accept-terms --no-lock --domain www.expireddomain.com --challenge http-01 --config /etc/resty-auto-ssl/letsencrypt/config --hook /usr/local/openresty/luajit/bin/resty-auto-ssl/letsencrypt_hooks status: 256 out: # INFO: Using main config file /etc/resty-auto-ssl/letsencrypt/config
Processing www.expireddomain.com
+ Checking domain name(s) of existing cert... unchanged.
+ Checking expire date of existing cert...
+ Valid till Aug 6 00:52:58 2018 GMT (Less than 30 days). Renewing!
+ Signing domains...
+ Generating private key...
+ Generating signing request...
+ Requesting authorization for www.expireddomain.com...
+ 1 pending challenge(s)
+ Deploying challenge tokens...
+ Responding to challenge for www.expireddomain.com authorization...
Invalid challenge: DOMAIN=www.expireddomain.com RESPONSE={
"type": "http-01",
"status": "invalid",
"error": {
"type": "urn:acme:error:dns",
"detail": "DNS problem: NXDOMAIN looking up A for www.expireddomain.com",
"status": 400
},
"uri": "https://acme-v01.api.letsencrypt.org/acme/challenge/bP_FGFj0H6027YXEVXwUTr0hgPYU3p4ux70J03YgJcg/5508927882",
"token": "xBzqCypg7iDi6AUTXlmc65C8MtifK14wAQOjh76Z4ok",
"keyAuthorization": "xBzqCypg7iDi6AUTXlmc65C8MtifK14wAQOjh76Z4ok.BmCf6H2DAkLb8K_367ROMmY9nfcTaEk0ovuF_zhtU1M",
"validationRecord": [
{
"url": "http://www.expireddomain.com/.well-known/acme-challenge/xBzqCypg7iDi6AUTXlmc65C8MtifK14wAQOjh76Z4ok",
"hostname": "www.expireddomain.com",
"port": "80"
}
]

Allow_domain은 μžλ™ κ°±μ‹ μ—μ„œ μ‹€ν–‰λ˜μ§€ μ•ŠλŠ” κ²ƒμœΌλ‘œ λ³΄μž…λ‹ˆλ‹€.
-도메인이 λ‹€λ₯Έ μ œκ³΅μ—…μ²΄λ‘œ μ΄μ „λ˜μ–΄ 더 이상 당사 μ„œλ²„λ‘œ ν™•μΈλ˜μ§€ μ•Šμ„ λ•Œ λ°œμƒν•˜λŠ” λ¬Έμ œμž…λ‹ˆλ‹€.
- μžλ™ μΈμ¦μ„œ κ°±μ‹ μ—μ„œ allow_domain을 μ‹€ν–‰ν•œ κ²½μš°μ—λŠ” allow_domain μŠ€ν¬λ¦½νŠΈκ°€ DNS 확인을 ν™•μΈν•˜κΈ° λ•Œλ¬Έμ— 만료된 도메인 λ¬Έμ œλ„ ν•΄κ²°λ©λ‹ˆλ‹€. letsencryptμ—μ„œ λ³΄κ³ ν•œ λŒ€λ‘œ λΆ„λͺ…νžˆ μ‹€νŒ¨ν•©λ‹ˆλ‹€.

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

λ¬Έμ œμ—†μ–΄μš” @edeis53
λ‚˜λŠ” μ΄κ²ƒμœΌλ‘œ ν’€ λ¦¬ν€˜μŠ€νŠΈλ₯Ό ν•˜κ³  만료된 μΈμ¦μ„œ μ‚­μ œ 지원을 λ§Œλ“€λ €κ³  ν–ˆμŠ΅λ‹ˆλ‹€. μ œκ°€ ν•΄κ²°ν•  수 μ—†λŠ”μ§€ ν™•μΈν•˜κ² μŠ΅λ‹ˆλ‹€.

λͺ¨λ“  7 λŒ“κΈ€

λ§Žμ€ 도메인을 κ±°μΉ˜λ©΄μ„œ λ™μΌν•œ λ¬Έμ œκ°€ λ°œμƒν–ˆμœΌλ©°, ν—ˆμš©ν•˜κΈ° 전에 도메인을 ν™•μΈν•˜κΈ° μœ„ν•΄ μ•„λž˜ μ½”λ“œλ₯Ό κ°±μ‹ .lua의 refresh_check_cert ν•¨μˆ˜μ— μΆ”κ°€ν–ˆμŠ΅λ‹ˆλ‹€. λ˜ν•œ 맀번 λ°œμƒν•˜μ§€ μ•Šλ„λ‘ 만료된 도메인도 μ‚­μ œν•©λ‹ˆλ‹€.

-- Verify domain before we issue a renewal request. local allow_domain = auto_ssl_instance:get("allow_domain") if not allow_domain(domain) then ngx.log(ngx.NOTICE, "auto-ssl: domain not allowed - not renewing - ", domain) return end

@brianlund κ°μ‚¬ν•©λ‹ˆλ‹€.

자체 포크λ₯Ό μœ μ§€ κ΄€λ¦¬ν•˜μ§€ μ•Šμ•„λ„ λ˜λ„λ‘ refresh_check_certλ₯Ό ꡬ성할 수 μžˆλ‹€λ©΄ 쒋을 κ²ƒμž…λ‹ˆλ‹€.

λ¬Έμ œμ—†μ–΄μš” @edeis53
λ‚˜λŠ” μ΄κ²ƒμœΌλ‘œ ν’€ λ¦¬ν€˜μŠ€νŠΈλ₯Ό ν•˜κ³  만료된 μΈμ¦μ„œ μ‚­μ œ 지원을 λ§Œλ“€λ €κ³  ν–ˆμŠ΅λ‹ˆλ‹€. μ œκ°€ ν•΄κ²°ν•  수 μ—†λŠ”μ§€ ν™•μΈν•˜κ² μŠ΅λ‹ˆλ‹€.

@brianlund

κ°±μ‹  μ‹œ DNS 였λ₯˜μ—μ„œ 도메인을 μ œκ±°ν•  수 μžˆμŠ΅λ‹ˆκΉŒ? #173의 세뢀정보

@prionkor λ¬Έμ œκ°€ ν•΄κ²°λ˜μ§€ μ•ŠμŠ΅λ‹ˆκΉŒ? https://github.com/GUI/lua-resty-auto-ssl/pull/128

#176κ³Ό #128의 μ‘°ν•© μ‚¬μ΄μ˜ v0.13.0μ—μ„œ 이것이 잘 ν•΄κ²°λ˜μ–΄μ•Ό ν•œλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. 문제 해결이 였래 μ§€μ—°λ˜μ–΄ μ£„μ†‘ν•©λ‹ˆλ‹€! κ·Έλž˜μ„œ λ‚˜λŠ” 이것을 닫을 κ²ƒμ΄μ§€λ§Œ, μƒˆ 릴리슀의 λ™μž‘μ— μ—¬μ „νžˆ λ―Έν•΄κ²° λ¬Έμ œκ°€ 있으면 μ•Œλ €μ£Όμ‹­μ‹œμ˜€.

μ§€κΈˆ μ„€μΉ˜ν•˜κ³  ν…ŒμŠ€νŠΈ μ€‘μž…λ‹ˆλ‹€! 병합 및 μΆœμ‹œν•΄μ£Όμ…”μ„œ 정말 κ°μ‚¬ν•©λ‹ˆλ‹€.

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰