พื้นฐาน Joomla

สิ่งที่ Joomla ต้องการ
    คนเรายังมีปัจจัย 4 แล้ว Joomla จะไม่มีได้ยังไง (เกี่ยวกันไหมเนี่ย) Jooml...

เทคนิค Joomla

Operation not permitted
Joomla นั้น จะมีการใช้งานบางอย่าง ที่ต้องเก็บค่าบันทึกต่าง ๆ ลงในไฟล์โดยตรง เช่น param.ini , c...

แนะนำ Extension

URL ภาษาไทย ด้วย Unicode Slugs
คงจะเห็นแล้วล่ะว่า เว็บของผมนั้นมี URL เป็นภาษาไทย ซึ่งจริง ๆ แล้วหากลอง Copy ดู จะเห็นว่ามันไ...
( 10 Votes )
kareebu Secureเทคนิคที่เคยเผยแพร่วิธีการป้องกัน Directory administrator ไปแล้วด้วยการสร้างรหัสผ่านให้กับ Directory แต่จะดีกว่าไหม ที่ป้องกันโดยการ ทำอย่างไรก็ไม่เห็นหน้า administrator ได้ ซึ่งมีแต่เราเจ้าของเว็บคนเดียวเท่านั้นที่สามารถเข้าถึงหน้า administrator ได้

กาลครั้งหนึ่ง เคยมีปลั๊กอินที่ชื่อว่า jSecure ซึ่งทำหน้าที่ปกป้อง administrator ไว้ โดยการใส่รหัสผ่านไว้ในตัวปลั๊กอิน ซึ่งทำให้เมื่อมีการพิมพ์ URL /administrator เฉย ๆ ก็จะไม่สามารถเห็นหน้า administrator ได้เลย และจะโดน Redirect กลับไปหน้าเว็บ แต่ทว่า ปลั๊กอินดังกล่าว ปัจจุบันดันผันตัวเองกลายเป็นผู้ขายซะนี่ พูดง่าย ๆ คือ jSecure ต้องซื้อเอาครับ

แต่ฟ้าปราณี สวรรค์โปรดส่งปลั๊กอินตัวน้องลงมาให้ยังโลก Joomla ปลั๊กอินตัวนี้จึงมีชื่อว่า kSecure ครับ ฮา , จริง ๆ 2 ปลั๊กอินนี้ไม่ได้เป็นพี่เป็นน้องกันหรอกครับ แถมผู้พัฒนาก็ไม่ใช่ค่ายเดียวกัน แต่ความสามารถเหมือนกันเลยครับ ที่สำคัญ ตัวนี้ฟรีด้วยครับ สามารถปกป้อง /administrator ของคุณได้เช่นเดียวกัน ชื่อเต็มของเจ้าปลั๊กอินตัวนี้ก็คือ kareebu Secure ลองไปดูพารามิเตอร์กันครับ

ซ่อน administrator ด้วย ksecure

เห็นจากภาพก็เดาไม่ยากว่าใช้อย่างไร เพียงแค่ปรับ Enable เป็น Yes ทั้งซ้าย และขวา จากนั้นก็ใส่รหัสผ่านลงในช่อง Password
สำหรับในส่วนของ Mode นั้น มีให้เลือก 2 โหมดคือ

HTTP Authentication เมื่อร้องขอ /administrator ก็จะปรากฏ Dialog หน้าต่างให้ใส่รหัสผ่านขึ้นมา แต่จากการทดสอบของผมเอง ผมยังไม่เห็นมีอะไรเด้งขึ้นมาให้ใส่รหัสผ่านเลยครับ แถมเข้าหน้า administrator เองไม่ได้อีกด้วย แฮะ ๆ ผมก็เลยขอไม่เลือกใช้โหมดนี้แล้วกันนะครับ

Compatibility เมื่อเลือกโหมดนี้แล้ว กดบันทึก ก็เป็นอันเรียบร้อยแล้วล่ะครับ วิธีใช้งานก็คือ เมื่อเราต้องการเข้าถึง Directory administrator เราจะต้องพิมพ์ /administrator/?password ครับ ซึ่ง password ก็คือรหัสผ่านที่คุณได้พิมพ์ลงในช่อง Password นั่นเอง แต่ถ้าหากคุณพิมพ์ /administrator เพียงแค่นี้ คุณก็จะถูกพาไปยังหน้าเว็บทันทีครับ จะไม่เห็นหน้า administrator เลย ทำให้เมื่อผู้ใช้งานทั่วไปที่คิดอยากจะเห็นหน้า administrator ของเรานั้นไม่สามารถทำได้ครับ เพราะเค้าไม่รู้รหัสผ่านที่เราตั้งไว้นั่นเอง

จุดที่น่าสนใจก็คือ หากเราตั้งรหัสผ่านที่ง่ายเกินไป เช่น 12345 จะทำให้การใช้งานปลั๊กอินตัวนี้มีปัญหาทันทีครับ เช่น หากเราตั้งรหัสผ่านไว้ 12345 แล้วทำการพิมพ์ URL /administrator/?12345 ก็จะพบกับข้อความนี้

Illegal variable _files or _env or _get or _post  or _cookie or _server or _session or globals  passed to script.

ทำให้ไม่สามารถใช้งานปลั๊กอินได้ครับ เราจะต้องตั้งรหัสผ่านที่มีความยากขึ้นกว่านี้อีกครับ หากเป็นตัวอักษรก็ต้องไม่สั้นเกินไป หรือเป็นตัวอักษรที่เดาง่ายเกินไป เช่น ABC แบบนี้ไม่แนะนำ หรือเป็นตัวซ้ำ ๆ กันเกินไป เช่น AAA แบบนี้ก็ไม่แนะนำเหมือนกัน , หากเป็นตัวเลข ก็ไม่ใช่ตัวเลขที่เรียงกันง่ายเกินไป เหมือนในตัวอย่าง 123456 แบบนี้ก็ไม่แนะนำ , ควรจะตั้งรหัสผ่านที่มีความซับซ้อนขึ้น เช่น ตัวเลขผสมตัวอักษร หรือ ข้อความที่มีคำคาดเดายากขึ้นครับ เพราะไม่งั้น kSecure จะไม่ให้ผ่าน และกลับกลายเป็นว่า เราจะเข้าแอดมินไม่ได้ซะเอง

แต่หากทำไปแล้ว เราซึ่งทำให้เราเข้าหน้า administrator ไม่ได้ วิธีแก้ไขก็คือ ให้เราทำการใช้เครื่องมือ phpMyAdmin ครับ เข้าไปยังตาราง prefix_plugins แล้วหาแถวข้อมูลที่มีคำว่า kareebu Secure ครับ กดปุ่มรูปดินสอเพื่อทำการแก้ไข

ซ่อน administrator ด้วย ksecure

เมื่อกดเข้ามาแล้ว ก็เลื่อนลงมาในฟิลด์ params ครับ จะพบกับพารามิเตอร์ที่เราได้ตั้งค่าไป

ซ่อน administrator ด้วย ksecure

เลือกเอาครับว่าจะเปลี่ยนค่า enabled เป็น 0 ซึ่งก็คือปิดการใช้งานปลั๊กอิน เพื่อที่จะให้เราสามารถเข้าหน้า administrator ได้ก่อน หรือ เปลี่ยนรหัสผ่านตรงนี้ซะเลย ซึ่งก็ต้องไม่ลืมว่า ควรจะเป็นรหัสผ่านที่คาดเดายาก และไม่ง่ายเกินไปด้วยนะครับ เมื่อแก้ไขเสร็จแล้วก็กดปุ่ม Go ครับ

ก็เป็นปลั๊กอินที่น่าสนใจอีกตัวหนึ่ง ทำให้สามารถปกป้องหน้า administrator ได้อย่างดีทีเดียว คลาสสิคไปอีกแบบครับ

ซ่อน administrator ด้วย kSecure