แก้ VestaCP Error: Let’s Encrypt validation status 400

วันนี้ลองจด domain ใหม่ และชี้ DNS มาที่ Public IP ของ Firewall จากนั้นทำ NAT port 80,443 ไปยัง Virtual Machine ที่ติดตั้ง VestaCP เอาไว้ จากนั้นก็สร้าง Web Domain ใหม่ ขึ้นมา โดย Advance Options ก็เพิ่ม SSL / Lets Encrypt Support เข้ามา

ปัญหา

Error: Let’s Encrypt validation status 400 จากที่หาข้อมูลมาเขาว่าเป็นเพราะ server เรามันไม่ตอบสนอง ก็คือ let’s encrypt มันหาทางเข้ามาหาเราไม่เจอนั่นแหละ อาจจะด้วยหลายปัจจัย!!

Error: let’s encrypt new auth status 429 มันมีโอกาสเกิดขึ้นได้ หากเราพยายามสร้าง cer หลายๆ ครั้งในช่วงเวลาหนึ่ง หรือเกินกว่าที่ let’s Encrypt กำหนด ดูรายละเอียดได้ที่ https://letsencrypt.org/docs/rate-limits/

วิธีตรวจสอบและแก้ไข

Firewall

  1. ดู firewall rule ว่าเราได้ทำ NAT pointing ไว้ถูกต้องหรือป่าว
  2. เช็คว่าเราเปิด port ไว้มันใช้งานได้หรือป่าว https://www.yougetsignal.com/tools/open-ports/

Service

ตรวจสอบ service ต่างๆ ว่ามันทำงานที่ port ไหน เช่น DNS และ Web + SSL

netstat -plnt | grep named
netstat -plnt | grep httpd
netstat -plnt | grep nginx

ถ้าใช้งาน nginx ก็จะพบกับได้ภาพของ port แบบด้านบน ซึ่งไม่ต้องกังวล ให้เราเน้นที่ 80,443 เป็นหลักก็พอ

Configuration

ไปแก้ไฟล์ Apache Virtual Hosts วิธีนี้ควรจะ backup ไว้ก่อนกันเหนียว เปิดไฟล์ /home/{{username}}/conf/web/{{domain}}.httpd.conf

vi /home/admin/conf/web/moremeng.in.th.httpd.conf

แก้ไขตรง <VirtualHost ---some-server-ip---:80> โดยใส่ ดอกจัน * เข้าไป

<VirtualHost *:80>

จากนั้น Save และลอง Save SSL ในหน้าของ VestaCP อีกครั้ง หรือใช้คำสั่ง

v-add-letsencrypt-domain username domain

v-add-letsencrypt-domain admin moremeng.in.th

หากติด Error: let's encrypt new auth status 429 ให้รอซักประเดี๋ยว แล้วค่อยลองใหม่ หรือ ให้ใช้ Vesta สร้าง SSL ของตัวเองขึ้นมาก่อน โดยกดที่  Generate CSR จากนั้นคัดลอก Cer และ Key มาใส่ใน 2 ช่องด้านบน จากนั้นกด Save เมื่อเสร็จแล้วให้ v-add อีกครั้ง

ข้อสังเกตุ

หากเราติดตั้ง nginx ไว้ด้วย ตัว package default มันก็จะต้องเลือก nginx โดยปริยาย หมายความว่า หากเราเพิ่ม web domain ใหม่ ให้เรากดเลือก Proxy Support ด้วยทุกครั้ง

Ref: https://forum.vestacp.com/viewtopic.php?f=11&t=18597&sid=c8153ab5a786acf9623d069e892ee589&start=60