สะกิดติ่ง WordPress Security ปกป้อง WordPress แบบไหนปลอดภัยสุด! อย่างผู้เชี่ยวชาญขนานแท้

หลังจากที่วันก่อนได้ลงเรียนคอร์ส “Learn Complete WordPress Security from Scratch” เห็นว่าน่าจะมีประโยชน์เลยเรียบเรียงเพิ่มเตมสรุปขยี้ออกมาได้ 10 ข้อครับ เป็นแนวทางปกป้อง WordPress แบบไหนปลอดภัยสุด ผู้สนใจสามารถไปลงเรียนคอร์สนี้ได้ตามลิงก์ที่มาข้างล่าง (ฟรีครับ) เดี๋ยววว อย่าพึ่งไถลงไปข้างล่าง ^^ เพราะนี่คือสรุปขยี้มาให้แล้ว…

1. Importance of WordPress updating 

คุณให้ความสำคัญกับการอัพเดต WordPress มากแค่ไหนทำไมต้องอัพเดต? เพราะไม่มีซอฟต์แวร์ไหน perfect 100%!
– Bug Fixes- Security 
– Improvementสำหรับ WordPress
– Core Update – Plugins – Themes

สำหรับ Plugin/Themes ไหนไม่ได้ใช้งานแม้จะ inactive ก็ให้ Uninstall ลบทิ้งให้หมด!
Backup Backup Backup!จะใช้ 3rd party plugin ตัวไหนก็ตามสะดวกเลยครับหรือจะเขียนสคริปต์ก็ได้เช่นกัน
– All Files
– Database 

2. Safe and Secure Password

– Generator เช่น random.org/passwords
– ใช้ 3rd Party Password Manager เช่น 1Password, KeyPass

3. Secure FTP

ใช้ FTP Client เช่น โปรแกรม FireZilla และ connect เชื่อมต่อผ่านโปรโตคอล SFTPหรือจะ login ด้วย private key authentication (.ppk)โดยสร้าง Key บน Web Control Pannel เช่น cPannel เป็นต้น

4. Secure Installation

ดาวน์โหลดไฟล์จาก wordpress.org เท่านั้นสำหรับผู้ใช้ docker ก็ต้องดู images ที่เป็น official wordpress

5. Secure Configuration 

– ไม่ใช้ default login “admin” username ให้เปลี่ยนใหม่- และสร้าง .htaccess ที่ root directory กำหนดตามต้องการ เช่น 

# BEGIN WordPress.
# END WordPress
#Protect config file

<Files wp-config.php>          
order allow,deny          
deny from all
</Files>

#Restrict Admin Access         
order deny, allow         
allow from <your static IP address>         
deny from all

เท่านี้ก็มีแต่ IP คุณเท่านั้นแล้วที่เข้าถึง /wp-admin ได้ครับ

6. Protect Server & Security Plugin

อย่าปล่อยให้คอมเม้นท์ห่วยๆ (spams) สร้างความลำคานและเสีย Branding คอนเทนต์ดีๆ 
ปกป้องเซิร์ฟวเวอร์และเว็บด้วย Cloudflare + hCaptcha หรือ Google Captcha (reCAPTCHA)
และหลีกเลี่ยงการติดตั้งปลั๊กอินฟรีพวก Security Plugin หรือ Premium แบบควักเงินซื้อเพราะการใช้ปลั๊กอินพวกนี้เป็นการเพิ่มภาระให้กับ PHP ที่จะไปกิน resource ทำให้เซิร์ฟเวอร์รับงานเพิ่มส่วนใหญ่ก็จะใช้พวก OpenResty ทำ 2FA แทนไปเลย หรือควักเงินซื้อแค่ Cloudflare ก็เพียงพอแล้วครับ

7. Two-Factor Authentication (2FA) โดยไม่ต้องมีรหัสผ่าน

ป้องกัน (/wp-admin) ด้วย 2FA ซึ่งเมื่อก่อนหลาย ๆ คนอาจจะเคยใช้พวก Account Kit ที่ให้บริการโดย Facebook แต่ปัจจุบันได้ถูกยกเลิยใช้งานสำหรับนักพัฒนาไปแล้วและนักพัฒนา WordPress ก็หันมาใช้ Google Authenticator แทน

จากข้อ (5) เราสามารถใช้ระบบ 2FA ด้วย Google Authenticator เป็นออปชันเสริมเพื่อ Protect หน้า Dashboard ให้ปลอดภัยมากขึ้นได้ด้วยโดยต้องยืนยันตัวตนผ่าน 2FA ของ Authenticator ซึ่งให้บริการโดย Google เพื่อทำหน้าที่ตรวจสอบสิทธิ์ก่อนจะเข้ามาถึงหน้า Dashboard ของ WordPress ครับดาวน์โหลดปลั๊กอินได้ที่นี่: Google Authenticator

คำถาม: ไม่ติดตั้งปลั๊กอินได้ไหม?

เพราะเป็นการไปเพิ่มภาระให้กับ php ลองนึกสภาพดูว่าหากมี requests เป็นแสน ๆ เซิร์ฟเวอร์คงเดี้ยงแน่นอนครับแต่หากเป็นบริการ Enterprise Hosting เขาจะใช้ NGINX + Lua + OpenResty (Lua-Resty-WAF) ทำให้แม้มี Hacker ยิง requests เข้ามาเป็นแสน เซิร์ฟเวอร์ก็ไม่ได้รับผลกระทบใด ๆ 

เช่น  GridPane stack หรือ Cloudflare’s WAF จะเห็นได้ว่าเราไม่จำเป็นต้องติดตั้งปลั๊กอิน 2FA (แต่กำหนด username/password เป็น admin/1234xyz อันนี้ไม่ว่า Stack ไหนก็ช่วยไม่ได้นะครับ 55++)

8. Protect Brute Force 

หลีกเลี่ยงการใช้ปลั๊กอินพวก BrutePretect ของฟรีต่าง ๆ แนะนำใช้ Cloudflare และ CDN

9. Backup / Restore 

หากใช้ Public Cloud ก็ใช้ schedule backup/snapshot ได้เลยไม่แนะนำวิธี Manual พวกเขียนสคริปต์ tar หรือ export database note ในข้อนี้ขึ้นอยู่กับ Hosting ของแต่ล่ะคน บางคนใช้ Dedicated server, VPS, Cloud hosting เป็นต้น.

10. ทำ  Full Page Caching เพื่อประสิทธิภาพสูงสุด

ทำไง? ให้เว็บเร็วขึ้นอย่างน่าตกใจ!

สำหรับคนใช้ WordPress หลาย ๆ คนที่ optimize ลำดับแรก ๆ จะคิดถึงแต่เรื่อง Caching
แนะนำทำแคชในระดับเซิร์ฟเวอร์ แทนการติดตั้ง caching plugin
ติดตั้งแค่ Redis ทำ Object Cache + LiteSpeed + LSCache ก็เพียงพอล่ะครับ (หรือ NGINX + SR Cache) ลืมซะปลั๊กอินฟรี ๆ พวกนี้ เช่น W3 Total Cache, WP Super Cache, WP Rocket, WP Fastest Cache. 

image credit: pagely

source: Learn Complete WordPress Security from Scratch

Scroll to top