บทความ

Apache log rotation

ตอนนี้ Server ที่สำนักงานยัง run Apache2 บน Appserv การให้บริการต่าง ๆ เพิ่มขึ้นอย่างเห็นได้ชัด ไฟล์ที่เก็บ log ก็โตขึ้นตามไปด้วย โดยปกติแล้ว ก็จะตามอ่าน log ไฟล์ เป็นประจำ เพื่อดูว่ามีใครมาประทุษร้าย ด้านหลังหรือเปล่า แต่เนื่องจากยิ่งนานวันเข้าไฟล์ที่เก็บ log จะมีขนาดใหญ่ขึ้นทุกวันตามปริมาณการเข้าใช้งาน ทีนี้เวลาจะเปิดก็ยากเพราะไฟล์มันใหญ่มาก (ปัจจุบัน 47 Mb) วันนี้เลยเอาประสบการณ์การปรับแต่ง Apache2 ให้เก็บ Access log file แยกเป็นวันมานำเสนอ เทคนิคคือ การหมุน log เก็บแยกแต่ละวัน หรือ log rotation วิธีการของเราคือ การแก้ไขไฟล์ httpd.conf ซึ่งอยู่ในโฟลเดอร์ Apache2/conf บริเวณบรรทัดที่ 331 น่าจะเห็น ifmodule log_conf_module ซึ่งเป็นการบอกว่า ถ้า module log_conf ถูกเปิดใช้งาน ให้ทำตามคำสั่งที่อยู่ระหว่าง ifmodule ถึง /ifmodule เพื่อความง่าย ไม่ต้องคิดอะไรมาก ให้แทรก คำสั่งต่อไปนี้ไว้ก่อน /ifmodule LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\"" combined CustomLog "| bin/rotatelogs.exe C:/AppServ/Apache2.2/logs/...

เก็บตกแฮกเกอร์

รูปภาพ
เก็บตกเอาควันหลง หลังมีตัวป่วน ยุ่มย่ามอยู่แถว ๆ เว็ปเทคโนฯ และห้องเรียนทันข่าว คราวก่อนได้พูดไปแล้ว วันนี้มีโอกาส แวะไปเว็ป สพฐ. เห็นลิงค์ของห้องเรียนทันข่าวอยู่ด้วย เลยคลิก ไม่ต้องเสียเวลา ในลิงค์บอก http://www.newsclassroom.obec.go.th/ คิดว่าคงตั้งให้ redirect มาที่เว็ป http://www.techno.bopp.go.th/newsclassroom/ กลับไม่ใช่แฮะ ติดอยู่แค่หน้าเปล่า ๆ ว่าง ๆ firebug รายงานว่ามีโค้ดผิดพลาดอยู่ ด้วยความซนก็เหมือนเดิมครับ คลิกเข้าไปดูเสียหน่อย จากรูปเลยได้เห็นว่า hacker มาจากไหน... ลิงค์ คือ http://domain31.ru/ad/show.js?c=CI-002643-3&s=www.newsclassroom.obec.go.th คล้าย ๆ กับการประกาศศักดาแบบกลาย ๆ ว่า เว็ปนี้เป็นฝีมือฉันนะ เสร็จฉันแล้วอะไรประมาณนั้น แต่สุดท้ายไอ้เจ้าตัวเว็ปเองเหมือนกับโดนถล่มเช่นกัน เพราะติดป้าย ว่ากำลังก่อสร้างใหม่ 5555

รวมเครื่องมือเก็บ log file ตอน 2

รูปภาพ
คราวที่แล้วแนะนำโปรแกรมสำหรับระบบปฏิบัติการ Linux วันนี้เอาตัวอย่างจริง ที่ใช้อยู่จริง ๆ มาเล่าสู่กันฟังครับ ที่สำนักงานใช้ FileZilla Server ในการบริการ FTP สมาชิกที่ได้ account ไป มีไม่มากนัก แต่เพื่อความปลอดภัย ก็จำเป็นต้องเก็บ log file สำหรับ FTP ไว้ 90 วันอยู่ดี มาดูวิธีตั้งค่ากันครับ ที่หน้าต่างตั้งค่า... คลิกที่ Logging -> Enable logging to file จากนั้นก็ตั้งค่าตามภาพ ผมเก็บไว้ 91 วัน แถมให้อีกวันหนึ่ง พอใจไหม? สำหรับ Apache web server เดี๋ยวมาต่อตอนหน้าครับ

รวมเครื่องมือเก็บ log file

พรบ.คอมพิวเตอร์ฉบับใหม่จะเริ่มมีผล (อย่างเป็นทางการ) ตั้งแต่วันที่ 24 สิงหาคม เป็นต้นไป ไม่ทราบว่าพวกเราชาว Open Source เตรียมรับมือกันบ้างหรือยัง เรามาร่วมนำเสนอเครื่องมือสำหรับ เก็บ Log file แบบฉบับของ Open Source กันดีกว่าครับ ขอเริ่มจาก plawan ก่อน เพราะอยู่ใกล้มือที่สุด 1. Plawan Central Log เว็ปไซต์ http://www.plawan.com คู่มือติดตั้ง http://www.plawan.com/download/PlawanCentralLog.pdf ข้อมูลทางเทคนิค : ระบบของปลาวาฬ ใช้ระบบปฏิบัติการ Linux ubuntu เป็นฐาน ระบบรวบรวม log ใช้ ebox-platform การเก็บ log จะอ่านข้อมูลจาก syslog เข้าไปเก็บยังฐานข้อมูลอีกที การติดตั้งสุดแสนง่ายดายครับ ใครที่เคยใช้ ubuntu มาแล้วไม่น่าจะต้องเปลี่ยนแปลงหรือเรียนรู้อะไรเพิ่มเติมเลย คุณสมบัติ : • ระบบเก็บรักษาข้อมูลจราจรทางคอมพิวเตอร์ (Traffic Data) ตามพรบ.ว่าด้วยการกระทำความผิดเกี่ยวกับคอมพิวเตอร์ พ.ศ. 2550 • ระบบพิสูจน์การมีตัวตนของผู้ใช้คอมพิวเตอร์โดยระบุ Physical Address (Identification and Authentication System) • ระบบสําหรับการกําหนดเวลาให้ตรงกับเวลาจริงโดยอิงเวลาสากล • ระบบสกัดกั้นการเข้าถึง - เว็บไซต์...

ตอนที่ 8 Hello World ของฉัน!!!

ตอนที่ 8 Hello World ของฉัน!!! เอาหละครับ ลืม HelloWorld ต้นฉบับไปได้เลย เพราะมันมีคอมเม้นต์เต็มไปหมด เราจะแก้ไขไฟล์ HelloWorld.html ขึ้นใหม่ทั้งหมดครับ จุดประสงค์คือ แก้ไขไฟล์ HelloWorld.html เพิ่มแสดงข้อความของเราเอง และเตรียมการสำหรับการใช้งาน Ajax เบื้องต้น 1. เปิดไฟล์ HelloWorld.html เข้ามาแก้ไข ลบข้อมูลเดิมออกให้หมดแล้วใส่โค้ดนี้ลงไปครับ <html> <head> <title>สวัสดีชาวโลก</title> <link href="sample.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="AIRAliases.js"></script> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> </head> <body style="font-family: Tahoma"> <div id="testMooTools" >Hello MooTools</div> <div id ="AjaxResult"></div> </body> ...

ตอนที่ 7 Hello World Part II

รูปภาพ
ตอนนี้มาดูงานจริงของเรากันดีกว่า ไม่มีอะไรซับซ้อนครับเพียงแค่ run และ debug โปรแกรมนิดหน่อยเท่านั้น 1. คิดว่าตอนนี้เราคงได้ Project HelloWorld กันแล้ว อย่าเพิ่งไปแก้อะไรนะครับ เราจะเริ่ม run โปรแกรม โดยที่ tool bar คลิกที่ Run HelloWorld ถ้าไม่เห็นผลให้คลิกที่ลูกศรชี้ลงติดกับปุ่ม Run นั่นแหละครับ เลือก Run... จะมีไดอะล็อกบ็อกให้เลือก ว่าต้อง run Project ของเราอย่างไร 2. เมื่อ run project HelloWorld แล้ว จะยังไม่เห็นผลอะไร สาเหตุเนื่องจากโปรแกรมของเรามีข้อผิดพลาด โดยสังเกตบริเวณด้านล่าง ที่แถบ console จะเห็นข้อผิดพลาดดังภาพ ข้อผิดพลาดแจ้งว่าข้อกำหนดใน application.xml มีบางอย่างไม่สอดคล้องกับ runtime ในที่นี้ส่วนใหญ่จะเกิดจากการระบุรุ่นของ runtime ผิด 3. การแก้ไขคือ ให้เราลากไฟล์ application.xml มาตรงกลางของจอ ซึ่งหมายถึงการเปิดไฟล์ application.xml ขึ้นมาแก้ไข ให้แก้บรรทัดที่ 2 เกือบ ท้ายบรรทัด แก้จาก "1.1" เป็น "1.0" บันทึกไฟล์แล้ว run ดูอีกที 4. จะได้โปรแกรมแรกที่เราแทบไม่ได้เขียนอะไรเลยดังภาพครับ โดยที่ ปุ่มหมายเลข 1 เรียกใช้งานไฟล์ที่อยู่ในเครื่องธรรมดา ปุ่มหมายเ...

โดนเข้าไปหนึ่งดอก (เหมือนกัน)

รูปภาพ
วันนี้ตื่นแต่เช้า ต้องรีบจัดการเจ้าตัวน้อย ก่อนที่จะไปร่วมอบรม เรื่อง ICT เพื่อการเรียนการสอน เหมือนเคยครับ ตื่นมาก็เช็คเมล์ ตรวจเว็ปที่ดูแลอยู่ และเว็ปที่สนใจ หนึ่งในเว็ปที่แวะไปก็ "ห้องเรียนทันข่าว" หมู่นี้ได้ข่าวเว็ปที่ใช้ joomla โดน Hack บ่อยมาก หากไม่อัปเกรตเวอร์ชัน อย่างที่ได้พูดไปในบล็อกที่แล้ว ด้วยความที่ไม่รู้ว่าตัวห้องเรียนทันข่าวได้รับการอัปเกรตหรือไม่ เลยต้องสำรองงานเขียนของตัวเอง เพื่อความปลอดภัย เจออะไรแหม่ง ๆ นะ คือไม่รู้ว่าใครกำลังแก้งานของผมอยู่ หรือจะมีมือดีเข้ามาแล้วเนี่ย!!!! (สังเกตตรงหัวด้านบนผมพยายามจะแก้ข้อมูล ปรากฎว่าไม่สามารถทำได้) ย้อนกลับไปดูอีกหนึ่งขั้นเป็นเว็ปของ สทร. ปรากฎว่าไม่เหลือครับ โดนหนักเอาการทีเดียว แฮกเกอร์เข้าไปเปลี่ยนทั้งหน้าเว็ป มีความรู้ในการเขียนเว็ปดีทีเดียว สังเกตดูง่าย ๆ คือ เขียนเว็ปแบบไม่มี error แม้แต่น้อย มันไม่ธรรมดาจริง ๆ เมื่อเข้าไปถึง root ได้แล้วเว็ปในเครือที่ต่อท้ายเว็ป สทร. ก็ไม่เหลือหละครับ เร่งสำรองข้อมูลโดยด่วนเลย... เห็นแบบนี้แล้วท่านคงจะเห็นความสำคัญของการเก็บ log file ตาม พรบ.ใหม่ ในการค้นหาตัวผู้กระทำความผิด...