วิธีติดตั้ง HTTPS ด้วย Certificate ของ Let’s Encrypt
จาก มาใช้งาน let’s encrypt กันเถอะ ของอาจารย์ฉัตรชัย ผมขอขยายความต่อ เอาแบบว่า Copy-Paste กันเลย โดยในที่นี้ … OS เป็น Ubuntu 18.04 Web Server เป็น Apache ที่ Firewall เปิดให้เข้าถึง TCP 80 / 443 จาก Internet ได้ — มันจำเป็นสำหรับการ Verification ของ Certbot ครับ *** ในเบื้องต้นนะ 🙂 *** Let’s Encrypt คืออะไร อ่าน …https://letsencrypt.org/getting-started/ เริ่มต้น ต้องติดตั้ง Certbot ก่อน อ่าน …https://certbot.eff.org/ ดูต้นฉบับการติดตั้งของ Ubuntu 18.04 และใช้ Apache ได้จากhttps://certbot.eff.org/lets-encrypt/ubuntubionic-apache ติดตั้ง Certbot ก่อน ใช้คำสั่งต่อไปนี้ จาก User ที่สามารถ sudo ได้ แบบ Auto จากนั้นใช้คำสั่งต่อไปนี้ เพื่อให้ certbot ทำการติดตั้ง Certificate และแก้ไขไฟล์ (ในที่นี้ใช้ Apache) Configuration ให้เลย แบบแก้ไขเอง หรือถ้าจะทำเอง โดยต้องการเอาเฉพาะ Certificate มา แล้วทำการแก้ไขไฟล์ Apache Configuration เองก็ได้ ระบบจะถาม ยอมรับเงื่อนไขไม๊ –> แน่นอน (A) Accept email address ให้ใส่ไปตามจริง ต้องการให้แสดง email address เปิดเผยหรือไม่ –> ผมตอบ No นะ และ บอกว่า Domain Name ของเราคืออะไร ให้ใส่ FQDN ไป เช่น kx1.in.psu.ac.th เป็นต้น จากนั้น Certbot จะ Callback ไป ให้มีการ Verification จาก Internet ว่าสามารถเข้าถึงได้จริงหรือไม่ (ตรงนี้ ใน PSU ต้องแจ้งทาง Network Admin เพื่อเปิด Port ที่ Firewall ให้เข้าถึง TCP 80 และ 443 ให้สำเร็จก่อน) เมื่อ Verification สำเร็จ ก็จะได้ไฟล์ Certificate และ Private Key มา จะอยู่ที่ (path แต่ละเครื่องจะแตกต่างกันตรงที่ Domain Name ที่กำหนดข้างต้น) ตามลำดับ แก้ไขไฟล์ ให้มีค่าต่อไปนี้ จากนั้นใช้คำสั่งนี้ เพื่อเปิดใช้งาน https ใช้คำสั่งนี้ เพื่อใช้งาน default-ssl และทำการ Restart apache ด้วยคำสั่งนี้ sudo systemctl reload apache2 ทดสอบใช้งาน HTTPS ใช้งานได้ NOTE จริง ๆ แล้ว ในองค์กร สามารถทำเครื่อง ๆ หนึ่งขึ้นมา เพื่อติดตั้ง certbot แล้วขอ Certificate มา ของ Domain ต่าง ๆ แล้วค่อย “ย้าย” certificate และ key file ไปเครื่องที่จะใช้งานจริง