จากเอกสารของปลั๊กอินเว็บรูท Certbot
ปลั๊กอิน webroot ทำงานได้โดยการสร้างไฟล์ชั่วคราวสำหรับแต่ละโดเมนที่คุณขอ
${webroot-path}/.well-known/acme-challenge
มา จากนั้นเซิร์ฟเวอร์การตรวจสอบความถูกต้องของ Let's Encrypt จะทำการร้องขอ HTTP เพื่อตรวจสอบว่า DNS สำหรับแต่ละโดเมนที่ร้องขอแก้ไขไปยังเซิร์ฟเวอร์ที่ใช้ certbot
บนเซิร์ฟเวอร์ภายในบ้านที่ใช้ส่วนตัวฉันปิดใช้งานพอร์ต 80 นั่นคือไม่มีการส่งต่อพอร์ตในเราเตอร์ ฉันไม่มีความตั้งใจที่จะเปิดพอร์ตนั้น
ฉันจะบอก certbot ว่าเซิร์ฟเวอร์การตรวจสอบความถูกต้องไม่ควรทำการร้องขอ HTTP แต่เป็นการร้องขอ HTTPS (พอร์ต 443) เพื่อตรวจสอบความเป็นเจ้าของโดเมน
เซิร์ฟเวอร์การตรวจสอบไม่ควรมีความจำเป็นในการตรวจสอบใบรับรองของโฮมเซิร์ฟเวอร์เนื่องจากใช้ HTTP เป็นค่าเริ่มต้นแล้ว ฉันอาจมีใบรับรองที่ลงนามเองหรือใบรับรองที่ต่ออายุได้ แต่ไม่ควรสำคัญ
ขณะนี้ฉันอยู่ในสถานการณ์ที่ฉันจำเป็นต้องเปิดใช้งานการส่งต่อพอร์ต 80 เช่นเดียวกับเซิร์ฟเวอร์ในนั้นเพื่อสร้าง / ต่ออายุใบรับรอง สิ่งนี้ไม่ให้ฉันใช้ cronjob เพื่อต่ออายุใบรับรอง มันก็เพียงพอแล้วสำหรับการทำงาน แต่ฉันมีเซิร์ฟเวอร์ที่ฟังใน 443 อยู่แล้วซึ่งสามารถทำงานได้เช่นกัน