วิธีการอัปเดตใบรับรอง
clmBot รองรับวิธีการอัปเดตใบรับรองสองแบบ ซึ่งสามารถเลือกได้ตามสภาพแวดล้อมเครือข่ายของเซิร์ฟเวอร์:
| วิธีการอัปเดต | โหมดการทำงาน | ข้อกำหนดพอร์ต | สถานการณ์ที่เหมาะสม |
|---|---|---|---|
| การพุชจากคลาวด์ | ผู้ดูแลระบบส่งคำสั่งพุชจาก后台 ส่วนเซิร์ฟเวอร์ clmBot รับและอัปเดต | ต้องเปิดพอร์ตขาเข้า 8862/tcp | นโยบายเครือข่ายอนุญาต และต้องการให้การอัปเดตมีผลทันที |
| การดึงตามเวลา | clmBot ตรวจสอบจากคลาวด์ตามเวลาที่กำหนดว่ามีใบรับรองใหม่หรือไม่และอัปเดตอัตโนมัติ | ไม่ต้องเปิดพอร์ตขาเข้า | เซิร์ฟเวอร์ที่ไม่สามารถเปิดพอร์ตขาเข้าได้ (แนะนำเป็นวิธีเริ่มต้น) |
ทั้งสองวิธีไม่ขัดแย้งกัน ในกลุ่มเซิร์ฟเวอร์ชุดเดียวกันสามารถใช้การพุชบางส่วนและใช้การดึงตามเวลาบางส่วนได้
วิธีที่ 1: การพุชจากคลาวด์
เริ่มเซิร์ฟเวอร์ clmBot บนเซิร์ฟเวอร์
./clm-bot-linux-amd64 server -a="0.0.0.0:8862"
-a ระบุที่อยู่การรับฟังและพอร์ต ค่าเริ่มต้นคือ 0.0.0.0:8862 หลังจากเริ่มต้น clmBot จะทำงานเป็นเซิร์ฟเวอร์อย่างต่อเนื่องเพื่อรอการพุชจากคลาวด์
- จำเป็นต้องเปิดพอร์ตขาเข้า
8862/tcpในไฟร์วอลล์ของเซิร์ฟเวอร์และกลุ่มความปลอดภัยของคลาวด์ - ฝั่งเซิร์ฟเวอร์ clmBot เปิดใช้งานการยืนยันตัวตนแบบ TLS สองทางสำหรับการเชื่อมต่อพุชจากคลาวด์ และยอมรับเฉพาะใบรับรองการพุชของโหนดที่ผ่านการเปิดใช้งานและเชื่อมต่อแล้วเท่านั้น
หากไม่ต้องการเปิดพอร์ตขาเข้า โปรดใช้ วิธีที่สอง: การดึงข้อมูลตามเวลา
ฝั่งเซิร์ฟเวอร์ clmBot ต้องทำงานอยู่ตลอดเวลาเพื่อรับการพุช สำหรับสภาพแวดล้อมการใช้งานจริง แนะนำให้ลงทะเบียนเป็นบริการระบบและตั้งค่าให้เริ่มอัตโนมัติเมื่อเปิดเครื่อง ดู การติดตั้งเป็นบริการและการอัปเกรด
พุชใบรับรองในหน้าผู้ดูแลระบบ
เข้าสู่ระบบหน้าผู้ดูแลระบบ ไปที่รายการจุดติดตั้ง ค้นหาจุดติดตั้งเป้าหมายแล้วคลิก พุชใบรับรอง หลังจากยืนยัน ระบบจะพุชใบรับรองล่าสุดไปยังเซิร์ฟเวอร์และอัปเดตให้เสร็จสมบูรณ์โดยอัตโนมัติ
วิธีที่สอง: การดึงข้อมูลตามเวลา
โหมดการดึงข้อมูลตามเวลาไม่จำเป็นต้องเปิดพอร์ตขาเข้า โดย clmBot จะตรวจสอบการอัปเดตตามเวลาที่กำหนด ซึ่งเป็นวิธีเริ่มต้นที่แนะนำ
Linux: กำหนดค่า crontab
เพิ่มคำสั่งอัปเดต clmBot ลงใน crontab:
crontab -e
เพิ่มหนึ่งบรรทัด (ตรวจสอบการอัปเดตใบรับรองทุกวันเวลา 03.00 น.):
0 3 * * * cd /opt/clm-bot && ./clm-bot-linux-amd64 update-certificate >> update.log 2>&1
- ในคำสั่งต้อง
cdไปยังไดเรกทอรีติดตั้งของ clmBot ก่อนจึงจะดำเนินการได้ เนื่องจาก clmBot จะอ่านconfig.yamlจากไดเรกทอรีปัจจุบันตามค่าเริ่มต้น - หรือไม่ต้องสลับไดเรกทอรี โดยระบุพาธไฟล์คอนฟิกผ่านพารามิเตอร์
-c:./clm-bot-linux-amd64 -c /opt/clm-bot/config.yaml update-certificate - โปรดแทนที่พาธด้วยไดเรกทอรีติดตั้งจริง
ผลลัพธ์การทำงานจะถูกผนวกเข้ากับ update.log พร้อมกันนั้น clmBot จะบันทึกล็อกการทำงานไว้ใน logs/clm-bot.log ภายในไดเรกทอรีที่มีไฟล์คอนฟิกอยู่
Windows: กำหนดค่า Scheduled Task
สร้าง Scheduled Task บนเซิร์ฟเวอร์ Windows เพื่อทำงานตามเวลาที่กำหนด:
cd /d C:\clm-bot && clm-bot-windows-amd64.exe update-certificate >> update.log 2>&1
หลังจากสร้างเสร็จแล้ว คุณสามารถคลิกขวาที่งานแล้วเลือกเรียกใช้เพื่อตรวจสอบ จากนั้นดูบันทึกในไดเรกทอรีติดตั้งเพื่อยืนยันผลการทำงาน
การต่ออายุและอัปเดตใบรับรองอัตโนมัติ
ใบรับรองที่ clmBot อัปเดตมาจากการต่ออายุอัตโนมัติบนคลาวด์ เข้าสู่ระบบหลังบ้านจัดการ ไปที่หน้ารายละเอียดใบรับรอง SSL ในการตั้งค่าการต่ออายุอัตโนมัติ ให้เลือกหรือป้อนรอบการต่ออายุ (เช่น 30 วัน) แล้วบันทึก
ภาพรวมหลังการตั้งค่า:
- ก่อนใบรับรองหมดอายุ ระบบคลาวด์จะต่ออายุอัตโนมัติตามรอบที่กำหนดและสร้างใบรับรองใหม่
- clmBot จะรับใบรับรองใหม่ตามวิธีที่กำหนดค่าไว้ (แบบพุชหรือดึงตามเวลา)
- clmBot ดำเนินการอัปเดตใบรับรองภายในเครื่อง:
- หากใบรับรองภายในเครื่องตรงกับใบรับรองล่าสุดบนคลาวด์ จะข้ามการอัปเดต
- หากไม่ตรงกัน จะสำรองไฟล์ใบรับรองภายในเครื่องโดยอัตโนมัติ (สร้างข้อมูลสำรอง
.bakพร้อมเวลา) จากนั้นดำเนินการbefore_scriptเขียนใบรับรองใหม่ และดำเนินการafter_scriptเพื่อโหลดบริการใหม่
หากต้องการบังคับดำเนินการ after_script หนึ่งครั้งโดยไม่อัปเดตใบรับรอง (เช่น เพื่อดีบักสคริปต์โหลดใหม่) สามารถใช้พารามิเตอร์ --force-after ได้