Being attacked ?

สัปดาห์ที่ผ่านมา มีคน/โปรแกรม/etc. พยายามจะ access root/system/daemon accounts ทาง ssh บ่อยครั้งขึ้น .. สังเกตพบว่าเกิดกับทุกๆ เซิร์ฟเวอร์ที่ดูแลอยู่ (กรุงเทพฯ ขอนแก่น ราชบุรี) ซึ่งไม่มีข้อมูลอะไรบอกว่าเซิร์ฟเวอร์ทั้งหมดนี้มีอะไรเกี่ยวข้องกัน เลยเดาว่าน่าจะโจมตีแบบสุ่ม ไม่ได้จำเพาะเจาะจงว่าจะเป็นใคร … pattern การโจมตีเหมือนกันๆ (เข้าใจว่าใช้โปรแกรมหรือสคริปต์) .. ที่ผ่านมา IP ยังไม่ซ้ำกัน .. whois แล้วมาจาก ISP คนละแห่งกัน .. แต่ที่น่าสนใจคือ ทุก IP มาจาก “เกาหลีใต้” .. :(

Oct 13 03:31:47 ns sshd[89811]: Failed password for nobody from 220.76.147.222 port 49508 ssh2
Oct 13 03:31:54 ns sshd[89817]: Failed password for root from 220.76.147.222 port 49636 ssh2
Oct 13 03:31:57 ns sshd[89819]: Failed password for root from 220.76.147.222 port 49673 ssh2
Oct 13 03:32:00 ns sshd[89827]: Failed password for root from 220.76.147.222 port 49716 ssh2
Oct 13 03:32:05 ns sshd[89831]: Failed password for root from 220.76.147.222 port 49750 ssh2
Oct 13 03:32:08 ns sshd[89833]: Failed password for root from 220.76.147.222 port 49818 ssh2
Oct 13 03:32:22 ns sshd[89843]: Failed password for www from 220.76.147.222 port 49992 ssh2
Oct 13 03:32:43 ns sshd[89859]: Failed password for mysql from 220.76.147.222 port 50289 ssh2
Oct 13 03:32:45 ns sshd[89861]: Failed password for operator from 220.76.147.222 port 50321 ssh2
...

จริงๆ log ยาวกว่านี้เยอะ (~70 ครั้ง/วัน) .. มีใครเจออุบัติการณ์แบบนี้บ้างเนี่ยะ ? .. เอาคืนซักเปรี้ยงดีมั้ย ? .. ลอล

มีเรื่องดีๆ มาฝาก

เพิ่งอ่าน นิยายเด่นในฉบับ ของ บางกอกรายสัปดาห์ จบ … ขอบคุณพี่หน่อยมากๆ ที่เอามาฝากกันในห้อง #tlwg … ระหว่างอ่าน น้ำตาไหลไปหลายรอบ ..

ถ้ายังไม่เ่คยอ่าน ก็ขอแนะนำครับ

.. เรื่องนี้ยาวประมาณ 6-8 ชั่วโมงอ่าน ..bookmark ไว้ได้เลย :D

Mail Client

โปรแกรมอ่านเมลเป็นโปรแกรมที่หาถูกใจได้ยากที่สุด บนลินุกซ์นี่เคยลองโปรแกรมอ่านเมลมาเป็นสิบตัว ตั้งแต่ pine, mutt, .. สุดท้ายก็มาลงที่ sylpheed ทำงานเร็ว กินหน่วยความจำก็น้อย ภาษาไทย ok บันทึกเป็น MH export เป็น mbox ได้ ใช้ GTK+ 1.x .. ระยะหลังๆ พยายามปรับเข้า GTK 2.x / GNOME 2.x เลยได้ตามหาโปรแกรมอ่านเมลอีกรอบ ..

  1. Balsa เป็นความหวังแรก เพราะค่อนข้าง lightweight แต่มันมีปัญหากับ SSL/TLS .. ลงทุนเอา fetchmail ไปโหลดเมลมาให้ Balsa อ่านจาก local mbox ก็ยังติดจุกจิกหลายเรื่อง ใช้อยู่ประมาณวันนึงก็ทนไม่ไหว ลบทิ้งไป .. balsa is broke :(
  2. Mozilla Mail … โอเคแหละ เสียที่กินหน่วยความจำเยอะ ตามสไตล์ Mozilla .. ใช้แล้วก็ยังไม่ถูกใจอยู่ดี (เรื่องมาก :P)
  3. Thunderbird .. โดยรวม ดูดี น่าใช้ ฟึเจอร์ครบเท่าที่ต้องการ .. พอ ps aux ดู VSZ/RSS แล้วแทบจะ rpm -e ซะเดี๋ยวนั้น .. โปรแกรมอ่านเมลไรฟะ virtual size ร้อยกว่าเม็ก .. บ้าป่าว .. นี่ขนาดเพิ่งใช้ มีเมลไม่ถึงห้าฉบับนะเนี่ยะ ..

สุดท้าย ก็มาใช้ Evolution จนได้ .. กินหน่วยความจำพอสมควร แต่ไม่บ้าเลือดเหมือน Tbird .. เวอร์ชัน 2.0.1 นี่ถอดชนวนระเบิดไปหลายจุด เท่าที่ใช้มาก็ยังไม่มีอาการแครชอย่างที่เคยเจอกับ 1.5.x/2.0.0 … แสดงผลภาษาไทยก็ ok … อืม คงลองใช้ดูสักวันสองวัน …

Shopping

สัปดาห์ก่อนโน้นออกตุนเสบียง ไปเจอลูกอมยี่ห้อ UNIX กับมาม่าต้มยำเส้นชาเขียว (- -‘) … สอยมาซะ

SCO จะฟ้องมั้ยวะเนี่ยะ ลอล .. (ที่จริงคนที่ฟ้องได้น่าจะเป็น Open Group ซึ่งถือสิทธิ์ TM ของ UNIX)

แกะมาม่าใส่ถ้วย .. (อันนี้ถ้วยบะหมี่เอฟเอฟ ขนาดกำลังพอดี มีฝาให้ด้วย)

เส้นมาม่าผสมชาเขียว …

สุกแล้ว รสต้มยำ มีแต่เครื่องปรุงกับ พริก ไม่ให้น้ำมัน พริกเผา .. กินแล้วก็ ok เอาอะไรมาก บะหมี่กึ่งสำเร็จรูป

It’s a ramdisk – not tmpfs !

แจ้งที่ผิด ของ blog เมื่อวานนะครับ .. สำหรับ udev จะให้ทำงานได้ต้อง enable ramdisk (CONFIG_BLK_DEV_RAM) ไม่ใช่ tmpfs .. และควรตั้ง Initial RAM disk support (CONFIG_BLK_DEV_INITRD) ด้วย .. :P

เริ่มทยอยทำ Extras packages สำหรับ TLE 7.0 แล้ว .. อยากคอมไพล์ด้วย GCC 3.4 ให้ได้ทั้งหมด (TLE 7.0 ใช้ GCC 3.4 เป็นตัวหลัก และ GCC 3.3 เป็นตัว compat.) บางแพ็กเกจก็คอมไพล์ยากเป็นบ้าทั้งที่ใช้ GCC 3.3 แล้วผ่านฉลุย …. GCC 3.4 มันคงเข้มงวดมากขึ้นแหละ โดยเฉพาะ C++

สองสามวันมานี้ #tlwg สนทนาธรรมกันบ่อย โยงไปถึงกลศาสตร์ควอนตัม (quantum mechanics) ด้วย .. ในบางมุมมองแล้ว ทั้งสองเรื่องเป็นการพยายามอธิบายสิ่งเดียวกันนั่นแหละ .. :)

g-v-m again

อย่างที่บอกไปวันก่อนเรื่อง gnome-volume-manager ว่ามันอาศัยการทำงานของโปรแกรมอื่นๆ อีกหลายตัว ซึ่งยุ่งๆ อยู่ประมาณนึงเหมือนกัน .. สมมติ ว่าเสียบ USB drive เข้ากับ USB port การทำงานจะประมาณนี้

usb -> kernel -> /sbin/hotplug -> udev -[dbus] -> hald – [dbus] -> g-v-m

เมื่อมีอุปกรณ์ใหม่ปรากฏในระบบ hotplug ในเคอร์เนลจะได้รับสัญญาณจากฮาร์ดแวร์ เคอร์เนลจะแจ้งเตือน userspace ผ่านทาง /sbin/hotplug .. สคริปต์ของ hotplug จะเรียกใช้ udev ซึ่งทำหน้าทีสร้างไฟล์ใน /dev เพื่อใช้ในการอ้างอิง USB drive จากนั้น HAL (daemon/agent) จะได้รับสัญญาณผ่านทาง D-BUS ว่ามีอุปกรณ์เพิ่มเข้ามาในระบบ .. HAL จะเป็นตัวแจ้งผ่านทาง D-BUS ไปยัง applications ต่างๆ เพื่อให้รู้ว่ามี USB drive ต่อพ่วงเข้ามา (สำหรับกรณีนี้ HAL จะทำหน้าที่ update /etc/fstab ด้วย) .. g-v-m ก็จะได้รับแจ้ง และทำงานตามคอนฟิกที่ผู้ใช้กำหนดไว้ (e.g., load kernel modules & mount USB drive)

สำหรับการติดตั้งใช้งาน จะวุ่นวายหน่อยก็ตรง udev ซึ่งจะควรจะทำงานเป็นอันดับแรกๆ ใน init scripts ตามหลัง sysfs ติดๆ (udev ต้องใช้ข้อมูลจาก sysfs ในการทำงาน) แปลว่า udev ต้องสามารถสร้างไฟล์ใน /dev ได้ก่อนที่จะ remount / เป็น read/write หลายๆ ดิสโตรจึงเลือกให้ udev ทำงานบน tmpfs แทนสตอเรจจริงๆ .. ใครที่คอมไพล์เคอร์เนลเองก็อย่าลืม enable tmpfs ไว้ด้วยเน้อะ

Linux TLE Logo

ดราฟต์โลโก้ ‘โลมา’ เป็น svg จากภาพบิตแม็พ 48×48 จุด .. ลอกอยู่พักใหญ่ก็เลิก วาดใหม่หมดเลยดีกว่า โดยให้ออกมาคล้ายๆ โลโก้เดิม จะได้ไม่ผิดสังเกตมาก .. ผลลัพธ์ออกมาเป็นแบบนี้:

ดูแล้วมั่วๆ พอสมควร แต่พอย่อเป็นไอคอนแล้วก็คงไม่เห็นความมั่วหรอกน่า :P

PS: ‘โลมา’ ไม่ใช่ ‘ปลาโลมา’.. โลโก้วาดบน Inkscape 0.39 / Aowthai

gnome-volume-manager

หนึ่งในฟีเจอร์ที่น่าสนใจของ GNOME 2.8 คือ gnome-volume-manager (g-v-m) ซึ่งช่วยให้ใช้งาน removeable storage ต่างๆ ได้ง่ายขึ้น เช่น เสียบ USB drive หรือแผ่นซีดีแล้ว mount ให้อัตโนมัติ แสดงไอคอนบนเดสก์ท็อปให้เลย หรือเสียบกล้องดิจิทัลก็จะเรียกโปรแกรมจัดการภาพถ่าย (e.g., gphoto, gthumb) ให้ โหลดแผ่น DVD แล้ว Xine playback ให้เลย ฯลฯ

g-v-m อาศัยการทำงานร่วมกับ HAL, D-BUS, udev และ Hotplug ซึ่งโยงเข้าไปถึงในเคอร์เนล .. ติดตั้งใช้งาน ไม่ยาก default config ทุกดิสโตรเตรียมไว้หมดแล้ว ก็ควรจะทำงานได้เลย .. แต่ถ้าอยากรู้รายละเอียดลึกๆ แล้วค่อนข้างวุ่นวายอยู่เหมือนกัน ตอนนี้พอจับใจความได้บ้างแล้ว ไว้รู้เรื่องมากกว่านี้จะมาเล่าให้ฟังอีกที :P

เก็บตก packages ของทะเล

  • แก้ BitTorrent ให้ใช้กับ wxPythonGTK2
  • แก้ owner ของ xbase กับ anjuta
  • อัปเดต mono กับ gtk-sharp เป็น 1.0.2

พักนี้วุ่นวายกับงานเอกสาร .. เขียน document class ของ LaTeX เองนี่ัมันยากเหมือนกันแฮะ T_T

Move to GCC 3.4

สัปดาห์ที่แล้ว MrChoke แจ้งมาว่า ทะเลจะใช้ GCC 3.4 เป็นคอมไพเลอร์หลัก และใช้ GCC 3.3 เป็น compat .. แปลว่า ต้อง rebuild แพ็กเกจทั้งหมด (T_T) .. นั่งปั่น เสาร์-อาทิตย์ สองวันเสร็จ ทั้งหมด 319 RPMS / 199 SRPMS .. เข้า people เรียบร้อยแล้ว :)

ยังเหลือ extras ที่มีจำนวนพอๆ กัน .. แต่อันนี้ทยอยทำไปเรื่อยๆ ได้

สั่ง apt-get update/upgrade จาก NECTEC ปรากฏว่ารีบูตแล้วค้าง .. ไม่มี /dev/console ! .. เลยบูตแผ่นทะเล สั่ง linux rescue เข้าไป MAKEDEV .. make อะไรได้เอาหมดเลย ตอนนี้ /dev เกือบๆ หมื่นไฟล์ (- -‘) .. ก็ยังดีกว่าใช้งานไม่ได้แหละ .. เฮ่อ

แก้โค้ด atom feed นิดหน่อย ตอนนี้โปรแกรม feed reader อย่าง sage หรือ thunderbird ควรจะรับ feed จาก kitty.in.th ได้แล้ว :)