
File Permission คือการกำหนดสิทธิ์การอ่าน เขียน และรันไฟล์บนเซิร์ฟเวอร์ Linux/Unix ซึ่งเป็นพื้นฐานสำคัญของความปลอดภัย WordPress ที่เจ้าของเว็บหลายคนมองข้าม หาก Permission ตั้งหลวมเกินไป แฮกเกอร์หรือสคริปต์อันตรายอาจแก้ไขไฟล์ Theme, Plugin หรือแม้แต่ wp-config.php ได้โดยตรง ส่งผลให้เว็บถูกฝัง Malware โดยที่คุณไม่รู้ตัว บทความนี้จะอธิบายค่า Permission ที่ถูกต้อง วิธีตรวจสอบ และวิธีแก้ไขแบบทีละขั้นตอน
File Permission คืออะไร และทำไมถึงสำคัญใน WordPress
ระบบ Linux ใช้ตัวเลขสามหลักแทนสิทธิ์ของสามกลุ่ม ได้แก่ Owner (เจ้าของไฟล์), Group (กลุ่ม), และ Others (คนอื่น) โดยแต่ละหลักรวมค่าดังนี้:
- 4 = Read (อ่านได้)
- 2 = Write (เขียนได้)
- 1 = Execute (รันได้)
ตัวอย่างเช่น 755 หมายถึง Owner รัน/อ่าน/เขียนได้ ส่วน Group และ Others อ่านและรันได้อย่างเดียว ส่วน 777 คือทุกคนทำได้ทุกอย่าง ซึ่งอันตรายมากในสภาพแวดล้อม Shared Hosting เพราะผู้ใช้รายอื่นหรือสคริปต์ภายนอกสามารถแก้ไขไฟล์ของคุณได้

ค่า File Permission ที่ WordPress แนะนำ
WordPress มีคำแนะนำอย่างเป็นทางการสำหรับค่า Permission ที่ปลอดภัย ดังนี้:
- โฟลเดอร์ทั่วไป เช่น
wp-content/,wp-includes/และโฟลเดอร์อื่น ๆ ใน WordPress root ตั้งค่าเป็น755 - ไฟล์ทั่วไป เช่น
.php,.js,.cssตั้งค่าเป็น644 wp-config.phpตั้งค่าเป็น600หรือ640เพื่อไม่ให้ผู้ใช้อื่นอ่านได้เลย เนื่องจากไฟล์นี้มีข้อมูล Database Credentials.htaccessตั้งค่าเป็น644เพื่อให้ Apache อ่านได้แต่ป้องกันการแก้ไขจากภายนอก- โฟลเดอร์
wp-content/uploads/ตั้งค่าเป็น755เพียงพอ ไม่จำเป็นต้องเป็น777
777 บนโฟลเดอร์หรือไฟล์ใด ๆ ถือเป็น Red Flag ทันที ควรแก้ไขก่อนเป็นอันดับแรก โดยเฉพาะบน Shared Hosting ที่มีผู้ใช้หลายคนในระบบเดียวกันวิธีตรวจสอบ File Permission ปัจจุบัน
มีหลายวิธีในการตรวจสอบ Permission ที่ใช้งานอยู่จริง:
ผ่าน FTP/SFTP (Filezilla หรือโปรแกรมอื่น)
- เชื่อมต่อ FTP/SFTP เข้าสู่เซิร์ฟเวอร์
- คลิกขวาที่ไฟล์หรือโฟลเดอร์ที่ต้องการ เลือก File Permissions หรือ Properties
- ตัวเลขที่ปรากฏคือค่า Permission ปัจจุบัน
ผ่าน SSH (สำหรับผู้มีสิทธิ์เข้าถึง)
- ใช้คำสั่ง
ls -laในโฟลเดอร์ WordPress เพื่อดู Permission ทั้งหมด - ใช้คำสั่ง
find . -type f -perm 777เพื่อค้นหาไฟล์ที่มี Permission777ทั้งหมด - ใช้
find . -type d -perm 777เพื่อค้นหาโฟลเดอร์ที่มี Permission777
ผ่าน cPanel File Manager
- เข้า cPanel → File Manager → นำทางไปที่โฟลเดอร์ WordPress
- คลิกขวาที่ไฟล์/โฟลเดอร์ → เลือก Change Permissions

วิธีแก้ไข File Permission ทีละขั้นตอน
หากพบว่า Permission ผิดปกติ ให้แก้ไขตามขั้นตอนต่อไปนี้:
วิธีที่ 1: ใช้ SSH Command (เร็วและครอบคลุมที่สุด)
- รันคำสั่งนี้เพื่อตั้งค่าโฟลเดอร์ทั้งหมดเป็น
755:find /path/to/wordpress -type d -exec chmod 755 {} ; - รันคำสั่งนี้เพื่อตั้งค่าไฟล์ทั้งหมดเป็น
644:find /path/to/wordpress -type f -exec chmod 644 {} ; - จากนั้นตั้งค่า
wp-config.phpแยกต่างหาก:chmod 600 /path/to/wordpress/wp-config.php
วิธีที่ 2: ใช้ FTP/SFTP ทีละไฟล์
- คลิกขวาที่ไฟล์/โฟลเดอร์ → File Permissions → ใส่ตัวเลขที่ต้องการ → กด OK
- หากต้องการเปลี่ยนหลายไฟล์พร้อมกัน ให้เลือกหลายไฟล์แล้วคลิกขวาพร้อมกัน
การทำตามขั้นตอนนี้ถือเป็นส่วนหนึ่งของ Website Security Hardening ซึ่งช่วยลดพื้นที่โจมตีของแฮกเกอร์ได้อย่างมีนัยสำคัญ
ข้อผิดพลาดที่พบบ่อยและวิธีหลีกเลี่ยง
- ตั้ง
wp-content/uploads/เป็น777เพราะคิดว่า WordPress ต้องการสิทธิ์เขียน — ในความเป็นจริง755เพียงพอ และ Web Server จะเป็น Owner อยู่แล้ว - ลืมตรวจสอบหลังติดตั้ง Plugin หรือ Theme ใหม่ — บาง Plugin เปลี่ยน Permission โดยอัตโนมัติ ควรตรวจสอบหลังติดตั้งทุกครั้ง
- ตั้ง
wp-config.phpเป็น644ทำให้ผู้ใช้อื่นในระบบอ่านรหัสผ่านฐานข้อมูลได้ ควรเป็น600 - ไม่ตรวจสอบ
.htaccessหาก.htaccessถูกแก้ไขได้โดยใคร ก็อาจฝัง Redirect อันตรายหรือบล็อกการเข้าถึงได้
ปัญหา Permission มักเกิดร่วมกับช่องโหว่อื่น ๆ ดูรายละเอียดเพิ่มเติมได้ใน Checklist ความปลอดภัย WordPress ฉบับเจ้าของเว็บ และ วิธีป้องกัน WordPress โดนแฮกเบื้องต้น
เมื่อไหร่ควรให้ผู้เชี่ยวชาญเข้ามาช่วย
การแก้ไข File Permission ด้วยตัวเองอาจทำให้เว็บล่มได้หากตั้งค่าผิดพลาด เช่น ตั้ง Permission โฟลเดอร์ wp-admin/ เป็น 700 แล้ว Web Server เข้าไม่ได้ ควรพิจารณาติดต่อผู้เชี่ยวชาญในกรณีดังนี้:
- พบไฟล์แปลกปลอมหรือ Malware ในโฟลเดอร์ WordPress และไม่แน่ใจว่าจะแก้ไขไฟล์ใดบ้าง
- เว็บล่มหลังจากเปลี่ยน Permission และไม่สามารถเข้า Admin ได้
- ต้องการ Audit Permission ทั้งเซิร์ฟเวอร์พร้อมกับ Hardening รายการอื่น ๆ
- ใช้ Managed Hosting หรือ Cloud Server ที่มีโครงสร้าง Permission แตกต่างจาก Shared Hosting ทั่วไป
ทีมงาน WP Doctor Thailand ให้บริการ เสริมความปลอดภัย WordPress ครอบคลุมการตรวจสอบและแก้ไข File Permission พร้อมกับมาตรการ Hardening อื่น ๆ อีกด้วย หากคุณไม่แน่ใจว่าเว็บของคุณปลอดภัยพอ ลองอ่าน Security Plugin จำเป็นไหมสำหรับ WordPress ประกอบด้วย
คำถามที่พบบ่อย
ค่า File Permission ที่ปลอดภัยที่สุดสำหรับ WordPress คือเท่าไหร่?
โฟลเดอร์ควรเป็น 755 และไฟล์ควรเป็น 644 ส่วน wp-config.php ควรเป็น 600 เพื่อป้องกันไม่ให้ผู้ใช้อื่นในระบบอ่านข้อมูล Database Credentials ได้
ทำไม WordPress ถึงต้องการสิทธิ์เขียนโฟลเดอร์ uploads?
WordPress ต้องการสิทธิ์เขียนในโฟลเดอร์ wp-content/uploads/ เพื่ออัปโหลดรูปภาพและไฟล์มีเดีย แต่ค่า 755 ก็เพียงพอแล้วหากเจ้าของไฟล์เป็น Web Server User (เช่น www-data หรือ apache) ไม่จำเป็นต้องตั้งเป็น 777
ค่า 777 อันตรายจริงไหม และเมื่อไหร่ถึงใช้ได้?
ค่า 777 อันตรายมากบน Shared Hosting เพราะทุกคนในระบบแก้ไขไฟล์ได้ โดยทั่วไปไม่มีความจำเป็นต้องใช้ค่านี้ใน WordPress เลย หากมีการตั้งค่าเป็น 777 ให้รีบเปลี่ยนทันที
หลังเปลี่ยน File Permission แล้วเว็บล่ม ต้องทำอย่างไร?
ให้ลองเข้า FTP หรือ cPanel File Manager แล้วเปลี่ยน Permission กลับเป็นค่าที่ถูกต้อง (755 สำหรับโฟลเดอร์ 644 สำหรับไฟล์) หากเข้าไม่ได้เลยควรติดต่อ Hosting Support หรือผู้เชี่ยวชาญทันที
