วิธีตั้งรหัสผ่านป้องกัน wp-admin ใน WordPress
ทำไมต้องตั้งรหัสผ่านป้องกันไดเร็กทอรี wp-admin?
ไดเร็กทอรี wp-admin เป็นศูนย์กลางในการจัดการเว็บไซต์ WordPress ของคุณ ไม่ว่าจะเป็นการเขียนบทความ ตั้งค่าธีม ติดตั้งปลั๊กอิน หรือปรับแต่งการทำงานของเว็บไซต์ ทำให้เป็นเป้าหมายหลักของแฮกเกอร์ที่พยายามเข้าถึงโดยใช้การโจมตีแบบ brute force
การตั้งรหัสผ่านเพื่อป้องกันไดเร็กทอรี wp-admin เป็นอีกหนึ่งวิธีที่ช่วยเพิ่มความปลอดภัยให้กับเว็บไซต์ โดยผู้ที่ต้องการเข้าถึงส่วนนี้จะต้องป้อนชื่อผู้ใช้และรหัสผ่านก่อนเข้าสู่หน้าล็อกอินของ WordPress

วิธีที่ 1: ตั้งรหัสผ่านป้องกัน wp-admin ผ่าน cPanel (แนะนำ)
1. เข้าสู่ระบบ cPanel ของผู้ให้บริการโฮสติ้งของคุณ
2. ไปที่ “Directory Privacy” ในส่วนของ “Files”
3. ค้นหาไดเร็กทอรี wp-admin
- คลิกที่โฟลเดอร์ public_html (หรือโฟลเดอร์หลักของเว็บไซต์คุณ)
- คลิกโฟลเดอร์ที่ตรงกับชื่อโดเมนของเว็บไซต์
- เลือกโฟลเดอร์ wp-admin แล้วคลิก “Edit”
4. เปิดใช้งานการตั้งรหัสผ่าน
- ติ๊กที่ “Password protect this directory”
- ตั้งชื่อไดเร็กทอรี (เช่น “Admin Area”)
- คลิก “Save”
5. ตั้งชื่อผู้ใช้และรหัสผ่านสำหรับการเข้าถึง
- ป้อนชื่อผู้ใช้และรหัสผ่านที่ต้องการ
- บันทึกข้อมูลนี้ไว้ในที่ปลอดภัย (เช่น แอปจัดเก็บรหัสผ่าน)
- คลิก “Save”
ตอนนี้ เมื่อมีผู้พยายามเข้าถึงไดเร็กทอรี wp-admin ระบบจะขอให้ป้อนชื่อผู้ใช้และรหัสผ่านก่อนเข้าสู่หน้าล็อกอินของ WordPress
วิธีที่ 2: ตั้งรหัสผ่านป้องกัน wp-admin ด้วยโค้ด (สำหรับผู้ใช้ขั้นสูง)
หากโฮสติ้งของคุณไม่มีตัวเลือก “Directory Privacy” คุณสามารถตั้งค่าด้วยไฟล์ .htaccess และ .htpasswd
1. สร้างไฟล์ .htaccess
เปิดโปรแกรมแก้ไขข้อความ (เช่น Notepad) และสร้างไฟล์ชื่อ .htaccess โดยเพิ่มโค้ดต่อไปนี้:
AuthName “Admins Only”
AuthUserFile /home/user/public_html/example.com/wp-admin/.htpasswd
AuthGroupFile /dev/null
AuthType basic
require user yourusername
หมายเหตุ:
- แก้ไข /home/user/public_html/example.com/wp-admin/.htpasswd ให้ตรงกับตำแหน่งที่คุณจะอัปโหลดไฟล์ .htpasswd
- เปลี่ยน yourusername เป็นชื่อผู้ใช้ที่คุณต้องการ
บันทึกไฟล์และอัปโหลดไปที่โฟลเดอร์ wp-admin
2. สร้างไฟล์ .htpasswd
ใช้ htpasswd generator (เช่น htpasswd generator ออนไลน์) เพื่อสร้างรหัสผ่านเข้ารหัส จากนั้นคัดลอกผลลัพธ์ที่ได้และบันทึกเป็นไฟล์ .htpasswd เช่น:
yourusername:$apr1$randomhashgenerated
อัปโหลดไฟล์ .htpasswd ไปยังโฟลเดอร์ wp-admin
ตอนนี้ เมื่อมีผู้พยายามเข้าถึงไดเร็กทอรี wp-admin ระบบจะขอให้ป้อนชื่อผู้ใช้และรหัสผ่านก่อนเข้าสู่หน้าล็อกอินของ WordPress
การแก้ปัญหาหากเกิดข้อผิดพลาด
1. Ajax หยุดทำงาน
บางปลั๊กอินของ WordPress ต้องใช้ Ajax ในการทำงาน หากพบว่า Ajax ไม่ทำงานหลังจากตั้งค่าการป้องกัน ให้เพิ่มโค้ดนี้ใน .htaccess ที่อยู่ใน wp-admin:
<Files admin-ajax.php>
Order allow,deny
Allow from all
Satisfy any
</Files>
2. Error 404 หรือ Too Many Redirects
หากพบข้อผิดพลาด “404 Not Found” หรือ “Too Many Redirects” ให้เปิดไฟล์ .htaccess หลักของเว็บไซต์ (ไม่ใช่ไฟล์ที่อัปโหลดไปยัง wp-admin) และเพิ่มโค้ดนี้ก่อนกฎของ WordPress:
ErrorDocument 401 default

การตั้งรหัสผ่านป้องกันไดเร็กทอรี wp-admin เป็นวิธีที่มีประสิทธิภาพในการเพิ่มความปลอดภัยให้กับเว็บไซต์ WordPress ของคุณ คุณสามารถเลือกใช้วิธีที่สะดวกที่สุด ไม่ว่าจะเป็นผ่าน cPanel หรือด้วยโค้ด .htaccess และ .htpasswd
หากคุณพบปัญหาในการตั้งค่าหรือมีข้อผิดพลาด คุณสามารถใช้โค้ดแก้ไขปัญหาที่แนะนำไว้ในบทความนี้เพื่อช่วยให้ระบบทำงานได้อย่างถูกต้อง