Letsencrypt เพิ่มโดเมนในใบรับรองที่มีอยู่ [ปิด]


123

ฉันกำลังเพียงแค่พยายามที่จะเพิ่มโดเมนกับใบรับรองที่มีอยู่แล้วสำหรับtest.example.com example.comฉันจะเพิ่มโดเมนในใบรับรองที่มีอยู่และแทนที่ใบรับรองเก่าได้อย่างไร

ฉันได้ลองใช้คำสั่งเหล่านี้แล้ว

./letsencrypt-auto certonly --cert-path /etc/letsencrypt/archive/example.com --expand -d test.example.com

./letsencrypt-auto certonly -d example.com --expand -d test.example.com

ผลลัพธ์: ทั้งคู่สร้างใบรับรองใหม่ล่าสุดในโฟลเดอร์ใหม่ test.example.com-0001

./letsencrypt-auto certonly --renew-by-default  --expand -d test.example.com

ผลลัพธ์: มีโฟลเดอร์ error test.example.com อยู่แล้ว

./letsencrypt-auto renew --expand -d orange.fidka.com

ผลลัพธ์: ข้อผิดพลาดฉันสามารถต่ออายุได้ก็ต่อเมื่อใบรับรองของฉันหมดอายุ


1
คำถามนี้ถูกเปิดอีกครั้งใน Super User: superuser.com/questions/1432541/…
Mike Godin

1
ให้กับทุกคนในขณะนี้ดูคำถามนี้: ฉันจะแนะนำมีลักษณะที่เป็นคำตอบใน superuser ใช้certbot --expandซึ่งใกล้เคียงกับคำถามนี้ที่ถาม imo
Jesse Reza Khorasanee

คำตอบ:


134

คุณต้องระบุชื่อทั้งหมดรวมถึงชื่อที่ลงทะเบียนแล้ว

ฉันใช้คำสั่งต่อไปนี้ในการลงทะเบียนใบรับรอง:

/opt/certbot/certbot-auto certonly --webroot --agree-tos -w /srv/www/letsencrypt/ \
--email me@example.com \
--expand -d example.com,www.example.com

... และตอนนี้ฉันประสบความสำเร็จในการใช้คำสั่งต่อไปนี้เพื่อขยายการลงทะเบียนของฉันเพื่อรวมโดเมนย่อยใหม่เป็น SAN:

/opt/certbot/certbot-auto certonly --webroot --agree-tos -w /srv/www/letsencrypt/ \
--expand -d example.com,www.example.com,click.example.com

จากเอกสารประกอบ :

- ขยาย "หากใบรับรองที่มีอยู่ครอบคลุมบางส่วนของชื่อที่ร้องขอให้ขยายและแทนที่ด้วยชื่อเพิ่มเติมเสมอ"

อย่าลืมรีสตาร์ทเซิร์ฟเวอร์เพื่อโหลดใบรับรองใหม่หากคุณกำลังเรียกใช้ nginx


2
คำสั่งเปลี่ยนไปเล็กน้อยเป็นcertbot-auto certonly -a webroot ...
tsusanka

1
มันใช้งานได้กับปลั๊กอินแบบสแตนด์อโลนหรือไม่
hjl

เมื่อฉันใช้ข้างต้นมันจะสร้างใบรับรองใหม่ด้วยตัวเองพร้อมกับ-001ต่อท้าย
KhoPhi

ใช้งานในการผลิตการขยายดูเหมือนจะไม่ต้องการเวลาที่มองเห็นได้ ฉันใช้ certbot-auto
Ray Foss

@ simon-hampel เมื่อขยายใบรับรอง SSL จะขยายวันหมดอายุสำหรับโดเมนทั้งหมดที่กำหนดไว้ในรายการหรือไม่
Ersin Demirtas

36

นี่คือวิธีจดทะเบียนโดเมนของฉัน:

sudo letsencrypt --apache -d mydomain.com

จากนั้นจึงสามารถใช้คำสั่งเดียวกันกับโดเมนเพิ่มเติมและทำตามคำแนะนำ:

sudo letsencrypt --apache -d mydomain.com,x.mydomain.com,y.mydomain.com

3
ฉันเพียงแค่แทนที่letsencryptด้วย./certbot-autoและทำงาน! คำสั่ง./certbot-auto --nginx -d domain1.com,domain2.comถามว่าฉันต้องการขยายใบรับรองที่มีอยู่และทำงานหรือไม่
George

1
ขอบคุณ ช่วยประหยัดเวลาของฉัน ฉันวิ่ง./letsencrypt-auto --debug -d new-domain.com -d new-alias.com
Nguyen Van Vinh

30

Apache บน Ubuntuโดยใช้ปลั๊กอิน Apache:

sudo certbot certonly --cert-name example.com -d m.example.com,www.m.example.com

คำสั่งดังกล่าวจะมีการอธิบายเต็มตาในคู่มือผู้ใช้ Certbot เกี่ยวกับการเปลี่ยนชื่อโดเมนใบรับรองของ โปรดทราบว่าคำสั่งสำหรับการเปลี่ยนชื่อโดเมนของใบรับรองใช้กับการเพิ่มชื่อโดเมนใหม่ด้วย

แก้ไข

หากเรียกใช้คำสั่งดังกล่าวแสดงข้อความแสดงข้อผิดพลาด

ไคลเอนต์ที่มีตัวรับรองความถูกต้องที่เลือกในปัจจุบันไม่สนับสนุนการท้าทายใด ๆ ที่จะตอบสนอง CA

ปฏิบัติตาม คำแนะนำเหล่านี้จากชุมชน Let's Encrypt


2
อาจมีการระบุไว้ในเอกสาร แต่ถ้าคุณเพิ่งเพิ่มไปยังที่มีอยู่คุณต้องเพิ่มโดเมนที่มีอยู่อีกครั้ง - มิฉะนั้นจะถูกลบออก
Rob

5

คุณสามารถแทนที่ใบรับรองได้โดยเรียกใช้ certbot อีกครั้งด้วย ./certbot-auto certonly

คุณจะได้รับข้อความนี้หากคุณพยายามสร้างใบรับรองสำหรับโดเมนที่คุณได้ครอบคลุมโดยใบรับรองที่มีอยู่แล้ว:

-------------------------------------------------------------------------------
You have an existing certificate that contains a portion of the domains you
requested (ref: /etc/letsencrypt/renewal/<domain>.conf)

It contains these names: <domain>

You requested these names for the new certificate: <domain>,
<the domain you want to add to the cert>.

Do you want to expand and replace this existing certificate with the new
certificate?
-------------------------------------------------------------------------------

เพียงแค่เลือกExpandและแทนที่


5

ฉันสามารถตั้งค่า SSL ที่ได้รับการรับรองสำหรับโดเมนและโดเมนย่อยหลายรายการโดยใช้--cert-nameร่วมกับ--expandตัวเลือกต่างๆ

ดูเอกสารรับรองอัตโนมัติอย่างเป็นทางการที่https://certbot.eff.org/docs/using.html

ตัวอย่าง:

certbot-auto certonly --cert-name mydomain.com.br \
--renew-by-default -a webroot -n --expand \
--webroot-path=/usr/share/nginx/html \
-d mydomain.com.br \
-d www.mydomain.com.br \
-d aaa1.com.br \
-d aaa2.com.br \
-d aaa3.com.br

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.