วิธีนี้คือการ renew SSL ของทุก domain ในเครื่องโดย copy command ด้านล่างไปรันได้เลย cd /usr/local/directadmin/custombuild/ ./build clean all ./build update ./build update_da echo "letsencrypt_renewal_days=60" >> /usr/local/directadmin/conf/directadmin.conf echo "action=rewrite&value=letsencrypt" >> /usr/local/directadmin/data/task.queue /usr/local/directadmin/dataskq wget -O /usr/local/directadmin/scripts/custom/recreate_ssl_combined.sh https://putter.network/rtools/conf/directadmin/scripts/recreate_ssl_combined.sh chmod 700 /usr/local/directadmin/scripts/custom/recreate_ssl_combined.sh sh /usr/local/directadmin/scripts/custom/recreate_ssl_combined.sh service nginx restart service httpd restart
การทำ Wildcard subdomain แยกเป็น 2 ส่วนคือทำ Wildcard ที่ Web Server และ DNS Server 1 ตั้งค่า Wildcard DNS ด้วยการใส่ * ให้กับ A Record ของ Domain ที่ต้องการ ** แก้ x.x.x.x เป็นหมายเลข IP ของเซิฟเวอร์ 2 ตั้งค่า Wildcard ของ Web Server เพิ่มข้อความนี้ลงไปใน Custom field ...
Ajenti เป็นเครื่องมือสำหรับผู้ดูแลระบบที่ต้องการความสะดวกสบายในการจัดการเครื่องเซิฟเวอร์ในองกรณ์ของท่านโดน Ajenti นั้นสามารถจัดการแทบจะครบทุกอย่างผ่าน Web Interface ที่มีหน้าตาค่อนข้างทันสมัย เช่น Web Server, Firewall , Crontab , DNS , อื่นๆอีกมากมาย รวมถึงมี Plugin ที่สามารถติดตั้งเพิ่มเติมได้อีกด้วย ขั้นตอนการติดตั้ง Ajenti Install repository http://repo.ajenti.org/ajenti-repo-1.0-1.noarch.rpm ติดตั้ง Ajenti yum install ajenti เปิดการใช้งาน service service ajenti restart ทำให้ Ajenti เปิดเซอวิชทุกครั้งหลังจากเปิดเครื่องใหม่ chkconfig ajenti on โดยการใช้งาน Ajenti จะเข้าผ่าน https ผ่านพอต...
ปัจจุบัน WordPress เป็น CMS ที่นิยมกันมากที่สุดในตอนนี้สำหรับเหล่าบรรดาคนที่ทำเว็บทั้ง Web Blog, Corporate, E-Commerce อื่นๆอีกมากมายแต่ส่วนใหญ่ผู้ที่ใช้งานไม่ได้คำนึงถึงเรื่องของ Security จึงทำให้เวปไซต์ 30-50% ในปัจจุบันมีช่องโหว่ให้ผู้ไม่หวังดีเข้ามาโจมตีได้ทั้งทาง Plugin,Themes,Brute Force Attack เป็นต้น ต้องบอกก่อนว่าช่องโหว่ส่วนใหญ่ไม่ได้เป็นที่ทาง wordpress.org แต่เป็นเพราะ Plugin หรือ Themes เป็นส่วนใหญ่ถูกพัฒนามาจากบุคคลทั่วไปที่มาร่วมพัฒนาทั้งแจกฟรีและแบบเสียเงิน จึงได้ขอคำปรึกษากับทางบริษัท Datafarm ผู้ให้บริการ Security Consult และรับทำพวก Penetration Testing ถึงแนวทางการแก้ไขปัญหานี้ จึงแนะนำให้ผมได้รู้จักกับ Plugin ชื่อว่า NinjaFirewall ซึ่งการทำงานคือ Plugin จะมี Rule ต่างๆที่เป็นการโจมตีอยู่และจะสามารถ Detect ได้เบื้องต้นและทำเป็น report ให้ว่ามีการโจมตีเข้ามาและจะทำการ reject ผู้โจมตีให้อัตโนมัติ ชั้นตอนการติดตั้ง...
เท่าที่พบปัญหานี้คือ Themes ไม่ Support กับระบบการบีบอัดข้อมูลของ WP Super Cache (Compression) วิธีแก้ไขให้ติ๊กถูกส่วนที่เป็น Compression ออกก็จะทำให้เวปสามารถใช้งานได้ปกติ – Compress pages so they’re served more quickly to visitors. (Recommended) – Compression is disabled by default because some hosts have problems with compressed files. Switching it on and off clears the cache.
บ่อยครังที่ผมใช้ Software ที่ชื่อว่า wpscan ซึ่งเป็น OpenSource Software สำหรับค้นหาช่องโหว่ หรือ จุดอ่อนของ WordPress ให้กับหน่วยงานและเว็บไซต์ส่วนตัวของผมเองและสิ่งที่น่าแปลกใจสำหรับการใช้งานครั้งแรก (ของใครหลายๆคน) คือมันสามารถค้นหา username ที่ใช้สำหรับ Login เข้าสู่ระบบของทุก Account ในระบบได้ซึ่งในจุดนี้ก็ถือว่าเป็นอันตรายพอสมควรสำหรับ Webmaster ทั่วๆไปที่มักจะตั้งรหัสผ่านที่ง่ายๆต่อการคาดเดา เช่น 123456 , 123456789 , aaaaaaa , password เป็นต้นซึ่งผมก็เลยถือโอกาสอธิบายที่มาที่ไปว่าเจ้า wpscan นั้นหา username มาจากไหน หากคนไหน hardcore หน่อยก็คงเอา Source Code ที่ทาง wpscan มาแกะเอง ส่วนผมไม่ถนัดภาษา ruby ซักเท่าไร เลยจะดูจากการ GET request ด้วย wireshark แทนแล้วกันครับ ^...
โดยปกติแล้ว WordPress จะมี feature ที่เกี่ยวกับการตั้งค่าการทำงานตามตาารางทีเรากำหนดเรียกว่า Virtual Cronjob หรือ scheduled task และได้ enable ไว้โดย default ซึ่งปกติก็จะไม่มีการรันหากไม่ได้ไปตั้งค่าเกี่ยวกับการโพสหรือมี Plugin ที่จะใช้งานในลักษณะนี้ แต่ปัญหาที่ผมเจอคือมี Themes บางเจ้าที่ได้มีการเรียก wp-cron.php ทุก request ซึ่งทำให้ใช้งานทรัพยากรณ์เซิฟเวอร์โดยเปล่าประโยชน์มากๆ และหากไม่ได้ใช้งานก็สามารถปิดได้ด้วยวิธีดังนี้ แก้ไขไฟล์ wp-config.php define('DISABLE_WP_CRON', 'true'); และถ้าต้องการใช้งาน scheduled task แนะนำให้ตั้ง Cronjob เรียก wp-cron.php ตามเวลาที่กำหนดจะทำให้ประหยัดทรัพยากรณ์เซิฟเวอร์และเหมาะสมกว่า
สืบเนื่องมาจากช่วงหลังๆมานี่มีลูกค้าแจ้งมาว่าเว็บไซต์โดนแฮ็กและให้ทางผมช่วยเช็คให้ทีว่าโดนแฮ็กเพราะอะไรซึ่งผมตรวจสอบแล้วส่วนใหญ่ 70-80% ได้ใช้ WordPress และก็มีช่องโหว่กันทั้งนั้นสิ่งที่จะมานำเสนอในบทความนี้เพื่อเป็นแนวทางในการป้องกันเบื้องต้น ไม่ได้มีเจตนาที่จะนำเสนอบทความเพื่อให้ไปใช้ในทางที่ผิดนะครับ สิ่งที่จะนำเสนอในบทความนี้ คือ WPScan ซึ่งเป็น Tools ที่รวบรวมช่องโหว่ (public exploit) ของ WordPress มาไว้ให้ค่อนข้างครบและมีการอัพเดทอย่างสม่ำเสมอซึ่งการทำงานในการใช้หาช่องโหว่ที่ว่าคือจะใช้ HTTP Requese ไปยัง Path ต่างๆจากฐานข้อมูลหากเจอ Plugin หรือ Themes ที่มีในฐานข้อมูลว่ามีช่องโหว่ก็จะแสดงผลลัพท์แก่ผู้ใช้ ซึ่งการใช้งานแต่ละครั้งจะทำให้มี Access Log จำนวนมากหากนำไปใช้ในการโจมตีก็จะโดนตามตัวได้อย่างง่ายดายจึงไม่แนะนำให้ไปใช้กับเว็บไซต์ที่ไม่ได้รับอนุญาตินะครับและความสามารถของ Tools นี้ที่เป็นในเชิงของการโจมตีผมจะไม่พูดถึงแล้วกันนะครับ วิธีการติดตั้งดูได้จาก ที่นี่ หลังจากติดตั้งแล้ว ทดลองรันโปรแกรมด้วยคำสั่ง wpscan (หรือเรียก...
บทความนี้จะมาบอกว่าทำไมในการทำเวปไซต์ด้วย WordPress จำเป็นต้องทำ Caching ทำแล้วช่วยอะไรได้ WordPress เป็น CMS ที่ค่อนข้างใหญ่และมีโครงสร้างซับซ้อน ในการ query หรือค้นหาข้อมูลมาแสดงหน้าเวปแต่ละครั้งจะผ่าน function ต่างๆเยอะแยะมากมาย หากคนเข้าเวปน้อยๆก็จะยังไม่เห็นปัญหาแต่ถ้ามีการใช้งาน (realtime) หลักพันหรือหลักหมื่น หากไม่มีระบบ Cache เข้ามาช่วย เซิฟเวอร์แรงแค่ไหนก็เอาไม่อยู่ครับ Plugin ที่บริหารจัดการ Caching ของ WordPress มีมากมายในท้องตลาดแต่ที่ทาง Ruk-Com เลือกใช้ให้กับลูกค้าและเราได้ทดสอบเป็นอย่างดีแล้วว่าถ้าเราตั้งค่าอย่างถูกต้องก็จะสามารถใช้งานได้เต็มประสิทธิภาพของเซิฟเวอร์ นั่นคือ WP Super Cache ด้วยการตั้งค่าที่ง่ายและ Plugin ไม่มีความซับซ้อนมาก จากที่เราได้มีการทดสอบให้กับลูกค้า VPS ของเราโดยใช้ Memory ประมาณ 4GB เท่านั้นสามารถรับทราฟฟิกได้หลักล้าน UIP ต่อวันได้สบายๆ (ในส่วนนี้ต้องมีการปรับแต่ง Web...