neutron's blog

RahuNAS เป็นมิตรกับ Debian 6.0 (Squeeze) แล้ว

หลัง ๆ เริ่มมีคนบ่นว่า พยายามติดตั้ง RahuNAS ในเครื่องใหม่ ๆ ที่ลง Debian 6.0 (Squeeze) แล้วติดปัญหา ... ก็เป็นเรื่องที่ถูกต้องแล้ว เพราะ lib ต่าง ๆ ที่ RahuNAS เกี่ยวข้องอยู่ มีการเปลี่ยนแปลงไปมาก จาก Lenny สู่ Squeeze ...

จริง ๆ แล้ว โค้ดของ RahuNAS ได้ปรับเพื่อทดสอบกับ Squeeze ไว้นานพอสมควรแล้วเหมือนกัน แต่ด้วยไม่มีเวลาทำให้เป็นระบบระเบียบอย่างจริงจัง เลยดูจะไม่เรียบร้อยนัก เลยตัดสินใจทำความสะอาดโค้ดก่อน เริ่มจากการจัดการกับ compiler warnings ซึ่งก็ทำให้เห็นว่า เราทำอะไรเปิ่น ๆ และมั่ว ๆ ไปได้ขนาดไหน และเนื่องจากที่ยังมีเครื่องที่ใช้ Lenny และใช้งาน RahuNAS อยู่ที่ ม.ขอนแก่น อยู่ชุดใหญ่ จึงจำเป็นต้องทำความสะอาดตั้งแต่ในรุ่น 0.1.x เลยต้องวางแผนในการบำรุงรักษา ทำให้ตัดสินใจ ที่จะ maintain ทั้งสองรุ่น คือ 0.1.x สำหรับ Lenny และ 0.2.x สำหรับ Squeeze เหนื่อยหน่อย แต่จำเป็นต้องทำ

ดังนั้น ตอนนี้ RahuNAS รุ่น 0.1.x จะไม่เพิ่ม feature ใหม่ (ถ้าไม่จำเป็น) โดยจะทำแค่แก้ security bug และ critical bug เท่านั้น (รุ่นล่าสุด คือ 0.1.8)

ลอง Squid 3.2 จาก debclub experimental กัน

Squid เป็น HTTP proxy/cache โอเพนซอร์สยอดนิยม มีการใช้งานอย่างแพร่หลาย โดยล่าสุด Squid ได้ออกรุ่น 3.2.0.7 เป็นรุ่นเบตาในวันที่ 19 เมษายน ที่ผ่านมา ซึ่งในสายการพัฒนาของรุ่น 3.2 นั้น มีเป้าหมายในการปรับปรุง แก้ไขปัญหาเดิมของ Squid รุ่นก่อน รวมไปถึงการเพิ่มความสามารถใหม่เข้ามาในรุ่นนี้ด้วย ความสามารถที่เพิ่มขึ้น และการปรับปรุง สามารถติดตามได้ที่ http://wiki.squid-cache.org/RoadMap/Squid3

แต่เนื่องจากใน Debian ยังไม่มี Squid รุ่น 3.2 ให้ทดสอบ ผมในฐานะผู้ใช้ Squid และพอจะมีความรู้ในการทำ Debian package อยู่บ้าง ก็เลยลองดึง Squid 3.1 จาก Debian มาลองปรับดู เพื่อที่จะ build Squid 3.2 ได้โดยที่คงความสามารถที่ Squid 3.1 ใน Debian มีไว้ ดังนั้น ท่านใดที่ใช้ Squid 3.1 อยู่แล้ว ก็สามารถอัปเกรดเพื่อทดลองใช้งานได้ทันที

ก่อนอื่น ท่านใดที่ยังไม่เคยใช้ DebianClub repository (debclub) ให้เพิ่มเข้าไปในระบบก่อน ตามคำแนะนำใน [debclub "ก้านกล้วย" repository] หลังจากนั้นให้เพิ่ม

deb ftp://ftp.debianclub.org/debclub experimental main

เนื่องจากแพกเกจ squid3 3.2 ยังไม่เคยมีใน Debian มาก่อน ผมเลยถือโอกาสปรับ และสร้าง git repository (http://git.rahunas.org/?p=debian/squid3;a=summary) สำหรับการทำแพกเกจ รวมไปถึงการติดตามการพัฒนาของ Squid 3.2 ไปด้วยในตัว และด้วยเหตุผลนี้ จึงใช้กระบวนการแบบ Debian ในการส่ง Squid3 3.2 เข้าที่ debclub ในส่วนของ experimental distribution ซึ่งสำหรับ Debian แล้ว experimental คือที่ทดสอบ (สนามเด็กเล่น) ของผู้ที่สนใจทดสอบแพกเกจซึ่งใน debclub ก็เช่นเดียวกัน

เริ่มติดตั้ง

# apt-get -t experimental install squid3

หากเป็นการติดตั้งใหม่ Squid3 ก็พร้อมใช้งาน โดยการชี้ proxy มาที่ <server-ip>:3128 ตัวอย่างเช่นทดสอบในเครื่องที่ติดตั้ง Squid3 ก็เพียงชี้มาที่ 127.0.0.1:3128

ส่วนท่านใดที่เคยใช้ Squid3 3.1 มาก่อน ต้องปรับ config file นิดหน่อย

จาก

...

หยุด Bittorrent โดยใช้ Suricata

Suricata คือ อะไร ?

Suricata เป็น open source engine สำหรับ ดักตรวจ และป้องกันการโจมตีในระบบเครือข่าย รวมไปถึงการตรวจพฤติกรรมที่ไม่เหมาะสมในองค์กร (IDS/IPS - Intrusion Detection/Intrusion Prevention System) พัฒนาโดย Open Information Security Foundation

จุดเด่นของ Suricata คือ การทำงานแบบ multi-threaded ซึ่งส่งผลให้ทำงานได้เร็วในระบบที่มีหลายหน่วยประมวลผล (multi-processor/multi-core) อย่างในปัจจุบัน

หลาย ๆ ท่านที่ทำงานด้าน infosec อาจจะคุ้นเคยกับ open source engine อีกตัวหนึ่ง คือ Snort ซึ่งทำงานในลักษณะเดียวกัน เนื่องจาก Suricata ถูกสร้างโดยถอดแบบมาจาก Snort พร้อมกับแนวคิดในเรื่อง multi-threaded matching ที่เพิ่มเข้ามา ทำให้ Suricata สามารถที่จะใช้ข้อมูล และลักษณะการกำหนดค่าต่าง ๆ ได้คล้าย ๆ หรือแทบจะเหมือนกับ Snort ซึ่งถ้าใครเคยใช้ Snort มาก่อน น่าจะทดลอง Suricata ได้ไม่ยาก (สำหรับผม ไม่เคยใช้ทั้งคู่ ก็เลยต้องอ่านเอกสารเอาเองมากหน่อย)

สิ่งที่สำคัญที่สุดในระบบ IDS/IPS คือ ข้อมูล signature rules ซึ่งแต่ละการโจมตี หรือพฤติกรรมการใช้งาน จะมีรูปแบบที่ชัดเจน สามารถตรวจจับได้ เป็นข้อดีที่ Suricata ถอดแบบมาจาก Snort จึงสามารถใช้ Snort rules ได้ รวมถึง rules ที่ใช้กับ Suricata โดยตรงที่สามารถดาวน์โหลดมาติดตั้งเพิ่มได้จาก ET (emergingthreats.net) โดยที่เราสามารถจะเพิ่ม หรือแก้ไข rules ต่าง ๆ หรือเพิ่มข้อมูลเข้าไปตามความต้องการของเราได้ แต่ทว่า rules ก็มีข้อกำหนดสัญญาอนุญาต การแก้ไขหรือดัดแปลง เผยแพร่ หรือแม้แต่นำไปใช้ในเชิงการค้า ต้องตรวจสอบสัญญาอนุญาตให้ดีก่อน

ระบบที่จำเป็นสำหรับการติดตั้ง

cryptsetup 1.1.1-1 : regression in key-file handler

เจอมากับตัวเองสด ๆ ร้อน ๆ ครับ สำหรับใครที่ใช้ Debian unstable (sid) และมีการติดตั้งระบบโดยมีการเข้ารหัสแหล่งเก็บข้อมูล (encrypted partition) และมีการเรียกใช้ key-file สำหรับถอดรหัส แทนการป้อนวลีรหัส ผ่านทางแป้นพิมพ์ ปัญหาที่เกิดขึ้นคือ สำหรับ partition ที่มีการเรียกใช้งาน key-file จะแจ้งข้อความว่า

"No key available with this passphrase"

Nmap 5.0 (Sid) - การตรวจไวรัส Conficker ในเครือข่าย

เป็นอีกคราวที่ opensource network tools มีการเปลี่ยนแปลงขนานใหญ่ เนื่องจากว่า Nmap ในรุ่นนี้ มีความสามารถเพิ่มขึ้นอย่างมาก (Top 5 Improvements in Nmap 5) โดยเฉพาะความสามารถใหม่ที่ชื่อว่า NSE (Nmap Script Engine) ซึ่งทำให้ Nmap สามารถเรียกใช้งาน predefined script เพื่อให้ตรวจสอบระบบตามที่กำหนดได้ โดยรายการ script ที่มาพร้อมกับ Nmap มีแสดงไว้ที่ http://nmap.org/nsedoc/

หลังจากที่รอมา 1 เดือนเต็ม จากวันที่ 16 กรกฎาคม 2552 ซึ่งทาง insecure.org ได้ปล่อย Nmap 5.0 ออกมา เป็นรุ่น stable ล่าสุด หลังจากรุ่น 4.76 ซึ่งการรอคอยที่จะเข้ามาของ Nmap 5.0 ใน Debian ก็เป็นการรออย่างมีความหวัง แต่ไม่ได้หวั่นใจ เพราะ Nmap maintainer (LaMont Jones) ค่อนข้าง active มาก

ArpON: ARP Poisoning Protection

ฝันร้ายของ admin ในระบบเครือข่าย อย่างหนึ่งที่เจอกันบ่อย ๆ คือ ARP poisoning หรือที่คนทั่วไปรู้จักกันในชื่อ NetCut ซึ่งปัญหานี้ เป็นช่องโหว่ของระบบเครือข่าย ซึ่งรู้โดยทั่วกันว่า หาทางแก้ได้แบบเด็ดขาดลำบากมาก เนื่องจากทางแก้ที่สมบูรณ์นั้น ต้องได้รับความร่วมมือจากผู้ใช้ด้วย

ARP poisoning หรือ ARP spoofing คือวิธีการโจมตีลักษณะหนึ่งในระบบเครือข่ายแบบ ethernet ไม่ว่าจะเป็นแบบ มีสายหรือไร้สาย โดยอาศัยช่องโหว่ของ ARP (Address Resolution Protocol) ซึ่งมีระบบความปลอดภัยต่ำมาก เนื่องจาก ARP เป็นโพรโทคอลที่คุยกัน และให้ความเชื่อถือข้อมูลที่ถูกส่งออกมาโดยไม่มีเงื่อนไขในการตรวจสอบที่มา และความน่าเชื่อถือของข้อมูลใด ๆ ทั้งสิ้น ซึ่งช่องโหว่นี้ เป็นที่มาของการปลอมข้อมูล (spoofing) เพื่อหลอกให้ชาวบ้านหลงเชื่อตามที่โกหก

iptraf: vlan no traffic fix

หลังจากที่ได้ติดตั้งระบบ authentication และ log server ที่ ศูนย์หอพักตักสิลา จ.มหาสารคาม คราวนี้ พระเอกก็ยังเป็น RahuNAS (http://git.rahunas.org) อยู่ (พัฒนาเอง ไม่ใช้เอง ใครจะใช้ จริงไหมครับ) ข้อแตกต่างจากที่อื่น ๆ ที่เคยทำคือ ที่นี่มี managed switch ที่สามารถจัดการ VLAN ได้ ก็เลยสบโอกาส ที่จะทดสอบ RahuNAS กับ VLAN ซึ่งผลก็เป็นไปอย่างที่คาดหวัง คือ ทำงานได้สมบูรณ์ดี ตอนนี้ ก็น่าจะรับรองได้อย่างจริงจังว่า RahuNAS support multiple networking (multiple ethernet, VLAN) แต่ทว่า เครื่องมือคู่ใจผู้ดูแลระบบ อย่าง iptraf กลับไม่แสดง traffic ใด ๆ เลย สำหรับ vlan interface ตอนแรกยุ่ง ๆ ก็เลยไม่คิดอะไรมาก ไม่แสดงก็เอาไว้ก่อน แต่พอว่างนิดหน่อย ฉุกคิดขึ้นมา ก็เลยได้ลองค้นในอินเทอร์เน็ต (http://linux.mantech.ro/IPTraf-fix.html โดย Arian Ban น่าจะเป็นการ fix ให้ OpenSuSE) ก็เลยได้ไอเดีย

ใกล้ถึงเวลาที่ต้องลาจาก SHA1 ใน OpenPGP

ช่วงนี้มีข่าวคราวหลายอย่างที่น่าสนใจ หนึ่งในนั้น คือ ข่าวของความเป็นไปได้ที่จะโจมตี SHA1 digest algorithm และอย่างที่เคยได้ยินมากับ MD5 คือ ความน่าเชื่อถือของ digest algorithm ดังกล่าวก็ลดลง และจากการที่ SHA1 ได้ใช้กันอย่างแพร่หลาย และที่สำคัญ โครงการต่าง ๆ ของ Debian ก็ได้ให้ความไว้วางใจใน Web of Trust ของ OpenPGP เป็นอย่างมาก ดังจะเห็นได้จาก Secure APT จะมีการตรวจสอบ Key ต่าง ๆ อย่างเคร่งครัด ทำให้ในคราวนี้ จะต้องมีการปรับปรุง Key กันขนานใหญ่ และถ้าติดตามข่าว ทั้งใน planet.debian.org หรือที่อื่น ๆ ไม่ว่าจะเป็น Blog ของ Debian Developer/Maintainer ก็จะพบการเตรียมการเรื่องการเปลี่ยน Key กันโดยส่วนใหญ่

คำแนะนำโดย Daniel Kahn Gillmor ในการเปลี่ยน Key สามารถอ่านเพิ่มเติมได้ที่ http://www.debian-administration.org/users/dkg/weblog/48

DNS NSS improvement กับ ปัญหาของผู้ใช้ ADSL ประเทศไทย

การที่เป็นผู้ใช้ Debian GNU/Linux - unstable (sid) ซึ่งมักจะมีอะไรใหม่ ๆ เข้ามาให้ทดสอบเป็นประจำ ซึ่งในคราวนี้ ก็เกิดขึ้นกับ glibc (libc6) ซึ่งมีการปรับรุ่นมาใช้ 2.9 ซึ่งมีอะไรต่าง ๆ ปรับปรุงให้ดีขึ้น ซึ่ง glibc เองเป็น library ที่มีหลาย ๆ ชุดโปรแกรมเรียกใช้งาน ทำให้การเปลี่ยนแปลงในบางเรื่อง ส่งผลกระทบกับผู้ใช้เป็นวงกว้างเช่นกัน ครั้งนี้ เจอกับตัวเอง และเพื่อน ๆ ที่ใช้งาน Debian/Ubuntu ที่มีการใช้ glibc รุ่นดังกล่าว คือ อาการที่เกิดกับ DNS Lookup ที่ปกติ เราจะทดสอบด้วยคำสั่ง nslookup หรือ host ซึ่งกรณีนี้ เราจะได้รับการตอบรับเหมือนปกติดี แต่ปัญหาอยู่ตอนที่จะเข้าใช้งาน Web หรือ FTP หรือ Services อื่น ๆ ที่เรียกใช้โดยชื่อ domain ซึ่งอาการคือ จะเข้าได้บ้าง ไม่ได้บ้าง

Fujitsu Lifebook S6410 ปรับความเข้มแสงของจอภาพได้สักที

ตัวผมเองใช้งาน Fujitsu Lifebook S6410 ร่วมกับ Debian GNU/Linux (unstable - sid) มาก็เกือบ ๆ จะครบขวบปีแล้ว
มีปัญหาคาใจมาตลอดว่า ทำไมเครื่องนี้ถึงปรับแสงหน้าจอไม่ได้ ทั้ง ๆ ที่เวลากดปุ่มปรับแสง GNOME ก็มีการแสดงค่าความสว่างให้ดู แต่หน้าจอก็ยังสว่างเท่าเดิม ไม่เพิ่ม ไม่ลด ตามไป ตามมา ก็พบว่า Fujitsu Lifebook รุ่น S6410 มี Hardware ที่ใช้ในการควบคุม Backlight ที่แตกต่างออกไปจาก Fujitsu Laptop รุ่นอื่น ๆ และก็มีคนใจดี เขียน Driver สำหรับ fujitsu-laptop ที่แก้ปัญหาเรื่องนี้ให้แล้ว ใน Kernel รุ่น 2.6.28 แต่ที่น่าเสียดายคือ ยังไม่มีใน Debian ในขณะนี้ ทางเลือกมีสองทางคือ หนึ่งรอต่อไป กับสอง ไม่รอละ Build Kernel เองซะเลย

ผมเลือกวิธีหลัง... เพราะเครื่องแรงพอสมควร ... คงใช้เวลาไม่นานในการ Build ส่วนวิธีการ Build ผมขอไม่กล่าว ณ ที่นี้ หากสนใจ อ่านบทความของ พี่เทพ ได้ที่ "คอมไพล์เคอร์เนลสไตล์เดเบียน"

ส่วนใครไม่อยากเสียเวลา อาจจะลองเอาที่ผม Build แล้วไปทดสอบได้ (ไม่รับประกันนะครับ ลองดูกันเอง แต่ผมใช้งานอยู่ตอนนี้ ยังไม่เจอปัญหา)

Syndicate content
Creative Commons License ลิขสิทธิ์ของบทความเป็นของเจ้าของบทความแต่ละชิ้น
ผลงานนี้ ใช้สัญญาอนุญาตของครีเอทีฟคอมมอนส์แบบ แสดงที่มา-อนุญาตแบบเดียวกัน 3.0 ที่ยังไม่ได้ปรับแก้