Tuesday, 30 November 2021

Hestia Web Server การติดตั้งแบบ Custom EP7

ขั้นตอนการติดตั้ง HestiaCP

Hestia Web Server กับขั้นตอนการติดตั้งแบบ Custom install ถามว่าทำไมต้องติดตั้งแบบ custom คำตอบก็คือ หากเรามีงบกำจัด และ ต้องการให้ Web Control Panel ของเราทำงานได้เต็มประสิทธิภาพในงบที่เรามี หรือ การไปใช้ nginx อย่างเดียวเพื่อประสิทธิภาพสูงสุดของ Web Server การตัดสิ่งที่ไม่จำเป็นออกไป เพื่อรีดประสิทธิภาพของ VPS ก็จะทำได้ออกมาดีเช่นกัน บทความนี้ดำเนินมาถึง EP7 สามารถอ่านย้อนหลังได้ใน เรื่อง Hestia Control Panel จัดการเรื่อง File และ Backup EP6

Hestia Web Server ทำไมต้องติดตั้งแบบ Custom

  • อินดี้ไม่ชอบ Apache เพราะทำให้เว็บช้ามาก ดังนั้นอินดี้ต้องการ nginx อย่างเดียวในการ run server
  • อย่างที่ทราบกันดีว่า nginx มีประสิทธิภาพดีกว่า Apache มาก
  • VPS ที่เช่าด้วยงบประมาณจำกัด เช่น Ram 1G (เดือนละ 5$ ของ DigitalOcean)
  • บาง Service ที่เป็น Default ของ HestaiCP เราไม่ได้ใช้งาน เช่น Email หรือ DNS
  • ต้องการให้ Web Server เบาที่สุด เน้นพื้นที่เอาไปจัดเก็บเว็บ

Hestia Web Server คำแนะนำสำหรับ VPS RAM 1G

  • สำหรับคนที่ไม่ถนัด nginx แนะนำให้ลง Apache + nginx ไปด้วย แต่อยากให้ลอง nginx แบบเพียวๆ เพราะว่าประสิทธิภาพของ Web Server ออกมาดีมาก
  • ไม่ควรติดตั้ง DNS Server เพราะจะทำให้ RAM 1G ไม่พอใช้งาน แนะนำให้ใช้ CloudFlare แทน ในบทความในเว็บเขียนไว้หมดแล้ว สามารถไปหาอ่านได้
  • FTP Server ควร Stop หลักเลิกใช้งาน เพื่อลดการใช้ RAM
  • SSH ควร Stop หลังเลิกใช้งานเพื่อลดการใช้งาน RAM และ ป้องกันการ Hack
  • ไม่ครวรติดตั้ง Email Server และ ClamAV และ Spamassassin เพราะ Ram 1G ไม่พอใช้ ถ้าหากต้องการใช้งาน แนะนำ RAM 4GB ขึ้นไป
  • ไม่ควรติดตั้ง IPTables และ Fail2Ban ตรงนี้มีข้อกำจัดคือ Web Server อาจจะโดน hack ได้ง่าย แนะนำให้ใช้ Firewall ของ Cloud Flare และ Digital Ocean มาช่วย ศึกษาเพิ่มเติม DigitalOcean 101 กับการจัดการ Firewall EP8
  • ตัวอย่างสคริปการติดตั้งแบบพอเหมาะกับ RAM 1G ติดตั้ง Apache + nginx
ssh [email protected]
wget https://raw.githubusercontent.com/hestiacp/hestiacp/release/install/hst-install.sh
sudo bash hst-install.sh --apache yes --nginx yes --phpfpm yes --multiphp no --vsftpd yes --proftpd no --named no --mysql yes --postgresql no --exim no --dovecot no --clamav no --spamassassin no --iptables no --fail2ban no --quota no --api yes --force no --interactive yes --port 8083 --lang en
  • ติดตั้ง nginx อย่างเดียว แนะนำเลย
ssh [email protected]
wget https://raw.githubusercontent.com/hestiacp/hestiacp/release/install/hst-install.sh
sudo bash hst-install.sh --apache no --nginx yes --phpfpm yes --multiphp no --vsftpd yes --proftpd no --named no --mysql yes --postgresql no --exim no --dovecot no --clamav no --spamassassin no --iptables no --fail2ban no --quota no --api yes --force no --interactive yes --port 8083 --lang en

คำแนะนำสำหรับติดตั้ง RAM 2G

  • VPS Ram 2G ของ Digital Ocean เป็น Plan ที่ทางอินดี้ใช้งานอยู่ โดยทางอินดี้จะใช้ nginx อย่างเดียว
  • Link แนะนำสำหรับ Custom install HestiaCP ซึ่งมาจาก HestiaCP เองเลย
https://gabizz.github.io/hestiacp-scriptline-generator/
  • ติดตั้ง iptables และ Fail2ban เพื่อป้องกันการ Hack ซึ่งจากทดสอบมาก็เพียงพอสำหรับ Ram 2G กับคนเข้าเว็บวันละ 1000 คนขึ้นไป
  • Stop Service FTP และ SSH ผ่าน HestiaCP ทุกครั้งหลักเลิกใช้งาน
  • ใช้ DNS CloudFlare และ Firewall ของ Digital Ocean ช่วยด้วย
  • ไม่ได้ใช้งาน Feature Email Server และ antivirus
  • ตัวอย่างสริปติดตั้งใช้งาน
ssh [email protected]
wget https://raw.githubusercontent.com/hestiacp/hestiacp/release/install/hst-install.sh
sudo bash hst-install.sh --apache no --nginx yes --phpfpm yes --multiphp no --vsftpd yes --proftpd no --named no --mysql yes --postgresql no --exim no --dovecot no --clamav no --spamassassin no --iptables yes --fail2ban yes --quota no --api yes --force no --interactive yes --port 8083 --lang en

สามารถศึกษา Custom install ได้ที่

เนื่องจาก HestiaCP ได้ถูกพัฒนาต่อมาจาก VestaCP ดังนั้นจุดเด่นของ Web Server คือ สามารถใช้งาน Apache + nginx ได้แบบไม่ต้องเรียนรู้ใหม่ แต่หากใช้ไปซักพักจะรู้ว่า Apache พอคนเข้าเว็บเยอะๆ ประสิทธิภาพจะเทียบกับ nginx ไม่ได้เลย ดังนั้นการติดตั้ง Web Server และ การเลือก แค่บาง Services มาติดตั้ง เพื่อเร่งประสิทธิภาพของเว็บออกมาได้ดีที่สุด สามารถไปศึกษาเพิ่มเติมได้ที่

การตั้งค่า nginx กับ WordPress

สำหรับคนที่ Web Server หรือ เขียน Blog โดยใช้งาน WordPress ซึ่งเป็น CMS ที่นิยมกันทั่วโลก แน่นอนทาง hestiaCP ก็ทำ Template มาให้แล้วเหมือนกัน ดังนั้นหากใช้งาน HestiaCP + nginx รับรองไม่ต้องไป ปรับจุนอะไรใน hestiaCP และ nginx เลย เพราะสามารถใช้งาน WordPress ได้อย่างราบรื่น โดยขั้นตอนการปรับ Template ทำได้ดังนี้

  • HestiaCP > Web > Edit Domain > Web Tamplate nginx > WordPress
Hestia Web Server
  • จากการตั้งค่าในรูปเพียงเท่านี้ก็จะใช้งาน WordPress ได้อย่างเหมือนที่เคยใช้เลย ไม่ต้องมาคอยปรับแต่งอะไรอีกแล้ว

บทสรุป

การใช้งาน HestiaCP นั้นถูกพัฒนาต่อมาจาก VestaCP แถมมี Feature ครบถ้วน และ Support OS ใหม่ๆ ได้เป็นอย่างดี รับรอง HestaiCP ใช้งานง่านเหมือน VestaCP เลย และ การพัฒนาอยู่ตลอดทำให้เราได้ Feature หรือ การแก้ไข Bug อยู่อย่างตอเนื่อง ทางอินดี้แนะนำเลย HestaiCP

4 Comments

ใน HestiaCP Custom Script ไม่ห็นมี nginx เลยครับ

nginx จะเป็น Default เลย มีแค่เลือกว่าจะเอา nginx+Apache หรือไม่

ตอนนี้ผมลองทำใน vmware ดูก่อน แต่เหมือนตรงที่ add web domain มันใส่ ipaddress ไม่ได้ครับ ใส่ได้แต่ domain name

ใช่ๆ ตรงนี้เป็นข้อจำกัด หรือไม่ลองไปทดสอบที่ Digital Ocean ได้นะครับ สร้างๆ แป๊บๆแล้วลบออก ให้พอรู้แนวทาง บน DO ยังไม่ทันคิดเงิน